An OOP approach to chess.
All pieces working, with a check and checkmate system.
This program has been created to allow to users to play chess on the command line.
After printing the board, the user can pick a piece and find out the possible moves and move to this location. The game then checks if that move constitutes check and checkmate. If it constitutes checkmate, the game ends. The program itself utilises many features of OOP, including overloading, virtual functions, and polymorphism.
The user can ask for which moves a certain piece can make, and the program will return a list of possible moves. To improve on this project, en passant could be included, as well as a save function.