Menu
CoddyTech

Números flotantes

Parte de la sección Sensación de juego del Journey de Godot de Coddy. Lección 19 de 23.

Un número que flota hacia arriba después de un golpe le indica al jugador qué ocurrió.

El hit() del robot ya crea un Label que muestra -1 sobre su cabeza. Al igual que las astillas de la caja, la etiqueta se agrega a get_parent(), así que no se mueve ni parpadea junto con el robot.

Para hacer que flote, anima su "position:y" hacia arriba y su "modulate:a" hasta 0 al mismo tiempo. Cuando termine la animación, elimina la etiqueta con label.queue_free(). De lo contrario, permanece en el juego, invisible.

var rise = create_tween()
rise.tween_property(label, "position:y", label.position.y - 40, 0.6)

El primer valor de tween_property es el nodo que se va a cambiar. En este caso es label, no self.

challenge icon

Desafío

Intermedio

Haz que -1 se aleje flotando.

  1. Después de añadir la etiqueta, interpola su "position:y" 40 píxeles hacia arriba en 0.6 segundos.
  2. En paralelo, interpola su "modulate:a" hasta 0.0.
  3. Usa await con finished de la interpolación y después llama a label.queue_free().

Pulsa «Jugar» y pulsa E: el -1 sube y se desvanece. Después, pulsa «Comprobar».

Pruébalo tú mismo

extends Node2D

func hit():
	modulate = Color(4, 4, 4)
	var tween = create_tween()
	tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)
	var label = Label.new()
	label.text = "-1"
	label.modulate = Color(1, 0.42, 0.42)
	label.position = position + Vector2(-8, -110)
	get_parent().add_child(label)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Sensación de juego

Practica por tu cuenta: Playground de Godot