- RoomNavigator autoload: smooth camera pan between floors - Floor1 and Floor2 placeholder rooms with elevator buttons - CharacterData Resource with State enum (HEALTHY/SICK/SLEEPING/TIRED) - Character visual state feedback via ColorRect color - Main scene loads saved state on startup - SettingsMenu with music/sfx sliders and game reset - HUD settings button to open SettingsMenu Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
27 lines
831 B
GDScript
27 lines
831 B
GDScript
## HUD — heads-up display with back button, music toggle, and settings access.
|
|
extends CanvasLayer
|
|
|
|
const MUSIC_ON_SYMBOL: String = "♪"
|
|
const MUSIC_OFF_SYMBOL: String = "✕"
|
|
|
|
var _music_enabled: bool = true
|
|
@onready var _settings_menu: SettingsMenu = get_node_or_null("/root/Main/UI/SettingsMenu") as SettingsMenu
|
|
|
|
|
|
func _on_back_button_pressed() -> void:
|
|
get_tree().quit()
|
|
|
|
|
|
func _on_music_toggle_pressed() -> void:
|
|
_music_enabled = not _music_enabled
|
|
var volume: float = AudioManager.DEFAULT_MUSIC_VOLUME if _music_enabled else 0.0
|
|
AudioManager.set_music_volume(volume)
|
|
var btn: Button = get_node_or_null("MusicToggle") as Button
|
|
if btn != null:
|
|
btn.text = MUSIC_ON_SYMBOL if _music_enabled else MUSIC_OFF_SYMBOL
|
|
|
|
|
|
func _on_settings_button_pressed() -> void:
|
|
if _settings_menu != null:
|
|
_settings_menu.show_menu()
|