If you don't have the mainClass.monkey
file opened already, then please do so. We need to add to it now.
In RocketCommander
, we will also use a finite-state, machine approach for the OnUpdate
and OnRender
methods.
1. Add the game states as constants into the
RocketCommander
class.Class RocketCommander Extends App Const gmMenu:Int = 1 'This mode shows the start menu Const gmPlay:Int = 2 'This mode shows the game playing Const gmGameOver:Int = 3 'This mode shows the game over message
2. Below the constants, add two fields to store the size of the canvas.
Field cWidth:Int 'X size of the canvas Field cHeight:Int 'Y size of the canvas
3. Next will be a variable that stores the game mode. It will also be set to the initial mode.
Field gameMode:Int = gmMenu
4. To store the game score, we need another field, called
score
. Easy, isn't it?Field score:Int = 0
5. The final fields in the data section will be a field for the level number,...