Menu
CoddyTech

אוסף המטבעות: נאספו

חלק מהיחידה אותות והתנגשויות במסלול ה-Godot של Coddy. שיעור 25 מתוך 27.

main.gd מכיל את חוקי המשחק, למשל כמה מטבעות נשארו. Main צריך לקבל הודעה על כל מטבע שאוספים. לכן כל מטבע שולח אות, ו-Main מאזין לכולם.

ב-coin.gd, הכריזו על signal collected ופלטו אותו ממש לפני שהמטבע משחרר את עצמו:

if body.is_in_group("player"):
	collected.emit()
	queue_free()

ב-main.gd, חברו כל מטבע בקבוצה, כפי שעשיתם עם הדוקרנים:

for coin in get_tree().get_nodes_in_group("coins"):
	coin.collected.connect(_on_coin_collected)

הדבר פועל ב-_ready() של Main, כי Godot מאתחל את הילדים לפני ההורה שלהם. עד אז כל המטבעות כבר הצטרפו לקבוצה.

challenge icon

אתגר

בינוני

תן ל-Main לשמוע על כל מטבע שנאסף.

  1. ב-coin.gd, הכרז על signal collected ושלח אותו לפני queue_free().
  2. ב-_ready() של main.gd, חבר את collected של כל מטבע לפונקציה חדשה _on_coin_collected().
  3. גרום לפונקציה הזאת להדפיס Got a coin!.

לחץ על "שחק" ועבור מעל מטבע: המסוף יציג Got a coin!. לאחר מכן לחץ על "בדיקה".

נסו בעצמכם

extends Node2D

func _ready():
	pass

כל השיעורים ביחידה אותות והתנגשויות

תרגלו בעצמכם: Godot אונליין