Menu
CoddyTech
flag Ar iconالعربيةdown icon

إشارتك الخاصة

جزء من قسم الإشارات والتصادمات في رحلة Godot على Coddy. الدرس 7 من 27.

يمكنك إعطاء العقدة إشارات خاصة بك. صرّح عن إشارة في أعلى السكربت باستخدام signal:

extends Area2D

signal hit

أرسلها باستخدام emit() عند حدوث الأمر:

func _on_body_entered(body):
	hit.emit()

قد تستخدم الشيفرات الأقدم emit_signal("hit"). وهي تؤدي الغرض نفسه.

لا تفعل الأشواك سوى الإبلاغ عن إصابة أحدهم. أما ما تفعله الإصابة فيعتمد على الشيفرة التي تستمع إليها. هنا، يستمع السكربت الموجود على Main إلى hit:

extends Node2D

# تستمع Main إلى إشارة hit الصادرة عن الأشواك، بمجرد أن تصبح لديها هذه الإشارة.
func _ready():
	if $Spikes.has_signal("hit"):
		$Spikes.hit.connect(_on_spikes_hit)

func _on_spikes_hit():
	print("Ouch!")
	$Player.modulate = Color(1, 0.42, 0.42)

ستكتب مستمعات كهذه قريبًا. في هذا الدرس، ستعدّل الأشواك فقط.

challenge icon

التحدي

سهل

أضف إشارة إلى الأشواك وأرسلها عندما يطأها أحد:

  1. صرّح عن signal hit في أعلى spikes.gd.
  2. في _on_body_entered، أرسلها باستخدام hit.emit().

امشِ على الأشواك. ينبغي أن تعرض وحدة التحكم Ouch! ويتحول لونك إلى المرجاني.

جرّب بنفسك

extends Area2D

func _ready():
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	pass
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

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

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