An open API service indexing awesome lists of open source software.

https://github.com/marcin-chwedczuk/xox

Tic Tac Toe 3x3, 4x4, 5x5 game based on alpha-beta algorithm with GUI in JavaFX.
https://github.com/marcin-chwedczuk/xox

alpha-beta-pruning javafx minimax tic-tac-toe

Last synced: 8 months ago
JSON representation

Tic Tac Toe 3x3, 4x4, 5x5 game based on alpha-beta algorithm with GUI in JavaFX.

Awesome Lists containing this project

README

          

### TicTacToe minimax

To start execute:
```
./mvnw clean install
./mvnw javafx:run -pl gui
```

Application GUI was created using JavaFX.
I tested it on both macOS and Linux.

## Contributors Guide

### SceneBuilder setup

0. Make sure to upgrade to SceneBuilder 17.0
![Import Step 0](docs/sceneBuilder.png)

1. Create a JAR with `GameBoard` custom control
```
./mvnw clean package
```
This will create `gui/target/gui-1.0.0-SNAPSHOT.jar` file.

2. Import JAR into SceneBuilder

Open JAR/FXML Manager:
![Import Step 1](docs/import1.png)

Select "Add Library/FXML from file system" option and select
`gui/target/gui-1.0.0-SNAPSHOT.jar` file.

Select only `GameBoard` control:
![Import Step 2](docs/import2.png)

If `GameBoard` does not show up on the list,
you need to check SceneBuilder version.
You have to use SceneBuilder compatible with JDK and JavaFX versions
used in the project.

3. Now you should be able to open `MainWindow.fxml` in SceneBuilder
![Import Finished](docs/import3.png)