Skip to content

Settings Menu

NebSeniah edited this page Jul 13, 2026 · 1 revision

System Summary

The settings menu is what controls both global and level-wide settings


Connected Systems

AudioManager

Connecting Systems:

Subsystems:

  • None

Related Controls

List of related controls.

Key(s): None


Bugs

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

  • None

Feature List / Breakdown of Features

List of features and descriptions within system.

Feature Name: Audio Settings

  • Master, Music, and SFX volume can be changed here
  • Small sounds play when adjusting sliders to indicate what the audio level will sound like Level Settings
  • Camera controls during play such as follow speed, deadzone, and zoom can be adjusted and apply in level

Important Variables

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

  • musicPreviewing: Bool = Determines if the music is currently being previewed when the music volume slider is moved.
  • settingsPath: string = The path to the settings file, always "user://settings.cfg".

Important Functions

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

  • func save_settings() -> void: Saves current settings to the file at settingsPath.
  • func loads_settings() -> void: Loads current settings to the file at settingsPath if the file exists.
  • func _on_drag_start/end_music() -> void: Starts/ends the current music preview, uses the level music.
  • func _on_drag() -> void: Applies changes to settings any time one of the sliders is changed, also saves settings.

Future Work / Risks

List and description of upcoming work/risks.

Future Work:

  1. Tile settings
  2. Other level settings

Risks:

  • The menu isn't split between global and local, which might be confusing for users.
  • Volume settings cannot be adjusted in the menu.

Miscellaneous Notes

A place for miscellaneous notes pertaining to this system.

  • None

Clone this wiki locally