wc3campaigns.com
unit spawn
Events
Time - Every 7.00 seconds of game time
Conditions
Actions
Unit - Order Keep 0001 <gen> to train/upgrade to a Peasant
unit spawn human
Events
Unit - A unit owned by (Player((1 + 12))) Finishes construction
Conditions
(Constructed structure) Equal to Keep 0001 <gen>
Actions
Unit - Create 1 Footman for (Owner of (Constructed structure)) at (Position of Keep 0001 <gen>) facing (Position of (Triggering unit))
unit spawn orc
Events
Unit - A unit owned by (Player((1 + 12))) Finishes construction
Conditions
(Constructed structure) Equal to Barracks 0002 <gen>
Actions
Unit - Create 1 Grunt for (Owner of (Constructed structure)) at (Position of Barracks 0002 <gen>) facing (Position of (Triggering unit))
function Spawn_Tier1Conditions takes nothing returns boolean
return GetUnitTypeId(GetFilterUnit()) == 'Hti1'//Tier 1 main building id
endfunction
function Spawn_Tier2Conditions takes nothing returns boolean
return GetUnitTypeId(GetFilterUnit()) == 'Hti2'//Tier 2 main building id
endfunction
function Spawn_Action takes nothing returns nothing
local group ug = CreateGroup()
local unit u
//Tier 1
call GroupEnumUnitsInRect(ug,GetWorldBounds(),Condition(function Spawn_Tier1Conditions))
loop
set u = FirstOfGroup(ug)
if GetUnitRace(u) == RACE_HUMAN then
call CreateUnit(GetOwningPlayer(u),'Hfoo',GetUnitX(u),GetUnitY(u),290)
elseif GetUnitRace(u) == RACE_UNDEAD then
call CreateUnit(GetOwningPlayer(u),'Ugho',GetUnitX(u),GetUnitY(u),290)
endif
call GroupRemoveUnit(ug,u)
endloop
call GroupClear(ug)
//Tier 2
call GroupEnumUnitsInRect(ug,GetWorldBounds(),Condition(function Spawn_Tier2Conditions))
loop
set u = FirstOfGroup(ug)
if GetUnitRace(u) == RACE_HUMAN then
call CreateUnit(GetOwningPlayer(u),'Hkni',GetUnitX(u),GetUnitY(u),290)
elseif GetUnitRace(u) == RACE_UNDEAD then
call CreateUnit(GetOwningPlayer(u),'Uabo',GetUnitX(u),GetUnitY(u),290)
endif
call GroupRemoveUnit(ug,u)
endloop
call GroupClear(ug)
call DestroyGroup(ug)
set ug = null
set u = null
endfunction
function InitTrig_Spawn takes nothing returns nothing
set gg_trg_Spawn = CreateTrigger()
call TriggerRegisterTimerEvent(gg_trg_Spawn,5,true)
call TriggerAddAction(gg_trg_Spawn, function Spawn_Action)
endfunction
set gg_trg_Spawn = CreateTrigger(TriggerTest2)
loop
exitwhen i > GetPlayers()
call TriggerRegisterTimerEvent(gg_trg_Spawn,5,true)
set i = i+1
endloop
call TriggerAddAction(gg_trg_Spawn, function Spawn_Action)
endfunction