Hello Hive,
for an arena styled map I made these simple triggers (for the waves and the time in between them):
Another question regarding Unit Groups in general: Why is it with the following trigger that always only one of the three spawned units gets teleported with the "Set Up Arena" trigger, what would I need to change, that every unit gets telported instead?
for an arena styled map I made these simple triggers (for the waves and the time in between them):
-
Set up Arena
-
Events
- Time - ArenaTimer expires
- Conditions
-
Actions
- Set VariableSet ArenaLocation[1] = (Center of Region 000 <gen>)
- Set VariableSet ArenaLocation[2] = (Center of Region 001 <gen>)
- Set VariableSet ArenaLocation[3] = (Center of Region 002 <gen>)
-
For each (Integer A) from 1 to 10, do (Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in PlayerUnitGroup and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Owner of (Picked unit)) Equal to (Player((Integer A)))
-
Then - Actions
- Unit - Move (Picked unit) instantly to ArenaLocation[(Integer A)]
- Custom script: call RemoveLocation(udg_ArenaLocation[GetForLoopIndexA()])
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in PlayerUnitGroup and do (Actions)
-
Loop - Actions
-
Events
-
Arena Fight
-
Events
- Time - ArenaTimer expires
- Conditions
-
Actions
- Countdown Timer - Destroy Arena_Window
- Set VariableSet Wave = (Wave + 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- Wave Equal to 1
-
Then - Actions
- Set VariableSet ArenaLocation[1] = (Center of Region 000 <gen>)
- Set VariableSet ArenaLocation[2] = (Center of Region 001 <gen>)
- Set VariableSet ArenaLocation[3] = (Center of Region 002 <gen>)
-
For each (Integer A) from 1 to 10, do (Actions)
-
Loop - Actions
- Unit - Create 1 Footman for Player 12 (Brown) at ArenaLocation[(Integer A)] facing Default building facing degrees
- Unit Group - Add (Last created unit) to ArenaMobs
-
Loop - Actions
-
Else - Actions
- Countdown Timer - Start ArenaTimer as a One-shot timer that will expire in 10.00 seconds
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- Wave Equal to 2
-
Then - Actions
- Set VariableSet ArenaLocation[1] = (Center of Region 000 <gen>)
- Set VariableSet ArenaLocation[2] = (Center of Region 001 <gen>)
- Set VariableSet ArenaLocation[3] = (Center of Region 002 <gen>)
-
For each (Integer A) from 1 to 10, do (Actions)
-
Loop - Actions
- Unit - Create 2 Footman for Player 12 (Brown) at ArenaLocation[(Integer A)] facing Default building facing degrees
- Unit Group - Add (Last created unit) to ArenaMobs
-
Loop - Actions
- Else - Actions
-
If - Conditions
-
Events
-
Wave finish
-
Events
- Unit - A unit owned by Player 12 (Brown) Dies
- Conditions
-
Actions
- Set VariableSet ArenaMobs_Count = ((Number of units in ArenaMobs) - 1)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- ArenaMobs_Count Equal to 0
-
Then - Actions
- Countdown Timer - Start ArenaTimer as a One-shot timer that will expire in 10.00 seconds
- Countdown Timer - Create a timer window for ArenaTimer with title Arena Start
- Set VariableSet Arena_Window = (Last created timer window)
- Set VariableSet ShopLocation[1] = (Center of Region 003 <gen>)
- Set VariableSet ShopLocation[2] = (Center of Region 004 <gen>)
- Set VariableSet ShopLocation[3] = (Center of Region 005 <gen>)
-
For each (Integer A) from 1 to 10, do (Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in PlayerUnitGroup and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Owner of (Picked unit)) Equal to (Player((Integer A)))
-
Then - Actions
- Unit - Move (Picked unit) instantly to ShopLocation[(Integer A)]
- Custom script: call RemoveLocation(udg_ShopLocation[GetForLoopIndexA()])
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Unit Group - Pick every unit in PlayerUnitGroup and do (Actions)
-
Loop - Actions
- Else - Actions
-
If - Conditions
-
Events
Another question regarding Unit Groups in general: Why is it with the following trigger that always only one of the three spawned units gets teleported with the "Set Up Arena" trigger, what would I need to change, that every unit gets telported instead?
-
Test
-
Events
- Time - Elapsed game time is 2.00 seconds
- Conditions
-
Actions
- Unit - Create 3 Footman for Player 1 (Red) at (Center of (Playable map area)) facing Default building facing degrees
- Unit Group - Add (Last created unit) to PlayerUnitGroup
- Unit - Create 3 Footman for Player 2 (Blue) at (Center of (Playable map area)) facing Default building facing degrees
- Unit Group - Add (Last created unit) to PlayerUnitGroup
- Unit - Create 3 Footman for Player 3 (Teal) at (Center of (Playable map area)) facing Default building facing degrees
- Unit Group - Add (Last created unit) to PlayerUnitGroup
-
Events