Marque pontos ao passar por um cano
Parte da seção Projetos do Journey de Godot da Coddy. Lição 24 de 33.
Cada cano pelo qual você passa vale um ponto. O cano tem um filho Area2D chamado Gap, uma faixa estreita atrás da abertura. O personagem voador só toca nela depois de passar pelo cano, então é nesse momento que você marca pontos.
Em pipe.gd, conecte o sinal do filho por meio de $Gap e emita scored:
$Gap.body_entered.connect(_on_gap_body_entered)
func _on_gap_body_entered(body):
scored.emit()Em main.gd, conecte o sinal scored de cada novo cano. Some um a score e mostre o valor em $HUD/Score. str(score) transforma o número em texto. Mostre 0 no início.
Desafio
Médio- Em
pipe.gd, adicionesignal scored. Conecte$Gap.body_enterede emitascoredquando um corpo entrar na abertura. - Em
main.gd, adicionevar score = 0e exiba0em$HUD/Scoreno início. - Conecte o
scoredde cada cano a uma função que adiciona um e exibe a nova pontuação.
Experimente você mesmo
extends Area2D
signal hit
const SPEED = 160
func _ready():
body_entered.connect(_on_body_entered)
func _physics_process(delta):
position.x -= SPEED * delta
if position.x < -60:
queue_free()
func _on_body_entered(body):
hit.emit()
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