Una función de generación
Parte de la sección Reglas del juego del Journey de Godot de Coddy. Lección 18 de 29.
Crear un nodo mientras se ejecuta el juego se llama generar. Pon las líneas de generación en tu propia función, con la posición x como parámetro:
func spawn(x):
var block = block_scene.instantiate()
block.position = Vector2(x, -30)
add_child(block)Cada llamada crea un bloque nuevo. Un nodo solo puede estar una vez en el juego. Llamar a add_child() dos veces con el mismo bloque es un error. Por eso, cada bloque necesita su propio instantiate().
Desafío
FácilSuelta tres bloques con una función.
- Escribe
func spawn(x)para crear un bloque enVector2(x, -30)y añadirlo. - En
_ready(), llámala tres veces:spawn(160),spawn(320)yspawn(480).
Pulsa «Jugar»: caerán tres bloques uno al lado del otro. Después, pulsa «Comprobar».
Pruébalo tú mismo
extends Node2D
var block_scene = preload("res://block.tscn")
func _ready():
var block = block_scene.instantiate()
block.position = Vector2(160, -30)
add_child(block)
Todas las lecciones de Reglas del juego
1Temporizadores
El nodo TimerIniciar un temporizadorTiempo de esperaUna sola vezEsperar a un temporizador4Generación
Una escena empaquetadaColoca el nuevo nodoUna función de generaciónGenerar con un temporizadorPosiciones aleatoriasCarriles aleatoriosPractica por tu cuenta: Playground de Godot