Skip to content

Latest commit

 

History

History
59 lines (45 loc) · 1.65 KB

README.md

File metadata and controls

59 lines (45 loc) · 1.65 KB

Chess System

About

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.

How to Play

# 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: 

chessgamescreenshot

Important Notes

  • 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

Author

Marcelo Luiz Guimarães Pereira

https://www.linkedin.com/in/marcelo-luiz-guimar%C3%A3es-pereira-613933269/