Tutorial Construct 2: Membuat Wall Jump (Loncat Dinding)
1. Persiapan Level
Sebelum membuat kode:
-
Atur tata letak dinding agar bisa digunakan untuk latihan wall jump.
-
Pindahkan dan gandakan beberapa platform menggunakan Ctrl + drag.
-
Bentuk dua dinding berhadapan agar pemain bisa melompat di antaranya.
-
-
Pastikan tata letak memiliki ruang yang cukup agar gerakan loncat dinding terasa alami.
2. Menambahkan Animasi Wall Slide
-
Buka objek Player → Animations → Add New Animation.
-
Beri nama:
wallatauwall slide.
-
-
Impor frame animasi dari folder aset (yang tersedia di Itch.io milik N9Ark).
-
Jika tidak punya, bisa pakai kotak sederhana sebagai placeholder.
-
-
Hapus frame pertama, aktifkan loop = yes, dan pastikan animasi siap diputar.
-
Samakan bounding box di semua animasi:
-
Kadang sisi kanan/kiri sprite tidak simetris → ubah koordinat agar seimbang (misalnya, ubah X dari 21 ke 20).
-
Klik kanan → Apply to all animations supaya semua animasi rapi saat dibalik (flip).
-
3. Penyesuaian Perilaku Player
-
Buka Behaviors → Platform, lalu ubah Acceleration = 500 (agar kontrol gerak terasa lebih halus).
-
Nonaktifkan Default Controls = No jika ingin kontrol kustom (tidak dibahas detail di sini).
4. Pemrograman di Event Sheet
Buka Event Sheet → Movement Group dan tambahkan logika wall jump.
Langkah 1: Deteksi saat tidak di tanah
-
Event:
Artinya: jalankan event saat pemain sedang melompat atau jatuh.
Langkah 2: Deteksi berada di dinding
-
Tambahkan sub-event:
Ini mengecek apakah pemain menempel pada dinding kanan.
Langkah 3: Efek wall slide
Saat pemain berada di dinding:
-
Kurangi kecepatan jatuh:
-
Ubah animasi ke “wall”.
-
Atur tampilan menjadi mirrored agar sprite tampak menghadap arah yang benar (karena default-nya animasi dibuat untuk posisi di dinding kiri).
5. Logika Loncat dari Dinding
Tambahkan sub-event baru:
Aksi:
-
Player → Set Vector X = -500 (meluncur ke kiri).
-
Player → Set Vector Y = -500 (melompat ke atas).
💡 Penjelasan:
-
Nilai negatif pada sumbu X berarti ke kiri.
-
Nilai negatif pada sumbu Y berarti ke atas.
🔹 Hasil: Pemain bisa melompat ke arah berlawanan dari dinding kanan, meniru mekanik wall jump.
6. Logika untuk Dinding Kiri
Duplikat event sebelumnya (Ctrl+C, Ctrl+V) dan ubah:
| Kondisi | Aksi |
|---|---|
Is by wall (Left) | - Set mirrored = No - Set Vector X = +500 (ke kanan) - Set Vector Y = -500 (ke atas) |
🔹 Hasil: Pemain kini bisa melompat dari kedua sisi dinding.
7. Mengembalikan Kecepatan Jatuh Normal
Masalah:
-
Setelah meninggalkan dinding, pemain tetap memiliki kecepatan jatuh lambat.
Solusi:
-
Tambahkan event baru:
-
Aksi:
(Kembali ke nilai semula.)
Sekarang, pemain hanya melambat saat menempel di dinding, lalu kembali normal setelah lepas.
Source: Youtube Action Cancel