All Classes and Interfaces

Class
Description
A class that makes enemies move horizontally in a constant speed.
Task-based AI component.
A class that makes enemies move vertically in a constant speed.
Cast a ray against all colliders that match the layer mask.
Renders animations from a texture atlas on an entity.
 
 
 
 
 
Atlantis game area for creating the map the game is played in
 
Factory for creating game terrain.
 
 
Defines the barracks properties stored in config file to be loaded by the Building Factory.
 
Defines a basic set of properties stored in entities config files to be loaded by Entity Factories.
 
Defines the Black Smith properties stored in config file to be loaded by the Building Factory.
POJO which contains the custom data attached to each box2D entity.
 
 
 
 
 
Action component for interacting with a building.
Component to handle building animations, this component simply listens to events and plays animation associated with events called.
Defines all building configs to be loaded by the Building Factory.
Factory to create a building entity with predefined components.
 
 
 
Component that sets the buildings health state.
 
 
 
 
 
When this entity touches a valid enemy's bullet, deal damage to them and destroy the bullet.
 
 
 
Chases a target entity until they get too far away or line of sight is lost
 
 
 
 
Attaches a physics collider to an entity.
Component used to store information related to combat such as health, attack, etc.
A generic command class.
Core component class from which all components inherit.
Internal type system for components.
 
 
Coordinates represent a cartesian point on the map and are used to assist in processing data in the dynamic generation of the map
 
A command for toggling debug mode on and off.
Provides functionality to draw lines/shapes to the screen for debug purposes.
A default task implementation that stores the associated entity and updates status when starting/stopping a task.
Represents all actions bound to a dialogue box
Represents a Dialogue Box to be displayed randomly
Some buildings face different direction, as such they will have animation in different directions, this component accounts for these cases and handles animations and states just for these buildings.
 
 
 
 
 
 
 
This class listens to events relevant to enemy entity's state and plays the animation when one of the events is triggered.
Defines all NPC configs to be loaded by the NPC Factory.
 
 
Factory to create non-playable character (NPC) entities with predefined components.
AI task to handle enemy movement
 
Core entity class.
Enumeration used to represent compass direction of enemy entities.
Used to keep record of the position that moving units such as enemies, friendlies and workers, it uses an EnemyDirection enumeration class for each compass direction and EnemyDirection.DEFAULT which is only set upon initialising the class, this to stop avoid using null for direction when component is first initialised.
Provides a global access point for entities to register themselves.
 
Send and receive events between objects.
An event listener which is notified when events occur.
An event listener with 0 arguments
An event listener with 1 argument
An event listener with 2 arguments
An event listener with 3 arguments
An event listener with 4 arguments
 
Defines the farm properties stored in config file to be loaded by the Building Factory.
Wrapper for reading Java objects from JSON files.
 
 
 
 
 
 
 
 
Forest area for the demo game with trees, a player, and some enemies.
Component to indicate that this Entity is friendly - used by the gate to distinguish friendly entities.
Represents an area in the game, such as a level, indoor area, etc.
Displays the name of the current game area.
A global event handler for the game, this can be used to invoke events that trigger functions dependent on access to objects in the game area, for example, spawning units and buildings.
Controls the game time
 
Entry point of the non-platform-specific game logic.
 
 
This class listens to events relevant to a ghost entity's state and plays the animation when one of the events is triggered.
Defines the properties stored in ghost king config files to be loaded by the NPC Factory.
Contains additional utility constants and functions for common GridPoint2 operations.
 
The Health Bar Component can be added to entities This component will display the health under the entity The health is specified by the combat stats component
Render a static texture.
Physics comp
 
 
 
 
 
 
An InputComponent that supports keyboard and touch input and touch gestures.
Generic class to wrap an InputProcessor so that it acts like an InputComponent.
InputFactory creates inputType-specific inputFactories which can handle various types of input.
Input device types
 
Provides a global access point for handling user input and creating input handlers.
 
 
A component intended to be used by the player to track their inventory.
A job system provides a general-purpose way to run multi-threaded code.
KeyboardInputFactory creates input handlers that process keyboard and touch support.
Input handler for the player for keyboard and touch (mouse) input.
Input handler for the debug terminal for keyboard and touch (mouse) input.
Defines the Library properties stored in config file to be loaded by the Building Factory.
 
 
This class listens to events relevant to the Main Game Screen and does something when one of the events is triggered.
Displays a button to exit the Main Game screen to the Main Menu screen.
The game screen containing the main game.
This class listens to events relevant to the Main Menu Screen and does something when one of the events is triggered.
A ui component for displaying the Main menu.
The game screen containing the main menu.
If entity has a MapComponent they are added to the map.
MapGenerator builds a procedurally generated map of desired mapWidth, mapHeight, including an island of islandSize width containing a city of citySize square length.
Stores all game entity positions.
 
 
 
 
 
 
A movement controller moves something to a given a target.
Move to a given position, finishing when you get close enough.
 
Factory to create obstacle entities.
 
 
Generates paths between buildings using a blind search algorithm.
This class listens to events relevant to the Pause Menu overlay and does something when one of the events is triggered.
A ui component for displaying the Pause menu.
Displays performance stats about the game for debugging purposes.
Lets an entity be controlled by physics.
 
 
Box2D collision events fire globally on the physics world, not per-object.
Process game physics using the Box2D library.
 
Movement controller for a physics-based entity.
Provides a global access point to the physics engine.
 
Action component for interacting with the player.
Defines the properties stored in player config files to be loaded by the Player Factory.
A ui component for displaying player stats, e.g.
A priority task is a task that also has a priority.
This class provides an API for seeding Pseduo-Generated Random features.
Class used to spawn a random point within a certain range of the city center
 
Attacks a target entity when it gets close to the enemy.
 
Stores information about a raycast hit.
Can be rendered onto the screen given a Sprite batch.
A generic component for rendering an entity.
Core rendering system for the game.
 
Globally accessible service for registering renderable components.
 
Defines the properties stored in player config files to be loaded by the Player Factory.
A UI component for displaying the current game resource count TODO: integrate with UnitInventoryComponent
Responsible for the procedural placement of a static collection of resources around the game map
Service for loading resources, e.g.
 
 
 
Used to set a precise selection hitbox on an Entity with a TextureRenderComponent
A simplified implementation of the Service Locator pattern: https://martinfowler.com/articles/injection.html#UsingAServiceLocator
Settings menu display and logic.
The game screen containing the settings.
 
Adds shop spending and trading functionality.
Cast a ray against all colliders that match the layermask.
 
 
 
 
 
A map sorted by the value of key with O(1) iteration.
 
 
 
 
 
 
 
 
A ui component for displaying the Main menu.
A ui component for displaying the Main menu.
The game screen containing the main game.
Apply a custom toString() for a class without overriding the class, using a decorator.
 
 
 
 
An AI task can be started and stopped at any time.
 
 
State tracker for a debug terminal.
A ui component for displaying the debug terminal.
Render a tiled terrain for a given tiled map and orientation.
 
Factory for creating game terrain.
This enum should contain the different terrains in your game, e.g.
Custom terrain tile implementation for tiled map terrain that stores additional properties we may want to have in the game, such as audio, walking speed, traversability by AI, etc.
A very simple component that stores refernece to the buildings texture, this is used by the building UI to display an image of the UI, if the building uses an atlas file rather than a texture
Render a static texture.
 
 
 
When this entity touches a valid enemy's hitbox, deal damage to them and apply a knockback.
 
Input handler for the player for keyboard and touch (mouse) input.
Input handler for the debug terminal for keyboard and touch (mouse) input.
Defines the town hall properties stored in config file to be loaded by the Building Factory.
 
 
 
 
Allows us to make use of an entity that contains other entities
A ui component for handling tutorial actions TODO: integrate with actions
A ui component for displaying the Main menu.
 
The game screen containing the tutorial game.
A generic component for rendering onto the ui.
 
 
 
 
 
 
There are stationary buildings (trebuchet) in the game that change their sprite depending on what direction their target is in, this component implements similar direction detection as PhysicsMovementComponent, but for stationary entities.
Reading, Writing, and applying user settings in the game.
Stores chosen display settings.
Stores game settings, can be serialised/deserialised.
Contains additional utility constants and functions for common Vector2 operations.
Task that does nothing other than waiting for a given time.
Defines the wall properties stored in config file to be loaded by the Building Factory.
Wander around by moving a random position within a range of the starting position.
 
 
 
Creates a base at which a worker can deposit resources
Defines the properties stored in player config files to be loaded by the Player Factory.
Factory to create a worker entity
 
Input handler for selecting, un-selecting and moving worker units
A component intended to be used by the player to track their unit's inventory.