Fim de jogo
Parte da seção Regras do jogo do Journey de Godot da Coddy. Lição 12 de 29.
O HUD tem um rótulo grande GameOver no meio da tela. A propriedade visible está desativada na cena, então ele começa oculto.
Depois que uma vida é perdida, verifique se ainda resta alguma:
if lives == 0:
$HUD/GameOver.visible = trueDois sinais de igual fazem uma comparação. lives == 0 pergunta se o número de vidas é 0. Um sinal de igual define um valor, e Godot não permite isso dentro de um if.
Desafio
FácilMostre a tela de fim de jogo quando a última vida for perdida.
- Em
_on_player_hurt(), abaixo da linha do rótulo, verifique selivesé0. - Se for, mostre
$HUD/GameOver.
Pressione “Jogar” e acerte os espinhos três vezes: a tela de fim de jogo aparece. Depois, pressione “Verificar”.
Experimente você mesmo
extends Node2D
var lives = 3
func _ready():
$HUD/Lives.text = "Lives: %d" % lives
$Player.hurt.connect(_on_player_hurt)
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
Todas as lições de Regras do jogo
Pratique por conta própria: Playground de Godot