Menu
CoddyTech

Kabur dari Ruang Bawah Tanah

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

Tangga di sudut paling jauh adalah jalan keluar. Tangga itu merupakan Area2D bernama Exit. Saat hero menginjaknya, pemain menang:

func _on_exit_body_entered(body):
	$HUD/Message.text = "You Escaped!"
	get_tree().paused = true

Hubungkan sinyalnya di _ready bersama sinyal lainnya. Enter juga memulai permainan baru setelah menang, karena mulai ulang hanya memeriksa apakah permainan dijeda.

Mainkan dungeon-mu. Lalu ubah: tambahkan penjaga kedua, pindahkan dinding, atau sembunyikan kunci di tempat yang lebih sulit ditemukan.

challenge icon

Tantangan

Mudah

Di main.gd, hubungkan $Exit.body_entered ke fungsi yang menampilkan You Escaped! di $HUD/Message dan menjeda game.

Coba sendiri

extends Node2D

var has_key = false
var health = 3

func _ready():
	$Key.body_entered.connect(_on_key_body_entered)
	$DoorZone.body_entered.connect(_on_door_zone_body_entered)
	$Enemy.body_entered.connect(_on_enemy_body_entered)

func _process(delta):
	if get_tree().paused and Input.is_action_just_pressed("action"):
		get_tree().paused = false
		get_tree().reload_current_scene()

func _on_key_body_entered(body):
	has_key = true
	$Key.queue_free()
	$HUD/KeyIcon.visible = true

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

func _on_enemy_body_entered(body):
	health -= 1
	$HUD/Hearts.get_child(health).visible = false
	$Hero.flash()
	if health == 0:
		$HUD/Message.text = "Game Over"
		get_tree().paused = 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