This project is meant our knowledge and understanding of object oriented topics by applying some patterns to our own project.
This project used a game state pattern to keep track of tile pieces, aggregation for tracking pieces on each tile, and a composition
relationship for 64 tiles that the CheckersApp class needs in order to work.
Document: https://docs.google.com/document/d/1JiNVNZUEqjJc7C2XHqHgQ5pG9Xcgt_PfUs5oGSfMMIg/edit?usp=sharing
Video Demo: https://drive.google.com/file/d/1Ia7HV0hPXNEgEREihZXKlDfwBeCizSDQ/view?usp=sharing
Main function class can be found under checkers/src/checkersGame.java
By running the main function the program will open a dialog for inputting the names of the players.
Once that has been done a checkers board will appear where the two players can play a game of checkers.
Object files for the checkers game can be found under checkers/src/checkers.
Object files for the end game screen can be found under checkers/src/endGameScreen.
Object files for the login screen can be found under checkers/src/login.
- Download JavaFX 11 from here : https://gluonhq.com/products/javafx/
- place it in a directory that you know
- In the file project in intellij, click the "File" tab at the top left corner
- Click on the "Project Structure" tab
- On the "Libraries" tab, click the "+" sign
- Click "Java"
- enter the directory where the JavaFX library is located at. EX: C:\Users\User\Documents\JDKs\openjfx-11.0.2_windows-x64_bin-sdk\javafx-sdk-11.0.2\lib
- press okay
- JavaFX should be ready to use
link: https://github.com/tidaeu/checkers-api-OOP
- Download repo
- Open in intellij by selecting the pom.xml and "Import as Project"
- Install docker and pull Postgres (https://hub.docker.com/_/postgres)
- Confirm Postgres is pointing to port 5432
- Create Database named "checkers_platform"
- Start API in IntellJ. API will be pointing to serverport 9999
- All configurable settings can be found in resources/application.properties
Youtube tutorial playlist for javaFX: https://youtu.be/FLkOX4Eez6o
Youtube creator github (notice no java projects there): https://github.com/thenewboston-developers
Wikipedia page for checkers (used “rules” section for behavior): https://simple.wikipedia.org/wiki/Checkers