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

جميع دروس الإشارات والتصادمات

تدرّب بنفسك: Playground لـ Godot