Please read http://www2.create-games.com/article.asp?id=1671 first.


If you have all the events in groups, then this will be easy.


Springs→

Creating springs is easy.
Firstly, create a spring-like object and call it spring. Secondly, create a group in the event editor called spring.
Third, add these events:

+Alterable Value B (Player) is pressed
+(Bottom Detector) is overlapping (Spring)
-Set Alterable Value B (Player) to -5

+Only one action when event loops
+(Left Detector) is overlapping (Spring)
-Set Alterable Value A (Player) to 0

+Only one action when event loops
+(Right Detector) is overlapping (Spring)
-Set Alterable Value A (Player) to 0

+(Bottom Detector) is overlapping (Spring)
+Repeat while Shift is pressed
-Set Alterable Value B (Player) to -15

Simple enough, When you are just standing on a spring you bounce a little. When you hold shift you jump a lot higher.

Think you're done? Think again. If you run into the spring. You go through it. This is because, in the loops group, notice that it has:

+On loop Horizontal
+Alterable Value A (Player) > 0
+(Right Detector) is overlapping obstacle (Negate)
-Set X position (Player) to X position (Player) + 1

Add:
+(Right Detector) is overlapping (Spring) (Negate)

Do this for all the loops.

Done!

Wasnt that easy.



Water→

Water is easy as.

Create an active object with that blue blue color. (R,G,B = 0,0,255) Set the semi-transparency to a fairly high number.

In a 'Misc' group or 'Other' or whatever you use for misc events, add:

+Always
-Bring to front (Water)

+(Water) is overlapping (Player)
-Activate group Water

+(Water) is overlapping (Player) (Nagate)
-Deactivate group Water


Then, create a group called water, turn off Activate when frame starts and add:

+Every 00.10 sec
+Alterable Vaue B (Player) is < -5
-Sub 1 from Alterable Vaue B

Very simple and easy to understand.



Double Jump→

For double jump, we are going to use a flag.

On the normal jumping actions, add:

-Set flag 1 (Player) to on

Then add these events:

+Upon pressing Shift
+Flag 1 (Player) is on
+Alterable Value B (Player) < 11
-Sub 7 from Alterable Value B (Player)
-Set flag 1 (Player) off

This tests to see if the player is pressing shift then makes sure that flag 1 is on and that the player is'nt falling too fast. Then it jumps again and sets flag 1 to off so you cant jump again.

On this event:

+Alterable Value B (Player) > 0
+(Bottom Detector) is overlapping an object
-Set Alterable Value B (Player) to 0

Add:

-Set flag 1 (Player) off

This makes sure that when you jump normally, you dont double jump accidently.



Terminal Height→

If the player falls from a height and Alterable Value B gets greater than 20, then you die.

Events:

+Alterable Value B (Player) >= 20
+(Bottom Detector) is overlapping background
-Destroy (Player)

If Alterable Value B is greater or equal than 20 and you touch the ground and flag 2 is on, then you die.


The End