When we first play a game, we usually go through a guided path called a tutorial that will show us how to play the game. This path will just let us perform some specific actions so that the players learn the mechanics of the game and the operations that are allowed in the game.
The best way of developing a tutorial is by thinking about it as a state machine, where each state corresponds to one step of the tutorial and where we can specify the actions allowed on each state and learn how to pass from one state to the next one.
In this section, we are going to develop a tutorial that will consist of five states or steps, where some visual elements will teach players how to implement them.
For this purpose, we will need to create an enumerated object to handle the different steps of the tutorial. So add the following lines at the top of the GameScene
class just after the import
section:
enum TutorialSteps : UInt32 { case TUTORIAL_STEP_1 = 0 case TUTORIAL_STEP_2 = 1 ...