|
楼主 |
发表于 2010-2-28 18:47:45
|
显示全部楼层
请问。。这个错在哪里啊啊?
我这个是按照1L的转化成代码。。我自己加了一个循环。结果没效果。。T_T...没转成代码的时候有效果的,我这个哪里改错了,求教啊
function Trig_JudgeATK_Actions takes nothing returns nothing
local integer index=0
loop
set index=index+1
if GetOwningPlayer(GetAttacker()) == Player(index+1) and GetAttacker() != udg_Hero_sign[index] then
//玩家n的单位,且不是英雄单位。Hero_sign[index]记录的是每个玩家的英雄。每个玩家只有一个英雄。
if ( YDWEDistanceBetweenUnits(GetAttacker(), udg_Hero_sign[index]) > 750.00 ) then
//判断距离的。
call IssueImmediateOrder( GetAttacker(), "stop" )
endif
endif
exitwhen(index==5)
endloop
endfunction
//===========================================================================
function InitTrig_JudgeATK takes nothing returns nothing
set gg_trg_JudgeATK = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_JudgeATK, EVENT_PLAYER_UNIT_ATTACKED )
call TriggerAddAction( gg_trg_JudgeATK, function Trig_JudgeATK_Actions )
endfunction |
|