- Joined
- Dec 18, 2007
- Messages
- 15
I guess I couldn't satisfy myself just leeching off the tutorials as a guest anymore.
READ NO FURTHER UNLESS YOU WANT TO READ A RATHER LENGTHY POST.
You've been warned.
I'm making a map akin to Footmen Frenzy, but starting from scratch and with a couple of my own little quirks. I was wondering if there's a more efficient (fewer lines, leak free, easy for loop, or something else) way to trigger my spawns. The spawn unit is controlled by a castable ability, and once the spawn is chosen, it's locked (at least for the tiers I've triggered.) I've tested those that I've written and they work great, but it's really getting to be a pain to do 5 triggers for each of 3 tiers for each of 12 players. Any way to compact this but still keep the cast based spawning system would be appreciated.
This is initially off, and is turned on by the first trigger. PlayerHereArray is a boolean array which is set at map initialization and adjusted when a player leaves.
Any help would be greatly appreciated, as all I really have left is a lot of trigger grunt work and some minor unit work, but the triggers are going to take for ever at this rate.
READ NO FURTHER UNLESS YOU WANT TO READ A RATHER LENGTHY POST.
You've been warned.
I'm making a map akin to Footmen Frenzy, but starting from scratch and with a couple of my own little quirks. I was wondering if there's a more efficient (fewer lines, leak free, easy for loop, or something else) way to trigger my spawns. The spawn unit is controlled by a castable ability, and once the spawn is chosen, it's locked (at least for the tiers I've triggered.) I've tested those that I've written and they work great, but it's really getting to be a pain to do 5 triggers for each of 3 tiers for each of 12 players. Any way to compact this but still keep the cast based spawning system would be appreciated.
-
P1 T1
-
Events
- Unit - A unit owned by Player 1 (Red) Finishes casting an ability
-
Conditions
- ((Casting unit) is A structure) Equal to True
-
Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Ability being cast) Equal to Spawn Dragonkin Defender T1 tank
-
Then - Actions
- Unit - Remove Spawn Dragonkin Defender T1 tank from (Triggering unit)
- Unit - Remove Spawn Frost Wolf T1 dps from (Triggering unit)
- Unit - Remove Spawn Raging Ice Troll T1 range from (Triggering unit)
- Unit - Remove Spawn Murloc Frostweaver T1 caster from (Triggering unit)
- Multiboard - Set the icon for (Last created multiboard) item in column 2, row 3 to ReplaceableTextures\CommandButtons\BTNFountainOfLifeBlood.blp
- Trigger - Turn on P1 T1t <gen>
- Trigger - Turn off P1 T0 <gen>
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Ability being cast) Equal to Spawn Murloc Frostweaver T1 caster
-
Then - Actions
- Unit - Remove Spawn Dragonkin Defender T1 tank from (Triggering unit)
- Unit - Remove Spawn Frost Wolf T1 dps from (Triggering unit)
- Unit - Remove Spawn Raging Ice Troll T1 range from (Triggering unit)
- Unit - Remove Spawn Murloc Frostweaver T1 caster from (Triggering unit)
- Multiboard - Set the icon for (Last created multiboard) item in column 2, row 3 to ReplaceableTextures\CommandButtons\BTNFountainOfLifeBlood.blp
- Trigger - Turn on P1 T1c <gen>
- Trigger - Turn off P1 T0 <gen>
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Ability being cast) Equal to Spawn Frost Wolf T1 dps
-
Then - Actions
- Unit - Remove Spawn Dragonkin Defender T1 tank from (Triggering unit)
- Unit - Remove Spawn Frost Wolf T1 dps from (Triggering unit)
- Unit - Remove Spawn Raging Ice Troll T1 range from (Triggering unit)
- Unit - Remove Spawn Murloc Frostweaver T1 caster from (Triggering unit)
- Multiboard - Set the icon for (Last created multiboard) item in column 2, row 3 to ReplaceableTextures\CommandButtons\BTNFountainOfLifeBlood.blp
- Trigger - Turn on P1 T1d <gen>
- Trigger - Turn off P1 T0 <gen>
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Ability being cast) Equal to Spawn Raging Ice Troll T1 range
-
Then - Actions
- Unit - Remove Spawn Dragonkin Defender T1 tank from (Triggering unit)
- Unit - Remove Spawn Frost Wolf T1 dps from (Triggering unit)
- Unit - Remove Spawn Raging Ice Troll T1 range from (Triggering unit)
- Unit - Remove Spawn Murloc Frostweaver T1 caster from (Triggering unit)
- Multiboard - Set the icon for (Last created multiboard) item in column 2, row 3 to ReplaceableTextures\CommandButtons\BTNFountainOfLifeBlood.blp
- Trigger - Turn on P1 T1r <gen>
- Trigger - Turn off P1 T0 <gen>
- Else - Actions
-
If - Conditions
- Trigger - Turn off (This trigger)
- Trigger - Turn on P1 T2 <gen>
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Events
-
P1 T1t
-
Events
- Time - Every 12.00 seconds of game time
-
Conditions
- PlayerHereArray[1] Equal to True
-
Actions
- Unit - Create 1 Dragonkin Defender for Player 1 (Red) at (Player 1 (Red) start location) facing 270.00 degrees
-
Events
This is initially off, and is turned on by the first trigger. PlayerHereArray is a boolean array which is set at map initialization and adjusted when a player leaves.
Any help would be greatly appreciated, as all I really have left is a lot of trigger grunt work and some minor unit work, but the triggers are going to take for ever at this rate.
Last edited: