Esquivar: fin del juego
Parte de la sección Reglas del juego del Journey de Godot de Coddy. Lección 28 de 29.
Cuando te quedas sin vidas, el juego continúa. La puntuación sigue aumentando y las vidas bajan de cero.
Termina el juego como hiciste en la sala de pinchos. Muestra la etiqueta oculta GameOver y pausa el juego. La pausa detiene ambos temporizadores, así que la puntuación se queda en los segundos que sobreviviste. Los bloques se detienen donde están.
if lives == 0:
$HUD/GameOver.visible = true
get_tree().paused = trueDesafío
IntermedioTermina la partida cuando se agoten las vidas.
- En
_on_player_hurt(), después de la línea de etiqueta, comprueba siliveses 0. - Si es así, muestra
$HUD/GameOvery pausa la partida.
Pulsa «Jugar» y recibe tres golpes: aparece la pantalla de fin de la partida y los bloques se detienen. Después, pulsa «Comprobar».
Pruébalo tú mismo
extends Node2D
var block_scene = preload("res://block.tscn")
var score = 0
var lives = 3
func _ready():
$HUD/Score.text = "Score: %d" % score
$HUD/Lives.text = "Lives: %d" % lives
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
$ScoreTimer.timeout.connect(_on_score_timer_timeout)
$Player.hurt.connect(_on_player_hurt)
func _on_spawn_timer_timeout():
var block = block_scene.instantiate()
block.position = Vector2(randf_range(40, 600), -30)
add_child(block)
func _on_score_timer_timeout():
score += 1
$HUD/Score.text = "Score: %d" % score
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % lives
Todas las lecciones de Reglas del juego
6Proyecto: Esquivar
Esquivar: bloques que caenEsquivar: puntuaciónPractica por tu cuenta: Playground de Godot