How to control a character like in popular Dudeski game in HTML5 with Construct2

Did you play Dudeski?

You have to ski down a mountain as an avalanche chases after you. Ski between gates, dodge obstacles, discover the secrets of the mountain, and try making it all the way to the bottom.

Let’s have a look at the way you control the player:

* Touching the left side of the screen the skier turns left

* Touching the right side of the screen the skier turns right

* Touching both sides of the screen the skier prepares to jump

* Releasing at least one side of the screen while preparing to jump, the skier jumps

* While jumping the skier can still turn left and right but can’t prepare to jump

I am showing you how to do the same thing with Scirra’s Construct2, but I am also going to feature a jump power so the longer you prepare to jump, the longer you will jump.

Here’s what we are going to do:

First, we create two transparent sprites which will always be in front of the game. One will entirely cover the left side of the screen, and one will entirely cover the right side of the screen. In my example, the sprites will be completely opaque and red for the left side of the screen and green for the right side.

These two sprites will act as buttons, so we basically have a left and a right button, which may have various states:

Let’s explain it:

When both buttons aren’t pressed, there could be two reasons:

1) The player isn’t doing anything, in this case we do nothing

2) The player just released them while he was charging the jump. In this case we start jumping

When left button is pressed, the player wants to turn left, no matter if while jumping or on the ground

Same thing for right button

When both buttons are pressed, there could be three reasons:

1) The buttons are pressed while jumping, in this case we do nothing (he’s already jumping)

2) The buttons are pressed for a very limited amount of time: probably the player was turning left (or right), then decided to turn right (or left) and for a small amount of time both buttons had been pressed, although the player did not want to jump, in this case we do nothing

3) the buttons are pressed more than a certain amount of time = the player wants to jump so we start charging jump power.

Now, let’s translate it all to Construct2:

You can check the result pointing your mobile browser at http://www.emanueleferonato.com/wp-content/uploads/2014/06/ski/ or using this nice QRCode

You can also download the full Construct2 project.

Next time, a real skier and some obstacles.