Sistema de inicialización

El sistema de inicialización prepara todos los componentes necesarios antes de que comience el juego. Estas funciones se ejecutan en _ready() y establecen el estado inicial del juego.

codeFunciones de inicialización

func _ready():
  randomize() # Generar números aleatorios diferentes
  _inicializar_pantalla()
  _inicializar_jugador()
  _crear_ui_tiempo()
  _crear_boton_cerrar()
  _crear_ui_game_over()

func _inicializar_pantalla():
  pantalla = get_viewport_rect().size

func _inicializar_jugador():
  jugador = Rect2(
    pantalla.x / 2 - TAM_JUGADOR / 2,
    pantalla.y - TAM_JUGADOR * 1.25,
    TAM_JUGADOR, TAM_JUGADOR
  )

settingsComponentes inicializados

desktop_windows
_inicializar_pantalla()
Obtiene dimensiones de la ventana/viewport
rocket
_inicializar_jugador()
Posiciona la nave del jugador
timer
_crear_ui_tiempo()
Crea etiqueta de cronómetro
close
_crear_boton_cerrar()
Prepara botón para salir
sentiment_very_dissatisfied
_crear_ui_game_over()
Prepara mensaje de fin

lightbulbCaracterísticas clave

shuffle
randomize() asegura que cada partida genere números aleatorios diferentes
center_focus_strong
El jugador se posiciona centrado horizontalmente y cerca del borde inferior
visibility_off
La etiqueta de "GAME OVER" se crea oculta y solo se muestra al perder
add_box
Los elementos de UI se añaden como nodos hijos mediante add_child()
text_format
Las etiquetas de texto configuran su tamaño mediante theme_override_font_sizes