جامع العملات: العملات المتبقية
جزء من قسم الإشارات والتصادمات في رحلة Godot على Coddy. الدرس 26 من 27.
يجب أن يعرف Main عدد العملات المتبقية. احتفظ بالعدد في متغير أعلى main.gd. احسب أفراد المجموعة مرة واحدة عند البداية، ثم اطرح واحدًا مقابل كل عملة يتم جمعها:
var coins_left = 0
func _ready():
coins_left = get_tree().get_nodes_in_group("coins").size()لماذا لا نحسب أفراد المجموعة في _on_coin_collected؟ ترسل العملة الإشارة collected قبل أن تحذف نفسها مباشرةً. وتبقى ضمن مجموعتها حتى نهاية الإطار، لذا سيشملها العدد.
لا يتغير المتغير إلا عندما تغيّره.
التحدي
متوسطفي main.gd:
- أضف
var coins_left = 0في الأعلى، واجعل قيمته تساوي حجم المجموعةcoinsفي_ready(). - في
_on_coin_collected()، اطرح واحدًا واطبعCoins left:والعدد بدلًا منGot a coin!.
تطبع أول قطعة نقدية Coins left: 5.
جرّب بنفسك
extends Node2D
func _ready():
for coin in get_tree().get_nodes_in_group("coins"):
coin.collected.connect(_on_coin_collected)
func _on_coin_collected():
print("Got a coin!")
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الإشارات والتصادمات
6مشروع: جامع العملات
جامع العملات: المشيجامع العملات: العملاتتدرّب بنفسك: Playground لـ Godot