extends VBoxContainer var levels_by_index: Array[StringName] = [] func _ready() -> void: %RoundTimeBox.set_value_no_signal(LobbySettings.round_time) %BombTimeBox.set_value_no_signal(LobbySettings.bomb_time) %BuyTimeBox.set_value_no_signal(LobbySettings.buy_time) %TeamSwitchBox.set_value_no_signal(LobbySettings.half_rounds) %RoundBox.set_value_no_signal(LobbySettings.win_score) %AllowMultipleAbilityButton.set_pressed_no_signal(LobbySettings.allow_multiple_abilities) %AllowTeamSwitch.set_pressed_no_signal(LobbySettings.allow_team_switch) %InfiniteMoney.set_pressed_no_signal(LobbySettings.infinite_money) var popup: PopupMenu = %MapsButton.get_popup() popup.index_pressed.connect(on_maps_index_pressed) for level in Registry.maps.keys(): levels_by_index.append(level) popup.add_item(level) func _on_round_time_box_value_changed(value: float) -> void: LobbySettings.round_time = value func _on_bomb_time_box_value_changed(value: float) -> void: LobbySettings.bomb_time = value func _on_buy_time_box_value_changed(value: float) -> void: LobbySettings.buy_time = value func _on_round_box_value_changed(value: float) -> void: LobbySettings.win_score = int(value) %TeamSwitchBox.value = value-1 func _on_team_switch_box_value_changed(value: float) -> void: LobbySettings.half_rounds = int(value) func _on_allow_multiple_ability_button_toggled(toggled_on: bool) -> void: LobbySettings.allow_multiple_abilities = toggled_on func _on_shuffle_pressed() -> void: Lobby.shuffle_teams() func _on_allow_team_switch_toggled(toggled_on: bool) -> void: LobbySettings.allow_team_switch = toggled_on func on_maps_index_pressed(index: int): LobbySettings.selected_map = levels_by_index[index] func _on_infinite_money_toggled(toggled_on: bool) -> void: LobbySettings.infinite_money = toggled_on func _on_start_button_pressed() -> void: Lobby.start_game()