This project was made in order to improve my OOP studying, so important concepts were used, such as:
- Inheritance
- Encapsulation
- Abstraction
- Polymorphism
- Composition
- Exception Handling
among others that were not listed.
# clone repository
git clone https://github.com/MaarceloLuiz/chess-system.git
# enter the src directory
cd chess-system/src
# compile the Java files
javac -d ../bin application/Program.java
# enter the bin folder
cd ../bin
# execute the project
java application/Program
#The expected result should be as shown in the image below:
- Pieces:
Pawn | Rook | Knight | Bishop | Queen | King |
---|---|---|---|---|---|
P | R | N | B | Q | K |
- The game is based in lines(1, 2, 3, 4, 5, 6, 7, 8) and columns(a, b, c, d, e, f, g, h)
- To choose and move a piece: First the column should be picked, and then (with no spaces) a line must be chosen. Example: c2
- Captured pieces: Where all the captured pieces are displayed.
- Turn: Displays the turn (round) the game is in.
- Waiting player: Displays which player is going to play next.
- Source: The chosen piece.
- Target: The destiny which the piece is going to be moved.
- Check and CheckMate systems are included.
- Special Moves Available:
- Castling(Rook)
- En Passant
- Promotion
Marcelo Luiz Guimarães Pereira
https://www.linkedin.com/in/marcelo-luiz-guimar%C3%A3es-pereira-613933269/