extends "res://maps/map.gd" onready var sg_health: HSlider = $"%SGHealth" onready var sg_energy: HSlider = $"%SGEnergy" onready var fami_health: HSlider = $"%FamiHealth" onready var sg2083: KinematicBody2D = $"2083" onready var famira: Node2D = $Famira func _ready() -> void: sg_energy.max_value = sg2083.max_energy sg2083.state = sg2083.State.INACTIVE famira.animation_player.play("grow", -1.0, 0.0) func _on_2083_health_changed(amount) -> void: sg_health.value = amount func _on_Famira_health_changed(amount) -> void: fami_health.value = -amount func _on_cutscene_finished() -> void: $GUI.visible = true sg2083.visible = true famira.visible = true famira.animation_player.play("grow") $AnimationPlayer.play("drop-stg") yield(get_tree().create_timer(0.5), "timeout") $FamiCutscene/FamiHuman.visible = false func fade() -> void: Fade.fade_out(0.4) yield(Fade, "fade_finished") Fade.fade_in(0.4) yield(Fade, "fade_finished") sg2083.anims.play("UnDuck") sg2083.state = sg2083.State.STAND famira.state_chart.send_event("transformed") func start_fight() -> void: famira.animation_player.state_chart.send_event("transformed") func _on_2083_energy_changed(amount) -> void: sg_energy.value = amount func _on_Famira_died() -> void: sg2083.state = sg2083.State.INACTIVE var tween = create_tween() tween.set_trans(Tween.TRANS_CUBIC) tween.tween_property($"%Camera", "global_position:x", famira.global_position.x - 128, 0.5) tween.tween_interval(10.0) tween.tween_callback(self, "_on_death_cooldown") func _on_death_cooldown() -> void: if Game.marathon_mode: Game.current_level += 1 if Game.current_level > LevelData.marathon_end: Fade.fade_out(Options.transition_speed_secs) yield(Fade, "fade_finished") SceneManager.change_scene(load("res://menus/marathon_results.tscn").instance()) else: Game.change_map(LevelData.levels[Game.current_level].scene) else: Game.change_map(load("res://menus/level_select_scholar.tscn"))