extends Node2D @export_file("*.tscn") var wrong_building: String @export_file("*.tscn") var next_level: String @export var base_mode: GUIDEMappingContext @onready var interact: AudioStreamPlayer2D = $Player/Interact var is_interjection_next = false var current_info = 0 @onready var vo_interjection: AudioStreamPlayer2D = $RightDoor/VOInterjection @onready var vo_player_1: AudioStreamPlayer2D = $RightDoor/VOPlayer1 @onready var vo_player_2: AudioStreamPlayer2D = $RightDoor/VOPlayer2 @onready var vo_player_3: AudioStreamPlayer2D = $RightDoor/VOPlayer3 @onready var vo_player_4: AudioStreamPlayer2D = $RightDoor/VOPlayer4 @onready var vo_player_5: AudioStreamPlayer2D = $RightDoor/VOPlayer5 @onready var vo_player_6: AudioStreamPlayer2D = $RightDoor/VOPlayer6 @onready var vo_player_7: AudioStreamPlayer2D = $RightDoor/VOPlayer7 @onready var vo_player_8: AudioStreamPlayer2D = $RightDoor/VOPlayer8 @onready var vo_player_9: AudioStreamPlayer2D = $RightDoor/VOPlayer9 @onready var vo_player_10: AudioStreamPlayer2D = $RightDoor/VOPlayer10 @onready var vo_player_11: AudioStreamPlayer2D = $RightDoor/VOPlayer11 @onready var vo_player_12: AudioStreamPlayer2D = $RightDoor/VOPlayer12 @onready var vo_player_13: AudioStreamPlayer2D = $RightDoor/VOPlayer13 var vo_players: Array[AudioStreamPlayer2D] = [] # Called when the node enters the scene tree for the first time. func _ready() -> void: GUIDE.enable_mapping_context(base_mode) vo_players.append(vo_player_1) vo_players.append(vo_player_2) vo_players.append(vo_player_3) vo_players.append(vo_player_4) vo_players.append(vo_player_5) vo_players.append(vo_player_6) vo_players.append(vo_player_7) vo_players.append(vo_player_8) vo_players.append(vo_player_9) vo_players.append(vo_player_10) vo_players.append(vo_player_11) vo_players.append(vo_player_12) vo_players.append(vo_player_13) # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta: float) -> void: pass func _on_door_event_triggered(event_id: String) -> void: interact.play() func _on_door_event_confirmed(event_id: String) -> void: if event_id == "right": SceneLoader.load_scene(next_level) return SceneLoader.load_scene(wrong_building) func _on_timer_between_vo_timeout() -> void: if is_interjection_next: print("interjection") vo_interjection.play() is_interjection_next = not is_interjection_next return if current_info >= len(vo_players): return vo_players[current_info].play() current_info += 1 is_interjection_next = not is_interjection_next