- Pairing to teach a new engineer some object modeling and testing fundamentals
- New ruby 3 features like ractors and fibers
- Learn more about chess
Piece typeTeam- Valid moves(current_board)
basic moves (pieces make valid moves and stay on the board)- take collisions in to account when moving
- advanced movement (castling, en passant, promotions)
- Checked/Checkmated
ValuePosition on boardFile (Letters) - First CoordinateRank (Numbers) - Second Coordinate
All the pieces on the boardSet itself up (heres a new game)from new gamefrom an established board matrix- from an input vector of moves
How many of each piece are left - Score balance
- Type (computer, human)
- Next move
- Team
- Time remaining
- What turn
- Asks if game is over, if so, awards winner
- Initial time per player
Here is the algorithm