Name | Type | is_array | initial_value |
AI_DW | force | No | |
AI_FotD | force | No | |
AI_RA | force | No | |
CreepPlayer | player | No | |
Creeps_Of_Type | unitcode | Yes | |
Hero | unit | Yes | |
Heroes_Sentinel | unitcode | Yes | |
Int | integer | No | |
Integer | integer | No | |
Items | itemcode | Yes | |
Kills | integer | Yes | |
KillSequence | integer | Yes | |
l | location | No | |
Night_Elf | player | No | |
Orc | player | No | |
p | player | No | |
PG_NE | force | No | |
PG_Orc | force | No | |
PG_UD | force | No | |
Player | player | Yes | |
Point | location | No | |
r | real | No | |
RandomTotal_All | integer | No | |
Real | real | No | |
TempPlayer | player | No | |
Tree_Array | destructablecode | Yes | |
u | unit | No | |
Undead | player | No | |
Unit | unit | No | |
Unit_Type | unitcode | Yes | |
Unit_Type_Evil | unitcode | Yes |
function Trig_ReviveJASS_Conditions takes nothing returns boolean
if ( not ( IsUnitType(GetDyingUnit(), UNIT_TYPE_HERO) == true ) ) then
return false
endif
return true
endfunction
function Trig_ReviveJASS_Func020001 takes nothing returns boolean
return ( IsPlayerInForce(udg_TempPlayer, udg_PG_Orc) == true )
endfunction
function Trig_ReviveJASS_Func021001 takes nothing returns boolean
return ( IsPlayerInForce(udg_TempPlayer, udg_PG_UD) == true )
endfunction
function Trig_ReviveJASS_Func022001 takes nothing returns boolean
return ( IsPlayerInForce(udg_TempPlayer, udg_PG_NE) == true )
endfunction
function Trig_ReviveJASS_Actions takes nothing returns nothing
local unit u
local real r
local player p
local location l
set u = GetDyingUnit()
set r = ( I2R(GetHeroLevel(u)) * 4.00 )
set p = GetOwningPlayer(u)
call DisplayTextToForce( GetForceOfPlayer(p), ( ( "Please wait " + ( R2S(r) + ( " seconds for hero revival." + "." ) ) ) + "." ) )
call TriggerSleepAction( r )
set udg_TempPlayer = p
if ( Trig_ReviveJASS_Func020001() ) then
set l = GetRectCenter(gg_rct_Revive_Point_RA)
else
call DoNothing( )
endif
if ( Trig_ReviveJASS_Func021001() ) then
set l = GetRectCenter(gg_rct_Revive_Point_FotD)
else
call DoNothing( )
endif
if ( Trig_ReviveJASS_Func022001() ) then
set l = GetRectCenter(gg_rct_Revive_Point_DW)
else
call DoNothing( )
endif
call ReviveHeroLoc( u, l, true )
endfunction
//===========================================================================
function InitTrig_ReviveJASS takes nothing returns nothing
set gg_trg_ReviveJASS = CreateTrigger( )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(3), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(4), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(5), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(6), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(7), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(8), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(9), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(10), EVENT_PLAYER_UNIT_DEATH )
call TriggerRegisterPlayerUnitEventSimple( gg_trg_ReviveJASS, Player(11), EVENT_PLAYER_UNIT_DEATH )
call TriggerAddCondition( gg_trg_ReviveJASS, Condition( function Trig_ReviveJASS_Conditions ) )
call TriggerAddAction( gg_trg_ReviveJASS, function Trig_ReviveJASS_Actions )
endfunction