Ending Cutscenes - UQcsse3200/2024-studio-3 GitHub Wiki

Ending Cutscene Overview

The ending cutscenes act as the final media presented to the player after finishing the game and detail the outcome of their play session. It acts as the final connection between the player, character, and story, and needs to flesh out the story conclusion.

UML

The UML diagram depicts the relationship between BadEndCutscene and multiple other core components. The BadEndCutscene inherits its foundational logic of managing asset generation, scene transitions and entity handling from Cutscene, and utilises AnimatedScene to store needed file data for each scene. image

Ending Cutscenes

There are three ending cutscenes currently implemented:

  • The good ending cutscene concludes the narrative of the game by having the player no longer pressured by the animals, and they are free to continue their life in piece.
  • The bad ending cutscene has the player allowed to continue to live, but they are stuck obeying the tyrannical whims of the animals.
  • The lose cutscene shows that the player has failed to achieve what was required of them, and has subsequently been killed by the animals.

Use Explanation

The BadEndCutscene class defines the scenes for the ending cutscene. It inherits methods from Cutscene to handle scene transitions and asset management. Each scene is composed of a sprite sheet and atlas file which work in tandem to generate the animation.

Creating Scenes

The setupScenes() method, inherited from Cutscene, defines the scenes for the animated cutscene, loading them in sequence to animatedScenes which stores the atlas information needed for each scene.
Scene transitions are handled by the advanceCutsceneStep() method inherited from Cutscene, deleting old assets and loading new ones as needed for each new scene, based on player input.

⚠️ **GitHub.com Fallback** ⚠️