Canos com temporizador
Parte da seção Projetos do Journey de Godot da Coddy. Lição 21 de 33.
Em seguida vêm os canos. Um cano é uma cena, pipe.tscn: uma metade superior e uma metade inferior, com um espaço entre elas. Em pipe.gd, ele desliza para a esquerda a SPEED pixels por segundo. Depois de passar pela borda esquerda, ele se remove, para que os canos antigos não se acumulem:
position.x -= SPEED * delta
if position.x < -60:
queue_free()A cena tem um Timer chamado PipeTimer que é acionado a cada 1.6 segundos. Em main.gd, conecte o sinal timeout e crie um cano além da borda direita:
func _on_pipe_timer_timeout():
var pipe = PIPE.instantiate()
pipe.position = Vector2(700, 180)
$Pipes.add_child(pipe)O Godot desenha os nós na ordem da árvore. Pipes vem antes de Ground, então o chão cobre a parte inferior de cada cano.
Desafio
Médio- Em
pipe.gd, adicioneconst SPEED = 160. Mova o cano para a esquerda a cada quadro de física e remova-o quandoposition.xfor menor que -60. - Em
main.gd, adicioneconst PIPE = preload("res://pipe.tscn")e conecte$PipeTimer.timeout. A cada timeout, crie um cano na posição(700, 180)no nóPipes.
Experimente você mesmo
extends Node2D
func _ready():
pass
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Projetos
1Projeto: Breakout
Raquete do BreakoutMantenha a raquete na tela4Projeto: Explorador de Masmorras
Percorra a masmorraPegue a chave2Projeto: Jogo de Tiro com Asteroides
Gire a naveAcione o motor3Projeto: Flappy Flyer
Gravidade do FlyerFaça o Flyer bater as asasPratique por conta própria: Playground de Godot