scope Income initializer Init
globals
public trigger Trig
private constant integer GPF = 10
private constant integer FarmId = 039;h007039;
endglobals
private function FarmFilt takes nothing returns boolean
return GetUnitTypeId(GetFilterUnit()) == FarmId
endfunction
private function Action takes nothing returns nothing
local group g = CreateGroup()
local unit u
call GroupEnumUnitsInRect(g, bj_mapInitialPlayableArea, Filter(function FarmFilt))
loop
set u = FirstOfGroup(g)
exitwhen u == null
call SetPlayerState(GetOwningPlayer(u), PLAYER_STATE_RESOURCE_GOLD, GetPlayerState(GetOwningPlayer(u), PLAYER_STATE_RESOURCE_GOLD)+GPF)
call GroupRemoveUnit(g, u)
endloop
call DestroyGroup(g)
set g = null
endfunction
private function Init takes nothing returns nothing
call TriggerRegisterTimerEvent(Trig, 20, true)
call TriggerAddAction(Trig, function Action)
endfunction
endscope