Di sinilah Variable digunakan, Variable adalah sebuah "wadah" atau tempat untuk menyimpan sesuatu dalam program, baik itu angka (integer, float), teks (string) maupun keterangan true atau false (boolean). Variable dalam GDevelop ada 2 jenis, Variable biasa (local) dan Global Variable. Bedanya adalah, global variable dapat digunakan dan diakses isinya oleh dan dari seluruh aspek dalam game, sementara variable biasa hanya dapat diakses oleh objek yang memiliki variable tersebut saja.
Kita akan menambahkan sebuah variable bernama "melompat" langsung dari event editor, tugasnya adalah menyimpan nilai 0 (false) dan 1 (true). Tambahkan sebuah event (caranya dapat anda baca disini), Klik "Add a condition" pada event baru tersebut dan pada window "Edit the condition", buka folder "Platform behavior" dan klik "Is jumping".
Kita tidak usah menambahkan action karena kondisi ini membutuhkan pengecekan terhadap kondisi lainnya yaitu sebuah variable "melompat", jika nilainya 0 (false), maka bunyikan efek suara dan ubah nilai variable "melompat" tersebut menjadi 1 (true).
Gerakkan mouse anda ke atas event baru tersebut, dan klik "A sub event" untuk membuat sebuah event baru "anak" dari event "Is jumping" tadi, lalu gerakkan mouse anda ke atas event "anak" tersebut dan klik "Add a condition". Pada window "Edit the condition" buka folder "All objects", lalu buka folder "Variables" kemudian klik pilihan "Value of an object's variable".
Pada bagian kanan, pilih objek karakter anda (Lakon), dan klik tombol kotak biru di sebelah kotak "Variable", akan muncul window kecil "Choose a variable". Jika objek karakter anda belum memiliki variable sebelumnya, window tersebut akan kosong.
Klik + pada window tersebut untuk menambah sebuah variable baru, dan beri nama "melompat". Tidak usah mengganti nilai baku variable "melompat" ini karena karakter ini tidak sedang melayang, dan nilai tersebut akan kita ubah nanti jika dibutuhkan.
Klik pada variable "melompat" yang baru saja dibuat, lalu klik tombol "Choose" untuk memilih variable tersebut.
Pada kotak "Sign of test" berikan tanda "=" (tanpa kutip), dan pada kotak "Value of test", berikan nilai 0. Tidak usah memberi centang pada "Invert the condition"! Jika semuanya benar, maka tampilan window "Edit the condition anda akan nampak seperti ini:
Gambar 1 |
Gambar 2 |
Klik "Add an action" sekali lagi pada event "anak" tadi dan pada window "Edit the action, buka folder "All objects", buka folder "Variables" dan pilih "Modify a variable of an object".
Pada bagian kanan, isi Object dengan objek karakter anda, pilih variable "melompat" yang tadi anda buat, berikan tanda "=" pada "Modification's sign" dan angka 1 pada kotak Value.
Gambar 3 |
Sekarang jika semuanya benar, ketika anda mencoba game anda, maka suara akan berbunyi sekali pada saat karakter anda melompat pertama kali, dan tidak akan berbunyi lagi. Ini disebabkan karena variable "melompat telah berubah nilainya menjadi 1, sementara aksi membunyikan suara membutuhkan nilai 0 pada variable melompat. Untuk mengubah nilai variable "melompat" kembali menjadi 0, anda membutuhkan sebuah event baru di mana kondisinya adalah saat objek karakter anda mendarat dan berdiri di atas tanah maka aksinya adalah mengubah nilai "melompat" menjadi 0.
Klik sebuah event selain event "anak", lalu buat sebuah event baru, klik "Add a condition", kemudian pada window "Edit the condition", buka folder "Platform behavior" lalu pilih "Is on floor".
Pada bagian kanan, pilih objek karakter anda, dan pilih "PlatformerObject" pada kotak Behavior, lalu klik Ok untuk menutup window.
Gambar 4 |
Gambar 5 |
Gambar 6 |
Untuk selanjutnya, kita akan menambahkan sebuah Global variable, yang mana akan digunakan di seluruh game yaitu global variable Skor. Global variable ini akan dimulai dari angka 0 (seperti POM Bensin aja...) dan akan ditambah nilainya setiap kali objek Lakon memungut sebuah koin.
Klik kanan pada Project anda di kotak Project manager, lalu pilih "Modify global variables".
Gambar 7 |
Untuk memodifikasi nilai global variable tersebut, anda bisa melakukannya pada saat objek karakter anda mengambil sesuatu atau membunuh musuh. Saat ini saya akan memberi contoh menambah nilai 100 pada skor jika karakter lakon mengambil sebuah koin.
Buka event editor, pada event dimana karakter anda bersentuhan (Collision) dengan koin, tambahkan sebuah action baru dengan mengklik "Add an action".
Pada window "Edit the action", buka folder "Variables", buka folder "Global variables" dan pilih "Value of a global variable".
Pada bagian kanan, pilih global variable yang tadi anda buat (disini namanya "Skor"), dan pada kotak "Modification's sign" beri tanda "+" (tanpa kutip), lalu beri nilai 100 pada kotak Value.
Sampai saat ini, nilai yang akan didapat pemain akan bertambah sebanyak 100 poin setiap kali mendapat sebuah koin. Namun pemain tidak akan mengetahui nilainya karena tidak tertera pada tampilan game. Untuk itulah dibutuhkan sebuah objek Text untuk menampilkan Skor tersebut. Objek Text tidak hanya untuk menampilkan skor semata, objek text juga dapat menampilkan beragam informasi untuk pemain misalnya jumlah nyawa, jarak yang harus ditempuh dan lain sebagainya.
Untuk menambahkan sebuah objek text, caranya sama dengan menambahkan objek lainnya, namun pada saat memilih jenis objek, pilih jenis Text pada window yang muncul.
Gambar 8 |
Pada window "Edit the text object" yang muncul kemudian, biarkan jenis dan ukuran font yang dipakai, pilih warna hitam atau warna apa pun kesukaan anda, asal tulisan akan nampak jelas nantinya, lalu pertebal tulisan dengan klik huruf B (Bold). Ketik "Skor: 0" (tanpa kutip) sebagai tulisan baku saat objek text tersebut mucul pertama kali di layar (opsional).
Gambar 9 |
Untuk mngatur agar tulisan tetap nampak di layar, anda harus menambahkan sebuah layer baru, caranya dengan klik Tab "Scene" pada menu bar paling atas pada window GDevelop, lalu klik "Layers editor" di bawahnya. Pada window "Layers editor" yang muncul, anda akan lihat sudah ada 1 layer yaitu "Base layer". Layer ini adalah layer bawaan di mana semua objek yang telah anda buat sebelumnya diletakkan. Pada layer ini, kamera mengikuti objek karakter agar objek tersebut tetap terlihat di layar, dan itulah mengapa objek text tetap diam di tempat.
Klik + pada window "Layers editor" untuk menambah sebuah layer baru, jika anda ingin memberi nama atau mengubah propertinya, dobel klik layer baru tersebut dan ubahlah sesuai dengan kebutuhan, namun saat ini saya rasa tidak perlu mengubah apapun kecuali nama. Saya memberi nama HUD (Heads Up Display) pada layer ini, nantinya layer ini untuk menyimpan tulisan Skor, jumlah nyawa dan informasi lainnya.
Pindahkan layer HUD ini dengan cara klik layer HUD tersebut lalu klik gambar panah atas atau bawah. Letakkan layer HUD ini ke tempat paling atas agar semua informasi tidak tertutup oleh objek dari layer lainnya, jadi seperti ini:
Gambar 10 |
Klik kanan pada objek text skor yang tadi anda buat, lalu pilih "Put the object(s) on the layer HUD" (atau nama layer yang anda buat tadi). Posisikan objek text tersebut agar berada pada lokasi yang enak dilihat pada layar (ukuran layar ditandai dengan sebuah kotak bergaris tipis pada scene editor).
Sekarang langkah terakhir dari bagian ini adalah memperbarui teks yang ditampilkan setiap kali karakter anda mengambil sebuah koin atau apapun yang menambah jumlah total skor.
Ada 2 cara yang bisa dilakukan, cara pertama adalah dengan memperbarui (update) teks setiap kali karakter bersentuhan dengan koin atau membunuh musuh, jadi anda harus menambahkan satu action baru pada saat terjadi collision dengan koin, satu action saat karakter membunuh musuh, dan lain sebagainya. Jadi intinya, anda harus menambah banyak Actions pada event editor anda.
Cara kedua adalah dengan menambahkan 1 action baru untuk memperbarui teks tanpa perlu sebuah condition seperti saat kita mengatur kamera untuk mengikuti objek karakter.
Saya akan pakai cara kedua ini, karena lebih sederhana dan tidak perlu mengubah terlalu banyak event yang sudah ada.
Buka event editor dan gerakkan mouse anda ke atas action dimana anda mengatur kamera untuk mengikuti objek karakter, tulisannya adalah "Center camera on (nama karakter anda) (layer: , camera: )", klik "Add an action" lalu pada window "Edit the action", buka folder "Text object" dan pilih "Modify the text".
Pada bagian kanan, pilih objek text yang ada buat tadi, pada kotak "Modification's sign", isi dengan tanda "=", lalu klik tombol txt untuk menyunting text yang akan dimunculkan nanti. Akan muncul window "Edit the text", ketik "Skor: " lalu tanda +, kemudian anda buka folder "Variables" pada kotak "Other function" di bagian kanan bawah, dan dobel klik pada "Global variables".
Gambar 11 |
Gambar 12 |
Jika semuanya anda lakukan sesuai dengan yang saya tulis, maka event editor anda akan nampak seperti ini sekarang:
Gambar 13 |
Gambar 14 |
Ikuti terus perkembangan dan nantikan artikel terbaru lainnya, juga jangan lupa untuk mengajak kerabat dan teman anda berkunjung kemari.
Terima kasih! :)
Tidak ada komentar :
Posting Komentar