מטבעות שנותרו
חלק מהיחידה אותות והתנגשויות במסלול ה-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 חייבת להופיע לפני הספירה.
אתגר
בינוניתקן את ספירת המטבעות שנותרו.
- בתוך
_on_body_entered, הסר את המטבע מהקבוצהcoinsלפני שורתprint. - השתמש ב-
remove_from_group().
לחץ על "שחק" ואסוף את שלושת המטבעות: המסוף מציג 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 אונליין