frame-of-mind/src/base-environments/youth_room/youth_room_scene_player.gd

43 lines
1.3 KiB
GDScript3
Raw Normal View History

extends AnimationPlayer
# This scene player now responds to scene signals to handle music and animations.
# The actual story playback is managed by CollectableUi directly.
func _ready() -> void:
Scenes.scene_starting.connect(_on_scene_starting)
Scenes.scene_finished.connect(_on_scene_finished)
func start_soundtrack():
$Moving.play(70)
$Childhood.play(70)
$VoiceTraining.play(70)
func _on_scene_starting(scene_id: Scenes.id, _repeat: bool) -> void:
# Handle scene-specific music
# Note: Chest animation is now handled by YouthRoom.prepare_scene_start()
match scene_id:
Scenes.id.YOUTH_CHILDHOOD:
play("childhood_music")
Scenes.id.YOUTH_VOICE_TRAINING:
play("voice_music")
Scenes.id.YOUTH_JUI_JUTSU:
play("jui_jutsu_music")
Scenes.id.YOUTH_DRAVEN:
play("draven")
func _on_scene_finished(scene_id: Scenes.id, _repeat: bool) -> void:
print_debug("YouthRoomScenePlayer._on_scene_finished(%s)" % Scenes.id.keys()[scene_id])
match scene_id:
Scenes.id.YOUTH_CHILDHOOD:
play_backwards("childhood_music")
Scenes.id.YOUTH_VOICE_TRAINING:
play_backwards("voice_music")
queue("RESET")
func play(anim_name: StringName = "", a: float = -1, b: float = 1, c: bool = false) -> void:
print_debug("YouthRoomScenePlayer.play(%s)" % anim_name)
super.play(anim_name, a, b, c)