直接上代码:
Jass:
function Trig_SelectActions takes nothing returns nothing
if ((udg_Selected[GetConvertedPlayerId(GetTriggerPlayer())] == true)) then
return
else
call DoNothing( )
endif
if ((udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] == true)) then
call SetUnitOwner( GetTriggerUnit(), GetTriggerPlayer(), true )
set udg_Selected[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hpal')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_032" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hamg')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_033" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hmkg')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_036" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
endfunction
//
function Trig_TimerActions takes nothing returns nothing
set bj_forLoopAIndex = 1
set bj_forLoopAIndexEnd = 4
loop
exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
if ((udg_timer[bj_forLoopAIndex] == true)) then
set udg_timer[bj_forLoopAIndex] = false
else
call DoNothing( )
endif
set bj_forLoopAIndex = bj_forLoopAIndex + 1
endloop
endfunction
触发器:
Jass:
function Trig_SelectActions takes nothing returns nothing
if ((udg_Selected[GetConvertedPlayerId(GetTriggerPlayer())] == true)) then
return
else
call DoNothing( )
endif
if ((udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] == true)) then
call SetUnitOwner( GetTriggerUnit(), GetTriggerPlayer(), true )
set udg_Selected[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hpal')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_032" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hamg')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_033" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
if ((GetUnitTypeId(GetTriggerUnit()) == 'Hmkg')) then
call DisplayTextToPlayer( GetTriggerPlayer(), 0, 0, "TRIGSTR_036" )
call StartTimerBJ( udg_selecttimer[GetConvertedPlayerId(GetTriggerPlayer())], false, 2.00 )
set udg_timer[GetConvertedPlayerId(GetTriggerPlayer())] = true
return
else
call DoNothing( )
endif
endfunction
//
function Trig_TimerActions takes nothing returns nothing
set bj_forLoopAIndex = 1
set bj_forLoopAIndexEnd = 4
loop
exitwhen bj_forLoopAIndex > bj_forLoopAIndexEnd
if ((udg_timer[bj_forLoopAIndex] == true)) then
set udg_timer[bj_forLoopAIndex] = false
else
call DoNothing( )
endif
set bj_forLoopAIndex = bj_forLoopAIndex + 1
endloop
endfunction
触发器: