Menu
CoddyTech

Pintu Terkunci

Termasuk bagian Proyek dalam perjalanan Godot di Coddy. Pelajaran 28 dari 33.

Sebuah Door menghalangi jalan menuju tangga. Door adalah StaticBody2D, jadi move_and_slide menghentikan hero saat menabraknya. Di depannya ada DoorZone, sebuah Area2D yang sedikit lebih lebar daripada pintu, sehingga hero mencapainya lebih dulu.

Saat hero berjalan memasuki zona dengan membawa kunci, pintunya terbuka:

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

Hapus zonanya juga. Jika tidak, hero akan berjalan kembali ke dalamnya, $Door tidak lagi ada, dan game berhenti dengan pesan Node not found.

Hapus pintunya dengan queue_free(). hide() hanya menghentikan penggambarannya. Bentuk tabrakannya tetap akan menghalangi hero.

challenge icon

Tantangan

Sedang

Di main.gd, hubungkan $DoorZone.body_entered. Saat sebuah body masuk dan has_key bernilai true, hapus $Door dan $DoorZone.

Coba sendiri

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 iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Proyek

Latihan sendiri: Playground Godot