Menu
CoddyTech

Pływające liczby

Część sekcji Dopracowanie rozgrywki ścieżki Godot w Coddy. Lekcja 19 z 23.

Liczba unosząca się w górę po trafieniu informuje gracza o tym, co się stało.

Metoda hit() robota tworzy już obiekt Label z tekstem -1 nad jego głową. Podobnie jak drzazgi ze skrzyni, etykieta jest dodawana do get_parent(), więc nie porusza się ani nie miga razem z robotem.

Aby zaczęła się unosić, jednocześnie animuj jej "position:y" w górę i zmień jej "modulate:a" na 0. Gdy animacja dobiegnie końca, usuń etykietę za pomocą label.queue_free(). W przeciwnym razie pozostanie w grze, niewidoczna.

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

Pierwszym argumentem tween_property jest węzeł, który ma zostać zmieniony. W tym przypadku jest to label, a nie self.

challenge icon

Wyzwanie

Średni

Spraw, aby -1 odpłynęło.

  1. Po dodaniu etykiety animuj jej "position:y", przesuwając ją o 40 pikseli w górę w ciągu 0.6 sekundy.
  2. Równolegle animuj jej "modulate:a", ustawiając wartość 0.0.
  3. Użyj await dla finished animacji, a następnie wywołaj label.queue_free().

Naciśnij „Graj” i naciśnij E: -1 unosi się i zanika. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

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 iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Dopracowanie rozgrywki

Poćwicz samodzielnie: Edytor online Godot