|
发表于 2006-8-25 22:52:33
|
显示全部楼层
来自 中国–广东–深圳
回复: [共享]板砖手雷=雷能砸人掉血
我+了DEBUG,但是他出现了一个更详细的错误报告。
- L 08/21/2006 - 14:50:55: [AMXX] Displaying debug trace (plugin "grenades_are_heavy.amxx")
- L 08/21/2006 - 14:50:55: [AMXX] Run time error 10: native error (native "entity_get_string")
- L 08/21/2006 - 14:50:55: [AMXX] [0] grenades_are_heavy.sma::pfn_touch (line 40)
- L 08/21/2006 - 14:51:04: [ENGINE] Invalid entity 155
- L 08/21/2006 - 14:51:04: [AMXX] Displaying debug trace (plugin "grenades_are_heavy.amxx")
- L 08/21/2006 - 14:51:04: [AMXX] Run time error 10: native error (native "entity_get_string")
- L 08/21/2006 - 14:51:04: [AMXX] [0] grenades_are_heavy.sma::pfn_touch (line 40)
- L 08/21/2006 - 14:51:04: [ENGINE] Invalid entity 161
- L 08/21/2006 - 14:51:04: [AMXX] Displaying debug trace (plugin "grenades_are_heavy.amxx")
- L 08/21/2006 - 14:51:04: [AMXX] Run time error 10: native error (native "entity_get_string")
- L 08/21/2006 - 14:51:04: [AMXX] [0] grenades_are_heavy.sma::pfn_touch (line 40)
复制代码
大概是说第40行有什么错误吧,我把错误发到官方去,也许作者很久没关注这个插件了,不见他修复。
然后我自己在论坛上搜索,修改了一下原代码,现在不报错误了。
原本是这样的
- public pfn_touch(ptr, ptd)
- {
- if (ptd!=0 && ptr!=0) {
- new ptrname[32], ptdname[32], ptrModel[32]
- entity_get_string(ptr, EV_SZ_classname, ptrname, 31)
- entity_get_string(ptd, EV_SZ_classname, ptdname, 31)
- if(equal(ptrname, "grenade") && equal(ptdname, "player")) {
- if (gCurrentNade==ptr) return
- gCurrentNade=ptr
- new ptrOwner = entity_get_edict(ptr, EV_ENT_owner)
复制代码
然后我+了一句
- public pfn_touch(ptr, ptd)
- {
- [color="Red"]if ( is_valid_ent(ptr) )[/color]
- if (ptd!=0 && ptr!=0) {
- new ptrname[32], ptdname[32], ptrModel[32]
- entity_get_string(ptr, EV_SZ_classname, ptrname, 31)
- entity_get_string(ptd, EV_SZ_classname, ptdname, 31)
- if(equal(ptrname, "grenade") && equal(ptdname, "player")) {
- if (gCurrentNade==ptr) return
- gCurrentNade=ptr
- new ptrOwner = entity_get_edict(ptr, EV_ENT_owner)
复制代码 |
|