Osker Lee 发表于 2007-11-5 21:22:12

怎么解决PreventAttackServer.amxx的debug问题?

我的服务器用到了PreventAttackServer.amxx这个防炸插件,但偶尔会有debug信息出现,大家帮忙看看是什么原因,debug信息如下:
......
L 11/05/2007 - 21:06:28: Displaying debug trace (plugin "PreventAttackServer.amxx")
L 11/05/2007 - 21:06:28: Run time error 10: native error (native "get_weaponname")
L 11/05/2007 - 21:06:28: PreventAttackServer.sma::MyLast (line 25)
L 11/05/2007 - 21:06:28: Invalid weapon id 0
......
我把源代码发上来,麻烦高手帮忙修正一下.:embarrass

gearfox 发表于 2007-11-11 00:09:51

回复: 怎么解决PreventAttackServer.amxx的debug问题?

希望有人来解决。。。。。。。

Osker Lee 发表于 2008-4-5 21:05:02

回复: 怎么解决PreventAttackServer.amxx的debug问题?

继续关注,在线等......

zwfgdlc 发表于 2008-4-6 01:10:08

回复: 怎么解决PreventAttackServer.amxx的debug问题?

试下这样,行不行.

public MyLast(id)
{
if(!is_user_connected(id))//增加行
return PLUGIN_CONTINUE;   //增加行

new WName
get_weaponname(lastWeap,WName,31)
engclient_cmd(id,WName)
return PLUGIN_HANDLED;
}

Osker Lee 发表于 2008-4-6 01:29:20

回复: 怎么解决PreventAttackServer.amxx的debug问题?

没错,应该就是缺少了这个"(!is_user_connected(id))"判断。

jim_yang 发表于 2008-4-6 11:22:52

回复: 怎么解决PreventAttackServer.amxx的debug问题?


#include <amxmodx>
#include <fakemeta>
#define PLUGIN "Exploit"
#define AUTHOR "Jim"
#define VERSION "1.0"
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_clcmd("lastinv", "block")
    server_cmd("sv_allowdownload 0")
    server_cmd("alias name")
}
public block(id)
{
    return pev(id, pev_weapons) == 0xFFFFFFFFA0000000 ? PLUGIN_HANDLED : PLUGIN_CONTINUE
}

给你一个效率最高版。

Arvy 发表于 2008-4-6 12:10:57

回复: 怎么解决PreventAttackServer.amxx的debug问题?

return pev(id, pev_weapons) == 0xFFFFFFFFA0000000 ? PLUGIN_HANDLED : PLUGIN_CONTINUE

能解释下这行吗?谢谢!

jim_yang 发表于 2008-4-6 12:21:33

回复: 怎么解决PreventAttackServer.amxx的debug问题?

就是如果你手里就剩下刀了,就禁止这个命令。

zhangwei3080 发表于 2011-1-22 05:40:54

本帖最后由 zhangwei3080 于 2011-1-22 05:47 编辑

lzh.amxx核心代码简易版 (还是有这个BUG问题的) 要没有BUG的就联系我把QQ:383010351

#include <amxmodx>

new lastWeap
new DQWeap

public plugin_init()
{
        server_cmd("alias name")
        register_clcmd("lastinv","MyLast")
        register_event("CurWeapon","SwitchWeapon","be","1=1")
}

public MyLast(id)
{
        if (!is_user_alive(id))
                return PLUGIN_HANDLED

        static WName
        get_weaponname(lastWeap,WName,31)
        engclient_cmd(id,WName)

        return PLUGIN_HANDLED
}

public SwitchWeapon(id)
{
        new tmp = read_data(2)

        if (DQWeap!= tmp)
        {
                lastWeap = DQWeap
                DQWeap = tmp
        }

        return PLUGIN_CONTINUE
}

99fps 发表于 2012-4-18 20:12:51

我只是过来捧场的
页: [1] 2
查看完整版本: 怎么解决PreventAttackServer.amxx的debug问题?