extends TabContainer var pass_to_actor func _ready() -> void: for child in get_children(): if "leave_stage" in child: child.leave_stage.connect(_on_stage_left) tab_changed.connect(_on_tab_changed) pass_to_actor = get_child(current_tab) func _on_tab_changed(tab_id: int): var child_has_stage:bool = false for child in get_children(): if "has_stage" in child: if child.has_stage: child_has_stage = true if child_has_stage: State.transition_stage_to(get_child(tab_id)) pass_to_actor = get_child(tab_id) func _on_stage_left(): await get_tree().process_frame if not pass_to_actor.has_stage: get_parent().vanish()