Game Overview
Game Structure
The game starts from the Game scene located in the Jumpy/Scenes folder.
Prefabs are located in the Jumpy/Resources/Level folder and are loaded from scripts at runtime.
All game UI prefabs are located in Jumpy/Resources/UI and are loaded from scripts at runtime.
All game sounds are located in Jumpy/Resources/Sounds and are loaded only when needed.
All game graphics are located in the Jumpy/Graphics folder which contains the following subfolders:
Animations - all animations from the project.
Chicken - contains the 3D object for the player.
Fonts - game font.
FX - materials and textures used for in-game animations.
Icon - game icon.
Sprites - all textures used in the game.
UI - all textures used in-game UI
All game scripts are located in the Jumpy/Scripts folder.
Scripts
General purpose scripts
GameManager.cs | Contains references to the important project capabilities. All plugin initializations should be made here. |
HelperMethods.cs | Contains methods that are not game related. |
SingleReference.cs | Singleton template for Unity - only one instance per script is available. |
Animation Scripts
AnimatorEventsTrigger.cs | This is added to any animator state and triggers when that state exits. |
TweenManager.cs | Used to make animations from code. |
Input Scripts
UserInputManager.cs | Listens for button pressed events, and triggers the corresponding events to UI. |
MyButton.cs | Replace the Unity “Button” component on every button with “MyButton” to automatically send events to UserInputManager. |
Sound Scripts
SoundLoaderManager.cs | All game sounds are played using methods from this class. |
Save Scripts
GameProgressManager.cs | A proxy class between game save and gameplay scripts. Contains all values that are needed to be passed between game scripts. |
SavedProperties.cs | Contains all variables that will be saved when user quits the game. |
UI Scripts
AssetsLoaderManager.cs | Loads and unloads all game UI. |
GenericInterfaceController.cs | Contains all methods needed to load and interact with full-screen UI. It is an abstract class that needs to be implemented by all full-screen UI scripts from the game. |
GenericPopup.cs | Contains all methods needed to load and interact with UI popups. It is an abstract class that needs to be implemented by all UI popups in the game. |
InGameInterface.cs | In-game full-screen UI. Handles UI display and listens for clicks. Implements GenericInterfaceController. |
LevelCompletePopup.cs | End level UI. Handles end-level UI and listens to clicks. |
PausePopup.cs | Handles in game pause popup. |
TitleScreenPopup.cs | Handles the main menu UI. |
Gameplay Scripts
LevelManager.cs | Loads all level scripts. Handles player interactions. Updates level camera. Generates power-ups. Checks for level complete. |
LevelBuilder.cs | Loads all background prefabs. Updates level looks based on player position. |
LevelObstacles.cs | Handles all game obstacles. |
Player.cs | Controls player position, animations, colliders and physics. |
Alignment.cs | Helper class to arrange an object at any corner of the screen. |
Corn.cs | Controls the corn power up. |
Cylinder.cs | Handles the bottom cylinder. |
Last updated