extends CanvasLayer # 🛠️ DISESUAIKAN DENGAN GAMBAR KEDUA (IMAGE_311C7A.PNG) @onready var latar_belakang_klik = $ColorRect @onready var label_tutorial = $Panel/RichTextLabel # Teks panduan yang bisa kamu isi dan edit lewat Inspector Loker/Stage @export_multiline var teks_panduan: String = "" func _ready() -> void: # 1. Pastikan node ditemukan dengan aman sebelum menyambung sinyal if latar_belakang_klik: latar_belakang_klik.gui_input.connect(_on_latar_belakang_gui_input) else: print("⚠️ Eror: Node ColorRect tidak ditemukan!") # 2. Tampilkan teks dari Inspector if label_tutorial: if teks_panduan != "": label_tutorial.text = teks_panduan else: label_tutorial.text = "Gunakan tombol A/D untuk bergerak, dan klik kiri untuk menembak!" else: print("⚠️ Eror: Node RichTextLabel tidak ditemukan!") # 3. BERHENTIKAN GAME TOTAL (Waktu dihentikan murni) Engine.time_scale = 0.0 print("⏸️ Game dihentikan total untuk tutorial.") # Fungsi untuk mendeteksi tap / klik di bagian mana saja pada layar func _on_latar_belakang_gui_input(event: InputEvent) -> void: # Cek apakah inputnya adalah klik mouse kiri atau tap layar HP if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT and event.pressed: tutup_tutorial() func tutup_tutorial() -> void: # 1. KEMBALIKAN WAKTU GAME JALAN NORMAL Engine.time_scale = 1.0 print("▶️ Tutorial selesai, game berjalan kembali.") # 2. Hapus bar tutorial dari layar queue_free()