Welcome to the Azul board game implemented in Java with Object-Oriented Programming (OOP) principles. This repository contains a simple console version of the game organized as a Maven project.
Make sure you have Java and Maven installed on your system.
-
Clone the repository:
git clone https://github.com/your-username/azul-board-game-java.git
-
Navigate to the project directory:
cd azul-board-game-java
-
Compile the code using Maven:
mvn compile
-
Run the game using Maven:
mvn exec:java -Dexec.mainClass="sk.uniba.fmph.dcs.Main"
Alternatively, you can combine compilation and execution in one command:
mvn compile exec:java -Dexec.mainClass="sk.uniba.fmph.dcs.Main"
This implementation provides a console-based version of the Azul board game. The main runnable class is Main
in the package sk.uniba.fmph.dcs
.
- Enter the number of players (2 to 4).
- The game initializes with the specified number of players, creating boards and a table area.
- The main game loop starts, allowing each player to take their turn.
- On each turn, the player chooses a source, color, and destination for their move.
- The game continues until it is over (see game rules).
- The final scores for each player are displayed.
For detailed instructions on how to play Azul, refer to the official game rules: Azul Game Rules.
The main logic is implemented in the Main
class, utilizing other classes such as Board
, Game
, GameObserver
, and interfaces like BoardInterface
, TableAreaInterface
, and GameInterface
.
Feel free to contribute to the project by opening issues or creating pull requests. Your feedback and contributions are highly appreciated.
This project is licensed under the MIT License - see the LICENSE file for details.