Skip to content

flashery/JavaSolitaire

Repository files navigation

🃏 JavaSolitaire

JavaSolitaire is a desktop-based implementation of the classic Solitaire card game, developed using Java and JavaFX. This project serves as an exploration into game development with JavaFX, focusing on GUI design, event handling, and game logic.


🎯 Project Overview

This application replicates the traditional Solitaire gameplay, emphasizing:

  • Interactive GUI: Utilizing JavaFX to create a responsive and intuitive user interface.:contentReference[oaicite:3]{index=3}

  • Game Mechanics: Implementing core Solitaire rules and logic for an authentic experience.:contentReference[oaicite:6]{index=6}

  • Modular Design: Structured codebase to separate concerns such as game logic, UI components, and event handling.:contentReference[oaicite:9]{index=9}


🛠️ Technologies Used

  • Programming Language: Java:contentReference[oaicite:12]{index=12}

  • GUI Framework: :contentReference[oaicite:14]{index=14}:contentReference[oaicite:16]{index=16}

  • Build Tool: :contentReference[oaicite:18]{index=18}:contentReference[oaicite:20]{index=20}

  • IDE: :contentReference[oaicite:22]{index=22}:contentReference[oaicite:24]{index=24}


📁 Project Structure

JavaSolitaire/ ├── src/ # Source code files ├── build/ # Compiled classes ├── dist/ # Distributable JAR files ├── nbproject/ # NetBeans project configuration ├── out/ # Output directory ├── .idea/ # IntelliJ IDEA project files ├── build.xml # Ant build script ├── manifest.mf # Manifest file for JAR └── README.md # Project documentation


🚀 Getting Started

To run the application:

  1. Clone the Repository:
   git clone https://github.com/flashery/JavaSolitaire.git
  1. Build the Project:

Use NetBeans to open the project and build it using the provided build.xml Ant script.

  1. Run the Application:

Execute the generated JAR file located in the dist/ directory.

java -jar dist/JavaSolitaire.jar

🧩 Features Card Movement: Drag-and-drop functionality for moving cards between piles. GitHub

Game Rules Enforcement: Validates moves according to Solitaire rules.

Restart Functionality: Option to reset the game at any point.

Responsive Design: Adjusts layout based on window size.

📌 Future Enhancements Scoring System: Implement a point-based scoring mechanism.

Timer: Add a timer to track game duration.

Multiple Decks: Support for different card deck designs.

Save/Load Game: Ability to save the current game state and resume later.

🧑‍💻 Author Yves Gonzaga

Exploring the realms of Java game development with a focus on GUI applications.

📄 License This project is licensed under the MIT License.

About

Testing how to create games in JavaFX

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors