GD Script: Empezando

Jul 7, 2024

GD Script: Empezando

Introducción

  • GD Script es un lenguaje de programación orientado a objetos, imperativo y gradualmente tipado, similar a Python.
  • Específicamente diseñado para Godot.
  • Este tutorial cubre conceptos desde variables y condicionales hasta herencia y señales.
  • El video está dividido en secciones claramente nombradas que pueden servir como manual de referencia.

Creación de un Escenario de Prueba

  • Creación de un nodo y renombrarlo a “Main”.
  • Guardar como escena y añadir un script.
  • La función ready() se usa como punto de inicio del juego.
  • Uso de print() para mostrar mensajes en la consola.
  • Indentación y sensibilidad a mayúsculas son importantes.

Modificación de Nodos a Través del Script

  • Añadir un nodo “Label” y modificar sus propiedades como text y modulate.
  • Arrastrar y soltar nodos en la función ready() para crear referencias.
  • Cambiar colores usando modulate.

Manejo de Entradas

  • Crear acciones de entrada en las configuraciones del proyecto.
  • Función input(event) para manejar entradas.
  • Uso de event.is_action_pressed() y event.is_action_released() para detectar teclas presionadas y soltadas.

Variables y Operaciones

  • Definición de variables con var e inicialización de valores.
  • Operaciones aritméticas: +=, -=, *=, /=, etc.
  • Uso de estructuras de control if y else para manejar la lógica del juego.

Comentarios en el Código

  • Uso de # para agregar comentarios y explicar partes del código.
  • También se pueden usar para deshabilitar temporalmente partes del código.

Variables Avanzadas

  • Ámbito (scope) de las variables: global vs. local.
  • Tipos de datos: bool, int, float, string y casting entre tipos.
  • Tipado estático opcional para mayor seguridad.
  • Uso de export para exponer variables en el inspector.
  • Constantes: Uso de const para definir valores inmutables.

Funciones

  • Definición: Uso de func para definir funciones reutilizables.
  • Parámetros y Retornos: Las funciones pueden recibir argumentos y devolver valores usando return.
  • Tipado estático también es aplicable a parámetros y valores de retorno.

Números Aleatorios

  • Funciones como randf() y rand_range() para obtener números aleatorios.
  • Uso para probabilidades y asigne diferentes valores aleatorios.

Arreglos y Bucles

  • Arreglos: Creación y manejo de listas de elementos con índices.
  • Bucles For y While: Repetición de código usando for y while.
  • Uso de break y continue en bucles para control de flujo.

Diccionarios

  • Concepto de pares clave-valor para almacenar datos relacionales.
  • Acceso y modificación de valores usando claves.
  • Anidamiento de diccionarios y arreglos dentro de diccionarios.

Enums y Match Statements

  • Uso de enums para definir estados o etiquetas en el juego.
  • Match Statements para ejecutar diferentes bloques de código basado en valores de enums.

Modificación Avanzada de Nodos

  • onready para asegurar que un nodo exista antes de referenciarlo.
  • Uso de export para referenciar nodos desde el inspector.
  • Comprobación de tipos usando is palabra clave.

Señales

  • Señales: Mensajes que los nodos pueden enviar y escuchar para eventos.
  • Conexión y desconexión de señales desde la interfaz y a través del código.
  • Pasar parámetros a través de señales.

Getters y Setters

  • Getters y Setters: Control de cómo se accede y modifica una variable.
  • Clamping valores y emisión de señales en setters.

Clases e Instancias

  • Clases: Plantillas para crear objetos con propiedades y métodos comunes.
  • Instancias: Versiones específicas de una clase con valores únicos.
  • Uso de extends para heredar funcionalidades de otras clases.

Inner Classes y Composición

  • Clases internas para agrupar variables y funciones relacionadas dentro de otra clase.
  • Composición: Preferencia a veces sobre herencia para estructura de código.

Best Practices

  • Call Down, Signal Up: Práctica recomendada para comunicación entre nodos.
  • Estilo de Código: Seguir guías de estilo para mantener el código legible y mantenible.

Este es un resumen exhaustivo del tutorial de GD Script cubierto en el video. Asegúrate de revisar cada sección y practicar los ejemplos para una comprensión más profunda.