Zbieracz monet: Zebrane
Część sekcji Sygnały i kolizje ścieżki Godot w Coddy. Lekcja 25 z 27.
main.gd zawiera zasady gry, na przykład informację o liczbie pozostałych monet. Main musi wiedzieć o każdej zebranej przez ciebie monecie. Dlatego każda moneta wysyła sygnał, a Main nasłuchuje ich wszystkich.
W coin.gd zadeklaruj signal collected i wyemituj ten sygnał tuż przed usunięciem monety:
if body.is_in_group("player"):
collected.emit()
queue_free()W main.gd połącz wszystkie monety z grupy, tak jak w przypadku kolców:
for coin in get_tree().get_nodes_in_group("coins"):
coin.collected.connect(_on_coin_collected)To działa w funkcji _ready() w Main, ponieważ Godot przygotowuje dzieci przed rodzicem. Wtedy każda moneta należy już do grupy.
Wyzwanie
ŚredniTym razem dwa skrypty:
coin.gd: zadeklarujsignal collectedi wyemituj go przedqueue_free().main.gd: w_ready()połącz sygnałcollectedkażdej monety z nową funkcją_on_coin_collected(), która wypisujeGot a coin!.
Spróbuj swoich sił
extends Node2D
func _ready():
pass
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Sygnały i kolizje
6Projekt: Zbieracz monet
Zbieracz monet: ChodzenieZbieracz monet: MonetyPoćwicz samodzielnie: Edytor online Godot