Skip to content

Latest commit

 

History

History
32 lines (28 loc) · 1.15 KB

play-diagram.md

File metadata and controls

32 lines (28 loc) · 1.15 KB

Diagrams

Code path diagrams are useful for understanding how things work.

Play diagram

The main play loop

Game:
    - startHand
    ^   |
    |   +- dealTiles
    |   +- preparePlay -> resolveKongs
    |   |                  ^      |
    |   |                  |      +--processKong
    |   |                   `-----'
    |   `- play <-----------------------------------------------------+---,
    |      ^  |                                                       |   |
    |      |  +- dealTile                                             |   |
    |      |  +- getDiscard -------------(no discard)--> processWin --'   |
    |      |  |   ^     |                                                 |
    |      |  |   |     +-processKong                                     |
    |      |  |   |     |                                                 |
    |      |  |   `-----'                                                 |
    |      |  +- processDiscard                                           |
    |      |  +- getAllClaims -------------(claim)-----> processClaim ----'
    |    no|  |
    |      `--+ "wall exhausted?"
    `---------'
        yes