From bfe974927cfbe882285aee4ceb077affc7ab6b14 Mon Sep 17 00:00:00 2001 From: Tiger Jove Date: Mon, 19 Jan 2026 14:46:46 +0100 Subject: [PATCH] refactor: scene IDs now closer to StoryPlayable names. --- .../transition/misc/subway_map.gd | 6 +++--- .../transition/subway_sequence.gd | 16 ++++++++-------- .../volunteer_room/volunteer_scene_players.gd | 14 +++++--------- src/dev-util/i18n.gd | 7 ++++--- src/dev-util/music_mix_helper.gd | 7 ++++--- src/dev-util/savegame.gd | 5 +++-- src/logic-scenes/collectable/collectable_ui.gd | 9 ++++++--- src/singletons/scene_reference.gd | 18 +++++------------- 8 files changed, 38 insertions(+), 44 deletions(-) diff --git a/src/base-environments/transition/misc/subway_map.gd b/src/base-environments/transition/misc/subway_map.gd index 8f53962..56a9427 100644 --- a/src/base-environments/transition/misc/subway_map.gd +++ b/src/base-environments/transition/misc/subway_map.gd @@ -10,13 +10,13 @@ extends Node2D %AnimationPlayer.play("hirschfeld") Scenes.id.ADULT_VOLUNTARY: %AnimationPlayer.play("parity") - Scenes.id.ADULT_CHRISTMAS: + Scenes.id.ADULT_AUTISM: %AnimationPlayer.play("saint-exupery") Scenes.id.ADULT_EATING: %AnimationPlayer.play("refectory") - Scenes.id.ADULT_UNI: + Scenes.id.ADULT_SELF_ADVOCACY: %AnimationPlayer.play("university") - Scenes.id.ADULT_THERAPY: + Scenes.id.ADULT_THERAPY_VOLUNTEER: %AnimationPlayer.play("rosenthal") Scenes.id.ADULT_BURNOUT: %AnimationPlayer.play() diff --git a/src/base-environments/transition/subway_sequence.gd b/src/base-environments/transition/subway_sequence.gd index c05c2c9..bc70eea 100644 --- a/src/base-environments/transition/subway_sequence.gd +++ b/src/base-environments/transition/subway_sequence.gd @@ -78,8 +78,8 @@ func on_left_train_enter(_body) -> void: %SubwayMap.current_station = Scenes.id.ADULT_VOLUNTARY %RightLabel.text = "U3 Gesundquell \n via Rosenthal Hospital" await get_tree().create_timer(5.0).timeout - Scenes.enabled_sequences += 1 << Scenes.id.ADULT_CHRISTMAS - %SubwayMap.current_station = Scenes.id.ADULT_CHRISTMAS + Scenes.enabled_sequences += 1 << Scenes.id.ADULT_AUTISM + %SubwayMap.current_station = Scenes.id.ADULT_AUTISM await get_tree().create_timer(5.0).timeout %Train2.get_child(0).door_open = true @@ -88,8 +88,8 @@ func on_left_train_enter(_body) -> void: %Train2.get_child(0).door_open = false on_second_transition() await get_tree().create_timer(5.0).timeout - Scenes.enabled_sequences += 1 << Scenes.id.ADULT_UNI - %SubwayMap.current_station = Scenes.id.ADULT_UNI + Scenes.enabled_sequences += 1 << Scenes.id.ADULT_SELF_ADVOCACY + %SubwayMap.current_station = Scenes.id.ADULT_SELF_ADVOCACY %RightLabel.text = "do not board" %LeftLabel.text = "do not board" on_final = true @@ -132,8 +132,8 @@ func on_right_train_enter(_body) -> void: %SubwayMap.current_station = Scenes.id.ADULT_EATING %LeftLabel.text = "U8 Gesundquell \n via Rosenthal Hospital" await get_tree().create_timer(5.0).timeout - Scenes.enabled_sequences += 1 << Scenes.id.ADULT_UNI - %SubwayMap.current_station = Scenes.id.ADULT_UNI + Scenes.enabled_sequences += 1 << Scenes.id.ADULT_SELF_ADVOCACY + %SubwayMap.current_station = Scenes.id.ADULT_SELF_ADVOCACY await get_tree().create_timer(5.0).timeout %Train.get_child(0).door_open = true @@ -158,8 +158,8 @@ func on_right_train_enter(_body) -> void: on_second_transition() if on_direct_path: %ShedulePlayer_L.play("train_leaving") await get_tree().create_timer(5.0).timeout - Scenes.enabled_sequences += 1 << Scenes.id.ADULT_CHRISTMAS - %SubwayMap.current_station = Scenes.id.ADULT_CHRISTMAS + Scenes.enabled_sequences += 1 << Scenes.id.ADULT_AUTISM + %SubwayMap.current_station = Scenes.id.ADULT_AUTISM await get_tree().create_timer(2.0).timeout %Train2.get_child(0).door_open = false %RightLabel.text = "do not board" diff --git a/src/base-environments/volunteer_room/volunteer_scene_players.gd b/src/base-environments/volunteer_room/volunteer_scene_players.gd index 21a9ac1..d7cef87 100644 --- a/src/base-environments/volunteer_room/volunteer_scene_players.gd +++ b/src/base-environments/volunteer_room/volunteer_scene_players.gd @@ -1,7 +1,6 @@ extends AnimationPlayer -var has_stage -var is_repeating = false +var is_repeating := false func _ready() -> void: Scenes.scene_finished.connect(scene_finished) @@ -13,14 +12,11 @@ func play_scene(id: int, repeat = false): match id: Scenes.id.ADULT_DND: $trans.play() Scenes.id.ADULT_VOLUNTARY: $trauma.play() - Scenes.id.ADULT_CHRISTMAS: $autism.play() + Scenes.id.ADULT_AUTISM: $autism.play() Scenes.id.ADULT_EATING: $university_eating.play() - Scenes.id.ADULT_UNI: $university_advocacy.play() - Scenes.id.ADULT_THERAPY: - if Scenes.is_sequence_unlocked(Scenes.id.ADULT_UNI): - $therapy_uni.play() - else: - $therapy_volunteer.play() + Scenes.id.ADULT_SELF_ADVOCACY: $university_advocacy.play() + Scenes.id.ADULT_THERAPY_UNI: $therapy_uni.play() + Scenes.id.ADULT_THERAPY_UNI: $therapy_volunteer.play() Scenes.id.ADULT_BURNOUT: $burnout.play() func _on_ini_room(): diff --git a/src/dev-util/i18n.gd b/src/dev-util/i18n.gd index 83ff62e..555a552 100644 --- a/src/dev-util/i18n.gd +++ b/src/dev-util/i18n.gd @@ -23,9 +23,10 @@ const _story_captions : Dictionary[Scenes.id, StringName] = { Scenes.id.TRANSITION: "Move on", Scenes.id.ADULT_DND: "colorful Dice", Scenes.id.ADULT_VOLUNTARY: "Gemstone Art", - Scenes.id.ADULT_CHRISTMAS: "Chat Messages", + Scenes.id.ADULT_AUTISM: "Chat Messages", Scenes.id.ADULT_EATING: "Dishes", - Scenes.id.ADULT_UNI: "Science Poster", - Scenes.id.ADULT_THERAPY: "Doctors Note", + Scenes.id.ADULT_SELF_ADVOCACY: "Science Poster", + Scenes.id.ADULT_THERAPY_VOLUNTEER: "Doctors Note", + Scenes.id.ADULT_THERAPY_UNI: "Doctors Note", Scenes.id.ADULT_BURNOUT: "Paperwork", } diff --git a/src/dev-util/music_mix_helper.gd b/src/dev-util/music_mix_helper.gd index 037d2df..31d9e35 100644 --- a/src/dev-util/music_mix_helper.gd +++ b/src/dev-util/music_mix_helper.gd @@ -21,10 +21,11 @@ func get_playback_id_from_scene(scene: int) -> int: match scene: Scenes.id.ADULT_DND: return 1 Scenes.id.ADULT_VOLUNTARY: return 2 - Scenes.id.ADULT_CHRISTMAS: return 3 + Scenes.id.ADULT_AUTISM: return 3 Scenes.id.ADULT_EATING: return 4 - Scenes.id.ADULT_UNI: return 5 - Scenes.id.ADULT_THERAPY: return 6 + Scenes.id.ADULT_SELF_ADVOCACY: return 5 + Scenes.id.ADULT_THERAPY_UNI: return 6 + Scenes.id.ADULT_THERAPY_VOLUNTEER: return 6 Scenes.id.ADULT_BURNOUT: return 7 _: return 0 diff --git a/src/dev-util/savegame.gd b/src/dev-util/savegame.gd index a7ad307..a7c252d 100644 --- a/src/dev-util/savegame.gd +++ b/src/dev-util/savegame.gd @@ -15,12 +15,14 @@ class_name SaveGame extends Resource @export var board_positions: Dictionary[StringName, Vector2] = {} # Position of all cards and stickies @export var board_attachments: Dictionary[StringName, StringName] = {} # Sticky name → Card name (if attached) +## Scenes / Items / IDs that were seen +@export var seen : Array[StringName] = [] + @export var is_childhood_board_complete: bool = false @export var player_position: Vector3 = Vector3.ZERO @export var player_yaw: float = 0.0 @export var player_pitch: float = 0.0 @export var last_saved: int = 0 -@export var is_demo: bool = false # === Computed Properties === var is_valid: bool: @@ -65,7 +67,6 @@ static func create_new() -> SaveGame: var save := SaveGame.new() save.file_name = generate_save_path() save.unique_save_name = save.file_name.get_file().get_basename() - save.is_demo = OS.has_feature("Demo") save.last_saved = int(Time.get_unix_time_from_system()) # Ensure save directory exists diff --git a/src/logic-scenes/collectable/collectable_ui.gd b/src/logic-scenes/collectable/collectable_ui.gd index 0942a62..496bce8 100644 --- a/src/logic-scenes/collectable/collectable_ui.gd +++ b/src/logic-scenes/collectable/collectable_ui.gd @@ -45,16 +45,19 @@ var interaction_ui: Control Scenes.id.ADULT_VOLUNTARY: if title_override == "": title_label.text = TranslationServer.translate("Gemstone Art") if subtitle_override == "": cn_label.text = "" - Scenes.id.ADULT_CHRISTMAS: + Scenes.id.ADULT_AUTISM: if title_override == "": title_label.text = TranslationServer.translate("Chat Messages") if subtitle_override == "": cn_label.text = "" Scenes.id.ADULT_EATING: if title_override == "": title_label.text = TranslationServer.translate("Dishes") if subtitle_override == "": cn_label.text = "" - Scenes.id.ADULT_UNI: + Scenes.id.ADULT_SELF_ADVOCACY: if title_override == "": title_label.text = TranslationServer.translate("Science Poster") if subtitle_override == "": cn_label.text = "" - Scenes.id.ADULT_THERAPY: + Scenes.id.ADULT_THERAPY_UNI: + if title_override == "": title_label.text = TranslationServer.translate("Doctors Note") + if subtitle_override == "": cn_label.text = "" + Scenes.id.ADULT_THERAPY_VOLUNTEER: if title_override == "": title_label.text = TranslationServer.translate("Doctors Note") if subtitle_override == "": cn_label.text = "" Scenes.id.ADULT_BURNOUT: diff --git a/src/singletons/scene_reference.gd b/src/singletons/scene_reference.gd index 716ed81..84eff5f 100644 --- a/src/singletons/scene_reference.gd +++ b/src/singletons/scene_reference.gd @@ -21,12 +21,12 @@ enum id { TRANSITION, ADULT_DND, ADULT_VOLUNTARY, - ADULT_CHRISTMAS, + ADULT_AUTISM, ADULT_EATING, - ADULT_UNI, - ADULT_THERAPY, + ADULT_SELF_ADVOCACY, + ADULT_THERAPY_VOLUNTEER, ADULT_BURNOUT, - ADULT_UNKNOWN + ADULT_THERAPY_UNI } signal scene_starting(scene_id: id, is_repeating: bool) @@ -66,15 +66,7 @@ func end_sequence(scene_id: id, repeat: bool) -> void: # Re-enable player movement after cutscene player_enable.emit(true) -# Legacy support - no longer needed -func continue_sequence(_former_actor: Object) -> void: - push_warning("continue_sequence is deprecated and does nothing.") - -# Legacy support - no longer needed -func sign_up_for_sequence(_callable: Callable, _sequence_id: id, _index: int = 0) -> void: - push_warning("sign_up_for_sequence is deprecated. CollectableUi now manages playback directly.") - - +# TODO: put this in savegame into a "seen" array. func is_sequence_repeating(index: int) -> bool: return completed_sequences & (1 << index) > 0