
上QQ阅读APP看书,第一时间看更新
Time for action — creating the general data structure of the game
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.
- 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
- 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
- Next will be a variable that stores the game mode. It will also be set to the initial mode.
Field gameMode:Int = gmMenu
- To store the game score, we need another field, called
score
. Easy, isn't it?Field score:Int = 0
- The final fields in the data section will be a field for the level number, and a field to store the total number of destroyed bombs.
Field levelNumber:Int = 0 Field totalBombsDestroyed:Int = 0 Method OnCreate:Int()
- Now, save the
mainClass.monkey
file.