Esquivar: vidas
Parte de la sección Reglas del juego del Journey de Godot de Coddy. Lección 27 de 29.
Ahora los bloques se rompen al caer sobre el jugador, pero no pasa nada. Dale tres vidas al jugador.
Cuando un bloque cae sobre el jugador, emite la señal hurt del jugador y se rompe. El jugador parpadea en rojo. Conecta $Player.hurt y quítale una vida cada vez:
func _on_player_hurt():
lives -= 1
$HUD/Lives.text = "Lives: %d" % livesLa etiqueta Lives está a la derecha de la barra superior.
Desafío
IntermedioDale al jugador tres vidas.
- Añade
var lives = 3al principio y muestraLives: 3en$HUD/Livesen_ready(). - Conecta
$Player.hurta_on_player_hurt. - En
_on_player_hurt(), quita una vida y muéstrala.
Pulsa «Jugar» y quédate debajo de un bloque: la etiqueta baja a Lives: 2. Después, pulsa «Comprobar».
Pruébalo tú mismo
extends Node2D
var block_scene = preload("res://block.tscn")
var score = 0
func _ready():
$HUD/Score.text = "Score: %d" % score
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
$ScoreTimer.timeout.connect(_on_score_timer_timeout)
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
Todas las lecciones de Reglas del juego
6Proyecto: Esquivar
Esquivar: bloques que caenEsquivar: puntuaciónPractica por tu cuenta: Playground de Godot