breakertt / frogger

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pacman logo frogger

This is a frogger game project written in JavaFX for COMP2013 CW2, using some design patterns like MVC, Singleton and Factory, etc.

Content

Preview

Screentshots

Primary Stage

  1. Normal Game Screen - with frog drop water animation
  2. Start Screen
  3. Normal Game Screen - with time indicator for seconds left frogging arrived home last time

primarystage

Popup Stages

  1. Score Board Popup
  2. Help Popup

popup

Video

[G52SWM CW2] Frogger - Tianyi GAO

Develop

Prerequisite

  • IntelliJ
  • JDK
    • JAVA 10
    • JAVA 11 or later & Maven Imported JavaFX (As JavaFX is dropped from JDK 11, it is recommended that using Maven to help mange required sources.)

Compiling & Running & Testint

  1. Open the folder of project directly in IntelliJ, then wait IntelliJ download denpendencies.
  2. Run
    • For JDK 10 ONLY: You can launch the app either by running that frogger.Main.main() method inside IntelliJ via click Run -> Run 'Main()' (JDK 10 only).
    • For JDK 10 and later, run mvn clean compile package exec:java command.
  3. Test Need Maven for unit test, run mvn clean test command.

Project Details

Unit Test

Javadoc

Versions

Project Management

Trello board is used to manage development, in progress screenshot is provided. trello

Levels

This project once tried to use json to store level files, please refer to Commit: 9ce18920a8462d48479de300804cd65762be133e

Levels are store in MapLoader.java with three levels now.

Souce File Structure

src
├── main
│   ├── java
│   │   └── frogger
│   │       ├── constant
│   │       ├── controller
│   │       ├── model
│   │       │   ├── info
│   │       │   └── selfMovable
│   │       └── util
│   │           ├── score
│   │           └── sound
│   └── resources
│       └── frogger
│           ├── css
│           ├── font
│           ├── image
│           │   ├── background
│           │   ├── frogger
│           │   ├── ground
│           │   └── water
│           ├── music
│           └── view
└── test
    └── java
        └── frogger
            └── model
                └── info

Design Patterns

MVC

Factory

Singleton

Class Diagram

uml

File Storage

This project stores historical scores in user's home directory: ~/.frogger.

About G52SWM CW2

Click Here for details about requirements of this project.

Credits

This project is modified from a Legacy one.

All assets (images & music) are derived from the internet, sources of assets are listed in ASSETS.

This project adopts MIT license.

Special thanks to:

  1. Song ZHANG for open source for his coursework last year, which help me set a goal and bring perfect template for this project.
  2. My girlfriend for taking care of my daily life and encouraging me during the month before due.

About

License:MIT License


Languages

Language:Java 98.0%Language:CSS 2.0%