Skip to content

Master Manager

chris edited this page Jun 12, 2026 · 19 revisions

System Summary

The Master Manager handles transitioning between the different states of the project, like the edit and play states.


Connected Systems

List of connecting/parent/subsystems.

Connecting Systems: This system only consists of subsystems.

Subsystems:


Related Controls

List of related controls.

Key(s):

  • Play Button: Shows the play scene when clicked
  • Pause Button: Shows the edit scene when clicked
  • Reset Button: Resets the play scene when clicked

Bugs

List of known bugs. Be descriptive but keep it brief!

  • The transition to the play scene does not fully close the edit scene, so tiles from there are invisible but can be interacted with. This will likely be fixed when carrying over tiles is implemented.

Feature List / Breakdown of Features

List of features and descriptions within system.

Feature Name:

  • State Switch: Switches the state from editing/playing. This sets all flags and scenes as the user may expect when switching.
  • Saving and Loading Tilemaps: Saves and loads tilemaps from their resource in the user folder.

Important Variables

Name the most important variables, their type, and what their purpose is

  • editorManager: Node2D = An exported reference to the editor manager.
  • toolManager : Node2D = An exported reference to the tool manager.
  • gameManager: Node2D = An exported reference to the game manager.
  • audioManager: Node = An exported reference to the audio manager.
  • editorManagerCanvas: CanvasLayer = An exported reference to the UI for the editor manager.
  • gameManagerCanvas: CanvasLayer = An exported reference to the UI for the game manager.
  • mainMenuControl: Control = An exported reference to the main menu control node.

Important Functions

Name of the most important functions, their parameters, and what they do.

  • func level_complete() -> void: Puts the user back into the edit scene, and sets the level as validated.

  • func level_setup( levelName: String, newSize: Vector2i ) -> void: creates new level -> grid size area, name, create gridlines, adjust camera bounds, enter edit state ( calls edit() ).

  • func edit() -> void: Puts the user into the edit state. Sets the states of many nodes and components as appropriate for the edit state.

  • func play() -> void: Puts the user into the play state. Sets the states of many nodes and components as appropriate for the play state.

  • func main_menu() -> void: Puts the user into the menu state. Sets the states of many nodes and components as appropriate for the menu state.

  • func save_tilemap() -> void: Saves the tile map as a scene file into the user folder.

  • func load_tilemap() -> void: Loads the tile map located in the user folder.


Future Work / Risks

List and description of upcoming work/risks.

Future Work:

  1. Implement saving and loading of maps

Risks:

  • None

Miscellaneous Notes

A place for miscellaneous notes pertaining to this system.

  • None

Clone this wiki locally