Esquivar: puntuación
Parte de la sección Reglas del juego del Journey de Godot de Coddy. Lección 26 de 29.
En Dodge, obtienes un punto por cada segundo que sobrevives. La escena tiene un segundo temporizador, ScoreTimer, que se agota cada segundo. La barra superior tiene una etiqueta Score.
Esto funciona como el reloj que construiste antes. Usa una variable, muéstrala en _ready() y suma un punto en cada timeout:
func _on_score_timer_timeout():
score += 1
$HUD/Score.text = "Score: %d" % scoreUna escena puede tener muchos temporizadores. Cada uno tiene su propio wait_time y su propia función. Así puedes cambiar con qué frecuencia caen los bloques sin cambiar la puntuación.
Desafío
Intermedio- Agrega
var score = 0al principio y muestraScore: 0en$HUD/Scoredentro de_ready(). - Conecta
$ScoreTimer.timeoutcon_on_score_timer_timeout. - Dentro de
_on_score_timer_timeout(), suma un punto y muestra la nueva puntuación.
Pruébalo tú mismo
extends Node2D
var block_scene = preload("res://block.tscn")
func _ready():
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
func _on_spawn_timer_timeout():
var block = block_scene.instantiate()
block.position = Vector2(randf_range(40, 600), -30)
add_child(block)
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Reglas del juego
6Proyecto: Esquivar
Esquivar: bloques que caenEsquivar: puntuaciónPractica por tu cuenta: Playground de Godot