- Joined
- May 21, 2006
- Messages
- 22
Hey
I have had an idea for making a fully dynamic map, with eco-systems and such at some point. So recently I have been messing around with making trees age, die and respawn. I have made a proto-type for it, but I would love to get some feedback, because I am not sure I have done it the best way
I hope you have time to check it out
I have had an idea for making a fully dynamic map, with eco-systems and such at some point. So recently I have been messing around with making trees age, die and respawn. I have made a proto-type for it, but I would love to get some feedback, because I am not sure I have done it the best way
I hope you have time to check it out
-
Tree replacer Copy
-
Events
- Time - Every 2.00 seconds of game time
- Conditions
-
Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = 1
- Destructible - Kill (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (Dead)))
- Wait 5.00 seconds
-
Destructible - Pick every destructible in (Playable map area) and do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Summer Tree Wall (sprout)
- (Current life of (Picked destructible)) Equal to 0.00
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Remove (Picked destructible)
-
For each (Integer DyingTree) from 0 to DyingTree, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Terrain pathing at WaterCheck of type Walkability is off) Equal to False
- (Terrain pathing at WaterCheck of type Buildability is off) Equal to False
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Create a Summer Tree Wall (sprout) at WaterCheck facing (Random angle) with scale (Random real number between 0.10 and 0.50) and variation (Random integer number between 0 and 9)
- Animation - Play (Last created destructible)'s birth animation
- Animation - Change (Last created destructible)'s animation speed to 100.00% of its original speed
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Game - Display to (All players) the text: Spawn
- Skip remaining actions
-
Else - Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = (DyingTree + 1)
- Game - Display to (All players) the text: Spawn
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Summer Tree Wall
- (Current life of (Picked destructible)) Equal to 0.00
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Remove (Picked destructible)
-
For each (Integer DyingTree) from 0 to DyingTree, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Terrain pathing at WaterCheck of type Walkability is off) Equal to False
- (Terrain pathing at WaterCheck of type Buildability is off) Equal to False
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (sprout)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 0.80 and 1.20) and variation (Random integer number between 0 and 9)
- Destructible - Create a Summer Tree Wall (sprout) at WaterCheck facing (Random angle) with scale (Random real number between 0.10 and 0.50) and variation (Random integer number between 0 and 9)
- Animation - Play (Last created destructible)'s birth animation
- Animation - Change (Last created destructible)'s animation speed to 100.00% of its original speed
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Game - Display to (All players) the text: Spawn
- Skip remaining actions
-
Else - Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = (DyingTree + 1)
- Game - Display to (All players) the text: Spawn
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Summer Tree Wall (Old)
- (Current life of (Picked destructible)) Equal to 0.00
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Remove (Picked destructible)
-
For each (Integer DyingTree) from 0 to DyingTree, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Terrain pathing at WaterCheck of type Walkability is off) Equal to False
- (Terrain pathing at WaterCheck of type Buildability is off) Equal to False
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Old) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.40 and 1.60) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (sprout)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 0.80 and 1.20) and variation (Random integer number between 0 and 9)
- Destructible - Create a Summer Tree Wall (sprout) at WaterCheck facing (Random angle) with scale (Random real number between 0.10 and 0.50) and variation (Random integer number between 0 and 9)
- Animation - Play (Last created destructible)'s birth animation
- Animation - Change (Last created destructible)'s animation speed to 100.00% of its original speed
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Game - Display to (All players) the text: Spawn
- Skip remaining actions
-
Else - Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = (DyingTree + 1)
- Game - Display to (All players) the text: Spawn
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Summer Tree Wall (Ancient)
- (Current life of (Picked destructible)) Equal to 0.00
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Remove (Picked destructible)
-
For each (Integer DyingTree) from 0 to DyingTree, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Terrain pathing at WaterCheck of type Walkability is off) Equal to False
- (Terrain pathing at WaterCheck of type Buildability is off) Equal to False
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (Old)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Ancient) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.80 and 2.20) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Old) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.40 and 1.60) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (sprout)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 0.80 and 1.20) and variation (Random integer number between 0 and 9)
- Destructible - Create a Summer Tree Wall (sprout) at WaterCheck facing (Random angle) with scale (Random real number between 0.10 and 0.50) and variation (Random integer number between 0 and 9)
- Animation - Play (Last created destructible)'s birth animation
- Animation - Change (Last created destructible)'s animation speed to 100.00% of its original speed
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Game - Display to (All players) the text: Spawn
- Skip remaining actions
-
Else - Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = (DyingTree + 1)
- Game - Display to (All players) the text: Spawn
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Destructible-type of (Picked destructible)) Equal to Summer Tree Wall (Dead)
- (Current life of (Picked destructible)) Equal to 0.00
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Destructible - Remove (Picked destructible)
-
For each (Integer DyingTree) from 0 to DyingTree, do (Actions)
-
Loop - Actions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
If - Conditions
-
And - All (Conditions) are true
-
Conditions
- (Terrain pathing at WaterCheck of type Walkability is off) Equal to False
- (Terrain pathing at WaterCheck of type Buildability is off) Equal to False
-
Conditions
-
And - All (Conditions) are true
-
Then - Actions
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (Ancient)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Dead) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.80 and 2.20) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (Old)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Ancient) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.80 and 2.20) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall (Old) at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 1.40 and 1.60) and variation (Random integer number between 0 and 9)
- Set TreeSpawnPoint = (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall (sprout)))
- Set TreeSpawnPoint_Copy = (Position of TreeSpawnPoint)
- Destructible - Remove TreeSpawnPoint
- Destructible - Create a Summer Tree Wall at TreeSpawnPoint_Copy facing (Random angle) with scale (Random real number between 0.80 and 1.20) and variation (Random integer number between 0 and 9)
- Destructible - Create a Summer Tree Wall (sprout) at WaterCheck facing (Random angle) with scale (Random real number between 0.10 and 0.50) and variation (Random integer number between 0 and 9)
- Animation - Play (Last created destructible)'s birth animation
- Animation - Change (Last created destructible)'s animation speed to 100.00% of its original speed
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Game - Display to (All players) the text: Spawn
- Skip remaining actions
-
Else - Actions
- Set WaterCheck = ((Position of (Random destructible in (Playable map area) matching ((Destructible-type of (Matching destructible)) Equal to Summer Tree Wall))) offset by ((Random real number between -500.00 and 500.00), (Random real number between -500.00 and 500.00)))
- Set DyingTree = (DyingTree + 1)
- Game - Display to (All players) the text: Spawn
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Else - Actions
- Do nothing
-
If - Conditions
-
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
-
Loop - Actions
-
Events
Attachments
Last edited: