מטבעות שנותרו
חלק מהיחידה אותות והתנגשויות במסלול ה-Godot של Coddy. שיעור 17 מתוך 27.
כל מטבע כאן סופר את המטבעות שנותרו כשאוספים אותו. הראשון מציג Coins left: 3, אבל נשארו רק שניים.
queue_free() ממתין עד סוף הפריים. עד אז המטבע עדיין נמצא בקבוצה שלו, ולכן הוא סופר את עצמו.
תחילה הוציאו את המטבע מהקבוצה באמצעות remove_from_group(). כך זה עובד מיד:
func _on_body_entered(body):
remove_from_group("coins")
print("Coins left: ", get_tree().get_nodes_in_group("coins").size())
queue_free()השורות מתבצעות מלמעלה למטה, ולכן remove_from_group חייב להופיע לפני הספירה.
אתגר
בינוניתקן את הספירה. הוצא את המטבע מהקבוצה coins לפני שסופרים אותו. איסוף שלושת המטבעות אמור להדפיס Coins left: 2, Coins left: 1, ואז Coins left: 0.
נסו בעצמכם
extends Area2D
func _ready():
add_to_group("coins")
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print("Coins left: ", get_tree().get_nodes_in_group("coins").size())
queue_free()
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה אותות והתנגשויות
תרגלו בעצמכם: Godot אונליין