Skip to content

Latest commit

 

History

History
65 lines (44 loc) · 2.06 KB

Stories.md

File metadata and controls

65 lines (44 loc) · 2.06 KB

Stories

  • Refactor communication via WebSocket/STOMP to a new (outgoing) adapter

  • Start Hex Board implementation

    • Game start: both players are on the first hex, able to query where a player is
    • When event for EXIT condition for current hex is received, move player to next hex
    • [ ]
  • Turn tracker

    • Once THREE (3) cards are PLAYED or DISCARDED, that player's turn is over, except...
    • ...except for TECH DEBT card situations

Refactorings

  • !! Fix the game.start() problem, probably should be responsibility of the GameFactory as tests don't always create games that were correctly initialized.

  • Extract player map from Game (primitive obsession)

  • Remove lombok from core domain code

  • Discard from Play area: cards go to Deck Discard Pile

  • Multiple players can play

    • Identify myself with my Name (get a player ID)
    • Display game from player's POV
      • My cards AND Opponent's In-Play
    • Actions happen with player's ID
    • Playing attack card ("Code Bloat", "Can't Assert That") goes to OPPONENT'S In-Play area
  • Immediate use card: Refactor

  • Run Tests Results card: show modal of card from Results deck

    • TestResultsCard
    • TestResultsCardFactory
    • TestResultsDeck
    • Controller draws card from TestResultsDeck, returns it, then discards it to the TestResultsDeck
    • Test Result Card Vue component to display the card based on its title

* [ ] Move to RSocket for more real-time interaction

Completed

  • Playing deck consists of (total = 63):
    • Write Code (18)
    • Code Smaller (18)
    • Predict (18)
    • Can't Assert (2)
    • Code Bloat (3)
    • Refactor (4)

[X] 1. Shuffle:

    Two times shuffles happen:
    
    1. Initial deck (start of game)
    2. When draw deck has 0 cards, shuffle cards from Discard Pile
    
    Rule: When Draw Deck is empty, shuffle cards from Discard Pile into Draw Deck 

[X] 1. Discard pile

[X] 1. Re-shuffle deck from discard when deck is empty