Перейти к содержанию

State — dice_board Turn FSM

stateDiagram-v2
    [*] --> RollDice: turnStart
    RollDice --> AwaitCellChoice: diceRolled
    AwaitCellChoice --> PlaceToken: cellEmpty
    AwaitCellChoice --> CaptureToken: cellOccupiedByOpponent
    PlaceToken --> CheckCenter: tokenPlaced
    CaptureToken --> CheckCenter: tokenCaptured
    CheckCenter --> RollDice: isCenterCell
    CheckCenter --> CheckWin: notCenter
    CheckWin --> GameOver: threeInRow
    CheckWin --> NextTurn: noWin
    GameOver --> [*]
    NextTurn --> [*]

Исходник: state-game.mmd