AppResidencia/empareja-las-sombras/scripts/configuration.gd

52 lines
1.5 KiB
GDScript

extends Control
@onready var levels_menu = $VBoxContainer/levels_menu
@onready var residents_menu = $VBoxContainer/residents_menu
var level = -1
var id_player = -1
func _ready():
RenderingServer.set_default_clear_color(Color.SKY_BLUE)
levels_menu.get_popup().connect("id_pressed", self._on_level_selected)
await get_tree().process_frame #Esperar a que se cree HTTPRequest en GameData
var residents = await GameData.get_residents_loaded()
if residents_menu.item_count < residents.size():
for resident in residents:
var full_name = "%s %s" % [resident.nombre, resident.apellido]
var id = int(resident.id)
residents_menu.get_popup().add_item(full_name, id)
residents_menu.get_popup().connect("id_pressed", self._on_player_selected)
func _on_level_selected(id):
match id:
0:
level = 1
1:
level = 2
2:
level = 3
func _on_player_selected(id):
id_player = id
func _on_button_pressed() -> void:
var bg_color = $VBoxContainer/bg_color_picker.color
var tiles_lines_color = $VBoxContainer/tiles_lines_color_picker.color
var table_lines_color = $VBoxContainer/table_lines_color_picker.color
var game_scene = preload("res://scenes/Game.tscn").instantiate()
game_scene.bg_color = bg_color
game_scene.tiles_lines_color = tiles_lines_color
game_scene.table_lines_color = table_lines_color
game_scene.difficulty = level
if id_player != -1:
GameData.start_game(id_player, level)
else:
print("Selecciona un jugador") #Cambiar a popup
ScreenManager.change_scene(game_scene, self)