In this chapter, we will create a simple State Machine to control the player via input, as well as create an enemy State Machine which will detect when the player gets close to it and will follow them when in range. We will also look at the base StateMachineComponent
class in the Mach5 Engine and show that, by writing code for a few states, we can create a more complex behavior quite easily. We will also show that adding more than one State Machine to an object can create multiple behaviors to run at the same time, avoiding duplicated state code.
This chapter will be split into a number of topics. It will contain a simple step-by-step process from beginning to end. Here is the outline of our tasks:
- The State pattern explained
- Introduction to State Machines
- An overview of enumerations
- Doing things based on our states
- Why if statements could get you fired
- Expanding on the State Machine
- The State pattern in action--M5StateMachine
- The State pattern in action--StageManager...