- Joined
- Oct 20, 2012
- Messages
- 3,075
Heya guys, I've created a some kind of random terrain generator for my map. It should work but somehow, after one of the loops, it just won't run the rest of the trigger.
The first and second trigger runs just fine. The third trigger, however, runs the loop but doesn't run the next actions (starting from the clear text down are all ignored) plus, the generated terrain looks like it has variating heights but everything placed in it treat it as the miserable flat plane of terrain it once was.
I've also tried running the next trigger manually through another trigger (chat message -> run trigger 4) and it does run BUT it only creates destructibles within the camera bounds and not in the whole TERRAIN_Region (which is a region that covers the whole 32x32 map area).
Those are my main problems. Questions are:
1.) Why does the third trigger ignore the rest of the actions? and why does the product treated as a flat terrain?
2.) The doodad creation limited within the camera bounds thing. Why does it happen as well?
I'm ready to dump this thing if it doesn't work but I'd still appreciate all the help I could get. ^^
NOTE : Please focus on triggers 3 & 4. The rest work fine.
EDIT: God, I forgot I should have posted this in Triggers and Scripts. *facepalm*
-
TERRAIN Starter
-
Events
- Time - Elapsed game time is 1.00 seconds
- Conditions
-
Actions
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Generating terrain, destructibles and the weather effect. This may take a few moments...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Now generating the tileset...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- Trigger - Run TERRAIN Tileset Generator <gen> (checking conditions)
-
Events
-
TERRAIN Tileset Generator
- Events
- Conditions
-
Actions
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Environment - Change terrain type at temppoint to TERRAIN_TerrainTypes[(Random integer number between 1 and 7)] using variation -1 in an area of size (Random integer number between 1 and 3) and shape Circle
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (-1.00 x (Real(TERRAIN_Seed)))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Environment - Change terrain type at temppoint to TERRAIN_TerrainTypes[(Random integer number between 1 and 7)] using variation -1 in an area of size (Random integer number between 1 and 3) and shape Circle
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (-1.00 x (Real(TERRAIN_Seed))))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Environment - Change terrain type at temppoint to TERRAIN_TerrainTypes[(Random integer number between 1 and 7)] using variation -1 in an area of size (Random integer number between 1 and 3) and shape Circle
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (-1.00 x (Real(TERRAIN_Seed)))), ((Real((Integer A))) x (-1.00 x (Real(TERRAIN_Seed))))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Environment - Change terrain type at temppoint to TERRAIN_TerrainTypes[(Random integer number between 1 and 7)] using variation -1 in an area of size (Random integer number between 1 and 3) and shape Circle
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Cinematic - Clear the screen of text messages for (All players)
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Generating terrain, destructibles and the weather effect. This may take a few moments...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Tileset has been generated. Now generating random heights...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- Trigger - Run TERRAIN Height Generator <gen> (checking conditions)
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
TERRAIN Height Generator
- Events
- Conditions
-
Actions
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
- Environment - Create a 0.10 second Permanent crater deformation at temppoint with radius (Random real number between 64.00 and 512.00) and depth (-1.00 x (Random real number between -32.00 and 32.00))
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (Real((-1 x TERRAIN_Seed)))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
- Environment - Create a 0.10 second Permanent crater deformation at temppoint with radius (Random real number between 64.00 and 512.00) and depth (-1.00 x (Random real number between -32.00 and 32.00))
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (Real((-1 x TERRAIN_Seed))))))
- Environment - Create a 0.10 second Permanent crater deformation at temppoint with radius (Random real number between 64.00 and 512.00) and depth (-1.00 x (Random real number between -32.00 and 32.00))
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (Real((-1 x TERRAIN_Seed)))), ((Real((Integer A))) x (Real((-1 x TERRAIN_Seed))))))
- Environment - Create a 0.10 second Permanent crater deformation at temppoint with radius (Random real number between 64.00 and 512.00) and depth (-1.00 x (Random real number between -32.00 and 32.00))
- Custom script: call RemoveLocation(udg_temppoint)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Cinematic - Clear the screen of text messages for (All players)
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Generating terrain, destructibles and the weather effect. This may take a few moments...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = Terrain height has been generated. Now generating the destructibles...
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- Trigger - Run TERRAIN Destructible Generator <gen> (ignoring conditions)
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
TERRAIN Destructible Generator
- Events
- Conditions
-
Actions
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 15
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 25
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (-1.00 x (Real(TERRAIN_Seed)))), ((Real((Integer A))) x (Real(TERRAIN_Seed)))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 15
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 25
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (Real(TERRAIN_Seed))), ((Real((Integer A))) x (-1.00 x (Real(TERRAIN_Seed))))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 15
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 25
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
- Set temppoint = (Point(((Real(tempint)) x (-1.00 x (Real(TERRAIN_Seed)))), ((Real((Integer A))) x (-1.00 x (Real(TERRAIN_Seed))))))
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 15
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Equal to Lordaeron Winter - Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Rough Dirt
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grassy Snow
- (Terrain type at temppoint) Equal to Lordaeron Winter - Grass
- (Terrain type at temppoint) Equal to Lordaeron Winter - Snow
-
Conditions
-
Or - Any (Conditions) are true
-
Then - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Random integer number between 1 and 100) Less than or equal to 25
-
Then - Actions
- Set tempgroup = (Units within 400.00 of temppoint)
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- (Number of units in tempgroup) Equal to 0
-
Or - Any (Conditions) are true
-
Conditions
- (Terrain type at temppoint) Not equal to Northrend - Ice
- (Terrain type at temppoint) Not equal to Northrend - Rocky Snow
-
Conditions
- (TERRAIN_Region contains temppoint) Equal to True
-
Then - Actions
- Destructible - Create a TERRAIN_Destructibles[(Random integer number between 1 and 5)] at temppoint facing (Random angle) with scale 1.00 and variation 0
- Else - Actions
-
If - Conditions
- Custom script: call DestroyGroup(udg_tempgroup)
- Else - Actions
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Else - Actions
-
If - Conditions
- Custom script: call RemoveLocation(udg_temppoint)
-
Loop - Actions
-
For each (Integer A) from 1 to (Integer(((Height of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
Loop - Actions
- Cinematic - Clear the screen of text messages for (All players)
- -------- ---------------- --------
- Set GAMETEXT_ColorInt = 13
- Set GAMETEXT_Duration = 60.00
- Set GAMETEXT_MessageString = The terrain has been successfully generated.
- Set GAMETEXT_ShowTo = (All players)
- Set GAMETEXT_TypeString = Game Notice
- Set GAMETEXT_Sound = GameNotice <gen>
- Trigger - Run GAME Game Messages <gen> (checking conditions)
- -------- ---------------- --------
- Trigger - Run TERRAIN Post Generation <gen> (checking conditions)
-
For each (Integer tempint) from 1 to (Integer(((Width of TERRAIN_Region) / (Real(TERRAIN_Seed))))), do (Actions)
-
TERRAIN Post Generation
- Events
- Conditions
-
Actions
- Cinematic - Enable user control for (All players)
- Cinematic - Fade in over 0.75 seconds using texture Black Mask and color (0.00%, 0.00%, 0.00%) with 0.00% transparency
- Environment - Create at (Entire map) the weather effect Northrend Snow (Heavy)
- Environment - Set sky to Lordaeron Summer Sky
- Selection - Select Hero Selection Building 0005 <gen>
-
For each (Integer tempint) from 1 to GAME_PlayersMax, do (Actions)
-
Loop - Actions
- Countdown Timer - Start GAME_PlayerTimer[tempint] as a One-shot timer that will expire in 100000000.00 seconds
- Set temppoint = (Position of Hero Selection Building 0005 <gen>)
- Unit - Create 1 Hero Buyer for GAME_Players[tempint] at temppoint facing Default building facing degrees
- Camera - Lock camera target for GAME_Players[tempint] to (Last created unit), offset by (0.00, 0.00) using Default rotation
- Custom script: call RemoveLocation(udg_temppoint)
- Visibility - Create an initially Enabled visibility modifier for (Player(tempint)) emitting Visibility across (Entire map)
- Visibility - Destroy (Last created visibility modifier)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
- GAME_PlayersPlaying Equal to 1
-
Then - Actions
- Set GAME_SinglePlayer = True
- Game - Display to (All players) the text: ((GAME_TextColorStart[13] + (Game Notice : + GAME_TextColorEnd)) + Single Player mode activated. Prepare for zombies!)
- Else - Actions
-
If - Conditions
I've also tried running the next trigger manually through another trigger (chat message -> run trigger 4) and it does run BUT it only creates destructibles within the camera bounds and not in the whole TERRAIN_Region (which is a region that covers the whole 32x32 map area).
Those are my main problems. Questions are:
1.) Why does the third trigger ignore the rest of the actions? and why does the product treated as a flat terrain?
2.) The doodad creation limited within the camera bounds thing. Why does it happen as well?
I'm ready to dump this thing if it doesn't work but I'd still appreciate all the help I could get. ^^
NOTE : Please focus on triggers 3 & 4. The rest work fine.
EDIT: God, I forgot I should have posted this in Triggers and Scripts. *facepalm*