Menu
CoddyTech

Uma Função de Criação

Parte da seção Regras do jogo do Journey de Godot da Coddy. Lição 18 de 29.

Criar um nó enquanto o jogo está em execução é chamado de instanciação. Coloque as linhas de criação em sua própria função, com a posição x como parâmetro:

func spawn(x):
	var block = block_scene.instantiate()
	block.position = Vector2(x, -30)
	add_child(block)

Cada chamada cria um bloco novo. Um nó só pode estar no jogo uma vez. Chamar add_child() duas vezes com o mesmo bloco é um erro. Portanto, cada bloco precisa de sua própria chamada a instantiate().

challenge icon

Desafio

Fácil

Solte três blocos com uma função.

  1. Escreva func spawn(x) que cria um bloco em Vector2(x, -30) e o adiciona.
  2. Em _ready(), chame-a três vezes: spawn(160), spawn(320) e spawn(480).

Pressione “Jogar”: três blocos caem lado a lado. Depois, “Verificar”.

Experimente você mesmo

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 as lições de Regras do jogo

Pratique por conta própria: Playground de Godot