|
发表于 2007-9-28 13:36:01
|
显示全部楼层
试一下子把触发里的事件改成只要:
任意单位被攻击
和:
任意单位发动技能效果
(因为在发动技能效果里才是耗魔的)
发动技能的5个事件,正常前3个是一起发生,后2个一起发生.
还有一个是当对魔法和生命那个大于2的判断是有问题的.
当前生命和当前魔法很可能是0,对于本身就没有魔法的单位,就必然出现0了.
除0就会发生错误.
可以试试下面的代码.
[codes=jass]
function Cheats_Trigger_Action takes nothing returns nothing
call SetUnitLifePercentBJ(GetTriggerUnit(),100.)
call SetUnitManaPercentBJ(GetTriggerUnit(),100.)
call UnitRemoveBuffs(GetTriggerUnit(),false,true)
endfunction
function Cheats takes player p returns nothing
local tirgger Cheats_Trigger=CreateTrigger()
call TriggerRegisterPlayerUnitEvent(Cheats_Trigger,p,EVENT_PLAYER_UNIT_ATTACKED,null)
call TriggerRegisterPlayerUnitEvent(Cheats_Trigger,p,EVENT_PLAYER_UNIT_SPELL_EFFECT,null)
call TriggerAddAction(Cheats_Trigger,function Cheats_Trigger_Action)
endfunction
[/codes] |
|