static void Main(string[] args) { MainGameLoopFSM gameFSM = new MainGameLoopFSM(); gameFSM.AddState(GameStateID.WaitingToStart, new WaitingToStartState(gameFSM)); gameFSM.AddState(GameStateID.Playing, new PlayingState(gameFSM)); gameFSM.AddState(GameStateID.EndSession, new SessionEndedState(gameFSM)); gameFSM.Start(GameStateID.WaitingToStart, null); }
public WaitingToStartState(MainGameLoopFSM invokingFSM) { this.InvokingFSM = invokingFSM; }
public SessionEndedState(MainGameLoopFSM invokingFSM) { this.InvokingFSM = invokingFSM; }
public PlayingState(MainGameLoopFSM invokingFSM) { this.InvokingFSM = invokingFSM; }