Menu
CoddyTech
flag He iconעבריתdown icon

הדלת הנעולה

חלק מהיחידה פרויקטים במסלול ה-Godot של Coddy. שיעור 28 מתוך 33.

דלת Door חוסמת את הדרך אל המדרגות. היא StaticBody2D, ולכן move_and_slide עוצר בה את הגיבור. לפניה נמצאת DoorZone, שהיא Area2D שרחבה מעט יותר מהדלת, כך שהגיבור מגיע אליה קודם.

כשהגיבור נכנס לאזור עם המפתח, הדלת נפתחת:

func _on_door_zone_body_entered(body):
	if has_key:
		$Door.queue_free()
		$DoorZone.queue_free()

הסר גם את האזור. אחרת הגיבור ייכנס אליו שוב, $Door כבר לא יהיה קיים, והמשחק ייעצר עם הודעת Node not found.

הסר את הדלת באמצעות queue_free(). hide() רק מפסיקה את הציור שלה. צורת ההתנגשות שלה עדיין תחסום את הגיבור.

challenge icon

אתגר

בינוני

ב־main.gd, חבר את $DoorZone.body_entered. כאשר גוף נכנס ו־has_key הוא true, הסר את $Door ואת $DoorZone.

נסו בעצמכם

extends Node2D

var has_key = false

func _ready():
	$Key.body_entered.connect(_on_key_body_entered)

func _on_key_body_entered(body):
	has_key = true
	$Key.queue_free()
	$HUD/KeyIcon.visible = true
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה פרויקטים

תרגלו בעצמכם: Godot אונליין