Class Responsibility

Below is a list of classes that will used in the implementation of our game, categorized by general purpose in the game's design. Beneath each classes is stated the class's responsibility, a short description of the class, what fields will be present in the class and, in some cases, a short outline of a typical process involving the class

The "Core Process" description (listed first), provides a very high level structural description of our game's "main()" method. Expect additional updates to this page as the game development continues throughout the quarter

Core Process

  • Instantiates Games
  • Creates all game screens
  • Handles transittions between screens
  • Loads "Gameplay" screen

INPUT CLASSES

Input Handler Class:
User Input Class:

Process Outline:

  1. User Input (key event)
  2. (Input) Event Handler
  3. Update User Input Class

OBJECT CLASSES

World Object (Rectangle) Class

Properties:

  • Contain object size / shape / position

Level Object Class: (extends World Object Class)
Particle Object Class: (extends World Object Class)
Player Class: (extends World Object Class)

Purpose:
Interpret input & set correct player animation

Properties:
State (standing / walking / falling / bleeding / etc.)

Process Outline:

  1. Receive Tick from Frame Class
  2. Check User Input Class for new Command
  3. Interpret user Input
  4. Pass information to Level Map Class

ENGINE CLASSES

Level Map Class:

Purpose:
This is the main engine of the game Keeps track of all world objects Receives input from players Interprets input & performs collission detection Moves objects based upon results

Properties:
Contains Level Objects / Is aware of Level Object Positions

Process Outline:

  1. Receives information from Player Class (Object, Moving Vector, Parameters)
  2. Collision Detection
  3. Moves Object in Level
  4. Returns Information

Colission Detection Class:
Frame Class:

Purpose:
This is the heartbeat of the game engine Contains Clock used to Generate 'Ticks' Synch machine clock with game speed

Properties:

  • Run lifetime
  • Proportion of game speed to clock speed

Process Outline:

  1. Generate 'Tick'
  2. Send 'Tick' to all Time related Elements (moving objects) on the screen