Menu
CoddyTech

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 = true
challenge icon

Desafío

Intermedio

Termina la partida cuando se agoten las vidas.

  1. En _on_player_hurt(), después de la línea de etiqueta, comprueba si lives es 0.
  2. Si es así, muestra $HUD/GameOver y 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

Practica por tu cuenta: Playground de Godot