- Joined
- Apr 28, 2006
- Messages
- 187
Okay, there are eight bosses that spawn @ different game intervals.
There are eight possible spawn regions, (setup in an array)
When a boss (titan) spawns it must spawn in a random region but, cannot spawn in a region that has already been "used" that game, (A region where a boss has spawned previously)
So, when a region is used it must be taken out of the array,
So by the end of the game all eight regions have been "used" but none of them used twice and the order thier used in MUST be random.
Here are the triggers im using:
Setting vars:
As you can see, Charon +erinyes spawn in the same loc in this examaple, so does Scyla + Minos,
Any ideas?
There are eight possible spawn regions, (setup in an array)
When a boss (titan) spawns it must spawn in a random region but, cannot spawn in a region that has already been "used" that game, (A region where a boss has spawned previously)
So, when a region is used it must be taken out of the array,
So by the end of the game all eight regions have been "used" but none of them used twice and the order thier used in MUST be random.
Here are the triggers im using:
Setting vars:
-
Titan Setup
- Events
- Conditions
-
Actions
- Set Random_TitanCount = 8
-
For each (Integer A) from 1 to 8, do (Actions)
-
Loop - Actions
- Set Random_Region[(Integer A)] = (Integer A)
-
Loop - Actions
- Set TitanSpawnRegion[1] = TitanSpawn1 <gen>
- Set TitanSpawnRegion[2] = TitanSpawn2 <gen>
- Set TitanSpawnRegion[3] = TitanSpawn3 <gen>
- Set TitanSpawnRegion[4] = TitanSpawn4 <gen>
- Set TitanSpawnRegion[5] = TitanSpawn5 <gen>
- Set TitanSpawnRegion[6] = TitanSpawn6 <gen>
- Set TitanSpawnRegion[7] = TitanSpawn7 <gen>
- Set TitanSpawnRegion[8] = TitanSpawn8 <gen>
- Set TitanType[1] = Centaur (Level 1 Titan)
- Set TitanType[2] = Harpy (Level 2 Titan)
- Set TitanType[3] = Gorgan (Level 3 Titan)
- Set TitanType[4] = Minotaur (Level 4 Titan)
- Set TitanType[5] = Guardian (Level 5 Titan)
- Set TitanType[6] = Underworld Overseer (Level 6 Titan)
- Set TitanType[7] = Overlord (Level 7 Titan)
- Set TitanType[8] = Hydra (Level 8 Titan)
-
Titan Creation
- Events
- Conditions
-
Actions
- Set TitanRegionCount = (Random integer number between 1 and Random_TitanCount)
- Game - Display to (All players) the text: (Titan Region Count = + (String(TitanRegionCount)))
-
For each (Integer TitanCreationInteger) from 1 to 8, do (Actions)
-
Loop - Actions
- Set TitanCinPoint = (Center of TitanSpawnRegion[TitanCreationInteger])
- Cinematic - Ping minimap for (All players) at TitanCinPoint for 4.50 seconds, using a Flashy ping of color (30.00%, 100.00%, 30.00%)
- Custom script: call RemoveLocation(udg_TitanCinPoint)
-
Loop - Actions
- -------- CREATE TITAN --------
- Set TitanCinPoint = (Center of TitanSpawnRegion[Random_Region[TitanRegionCount]])
- Special Effect - Create a special effect at TitanCinPoint using Abilities\Spells\Human\MassTeleport\MassTeleportTo.mdl
- Set TitanSpawnEffect[1] = (Last created special effect)
- Custom script: call RemoveLocation(udg_TitanCinPoint)
- Wait 2.50 seconds
- Special Effect - Destroy TitanSpawnEffect[1]
- Set TitanCinPoint = (Center of TitanSpawnRegion[Random_Region[TitanRegionCount]])
- Unit - Create 1 TitanType[TitanLevel] for Player 9 (Gray) at TitanCinPoint facing 270.00 degrees
- Custom script: call RemoveLocation(udg_TitanCinPoint)
- Game - Display to (All players) the text: (RandomRegion[TitanRegionCount] = + (String(Random_Region[TitanRegionCount])))
- Set CurrentTitan[TitanLevel] = (Last created unit)
- Unit - Set the custom value of CurrentTitan[TitanLevel] to TitanLevel
- -------- MUST REMEMBER REGION TITAN SPAWNS IN --------
- -------- TITAN FACING --------
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- Random_Region[TitanRegionCount] Equal to 2
- Random_Region[TitanRegionCount] Equal to 5
- Random_Region[TitanRegionCount] Equal to 7
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
- Unit - Make CurrentTitan[TitanLevel] face 0.00 over 0.00 seconds
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- Random_Region[TitanRegionCount] Equal to 3
- Random_Region[TitanRegionCount] Equal to 4
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
- Unit - Make CurrentTitan[TitanLevel] face 90.00 over 0.00 seconds
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- Set Random_Region[TitanRegionCount] = Random_TitanCount
- Game - Display to (All players) the text: (Random Titan Count= + (String(Random_TitanCount)))
- Game - Display to (All players) the text: (RandomRegion[TitanRegionCount] = + (String(Random_Region[TitanRegionCount])))
- Set Random_TitanCount = (Random_TitanCount - 1)
- Game - Display to (All players) the text: (Random Titan Count-1 = + (String(Random_TitanCount)))
- Unit - Change color of CurrentTitan[TitanLevel] to Dark Green
- Hero - Set CurrentTitan[TitanLevel] Hero-level to (TitanLevel + 5), Show level-up graphics
- Hero - Disable experience gain for CurrentTitan[TitanLevel]
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- GameDifficultyMode Equal to 2
-
Then - Actions
- Unit - Add Titan Armor Bonus (Titans 2v2 Armour Bonus) to CurrentTitan[TitanLevel]
- Unit - Add Titan Mana Bonus (+125 Titans 2v2) to CurrentTitan[TitanLevel]
- Unit - Add Titan Life Bonus (+350 Titans 2v2) to CurrentTitan[TitanLevel]
-
Else - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- GameDifficultyMode Equal to 3
-
Then - Actions
- Unit - Add Titan Armor Bonus (Titans 3v3 Armour Bonus) to CurrentTitan[TitanLevel]
- Unit - Add Titan Mana Bonus (+250 Titans 3v3) to CurrentTitan[TitanLevel]
- Unit - Add Titan Life Bonus (+550 Titans 3v3) to CurrentTitan[TitanLevel]
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- GameDifficultyMode Equal to 4
-
Then - Actions
- Unit - Add Titan Armor Bonus (Titans 4v4 Armour Bonus) to CurrentTitan[TitanLevel]
- Unit - Add Titan Life Bonus (+750 Titans 4v4) to CurrentTitan[TitanLevel]
- Unit - Add Titan Mana Bonus (+375 Titans 4v4) to CurrentTitan[TitanLevel]
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
As you can see, Charon +erinyes spawn in the same loc in this examaple, so does Scyla + Minos,
Any ideas?