Menyimpan, Memuat, dan Skor Tinggi
Selalu ada kalanya Anda ingin membuat permainan yang mengingat rincian tertentu tentang waktu sebelumnya permainan itu dimainkan.
Apa yang ingin Anda simpan sangat bergantung pada permainan atau aplikasi yang Anda buat. Apakah Anda ingin menyimpan skor, posisi, atau kemajuan secara keseluruhan, Anda perlu merencanakan bagaimana dan apa yang ingin Anda simpan.
Dalam tutorial ini kita akan membahas penyimpanan skor pemain, dan membuat sistem skor tertinggi atau skor "Terbaik Sebelumnya" yang sederhana.
Untuk tutorial ini, kita akan menganggap Anda telah membuat permainan sederhana di mana pemain mengambil koin (Bagian 5 dari Membuat Permainan Platform), dan jumlah koin ditampilkan dengan label di layar.
Menyimpan
Ketika berbicara tentang penyimpanan, ada dua pertanyaan penting yang ingin Anda tanyakan pada diri sendiri. Apa yang ingin Anda simpan, dan kapan Anda harus menyimpannya? Di hyperPad, Perilaku Simpan hanya dapat menyimpan satu nilai pada satu waktu. Jadi, Anda benar-benar perlu memikirkan apa yang Anda simpan.
Dalam tutorial ini, kita akan menyimpan skor (jumlah koin yang dikumpulkan) yang ditampilkan menggunakan label di layar.
Sekarang kita tahu kita menyimpan skor dari label, hal berikutnya yang perlu kita cari tahu adalah kapan untuk menyimpan.
Ada banyak pilihan di sini, dan mereka bergantung pada gameplay atau desain keseluruhan Anda. Anda bisa menyimpannya setiap kali pemain mengambil koin, menyimpan ketika pemain kalah, menyimpan ketika pemain menyelesaikan level, menyimpan ketika pemain menekan tombol, atau apa pun yang Anda rasa diperlukan untuk situasi Anda.
Dalam tutorial ini, kita akan menyiapkan tombol yang menyimpan skor ketika pemain menekan tombol simpan. Logika perilaku yang sama dapat diterapkan jika Anda ingin menyimpan ketika pemain kalah atau menyelesaikan level. Anda hanya perlu memicu perilaku ini ketika Anda menang atau kalah.
Pilih objek Tombol Simpan Anda, dan buka perilakunya.
Dari kategori Interaksi editor perilaku, tambahkan perilaku "Sentuhan Dihentikan".
Sekarang dari kategori UI, tambahkan perilaku "Dapatkan Label", dan sambungkan ke perilaku "Sentuhan Dihentikan" dari langkah sebelumnya.
Ketuk perilaku "Dapatkan Label" untuk melihat properti perilaku. Dari properti perilaku, ketuk area yang mewakili objek saat ini, lalu pilih label di adegan Anda yang mewakili skor Anda.
Selanjutnya dari kategori Kustom, tambahkan perilaku "Simpan ke File" dan sambungkan ke "Sentuhan Dihentikan".
Pilih perilaku "Simpan ke File" yang baru saja Anda tambahkan untuk melihat properti perilaku. Perhatikan bahwa "Jenis Kunci" diatur ke yang ada. Kunci yang ada adalah hal-hal yang telah ditentukan sebelumnya yang ingin Anda simpan.
Pertama, Anda perlu menambahkan judul atau deskripsi dari sesuatu yang ingin Anda simpan. Ini disebut sebagai "Kunci". Ketuk tombol "Pilih atau Buat Kunci" untuk menampilkan daftar kunci.
Masukkan judul deskriptif di bagian atas, kemudian tekan tombol + untuk menambahkan kunci pertama Anda. Karena kita ingin menyimpan skor, masukkan "Skor" sebagai kunci.
Selanjutnya, Anda perlu benar-benar menyimpan skor dari label. Untuk melakukan ini, keluarkan nilai dari sudut perilaku "Dapatkan Label" ke dalam bidang input dari properti "Simpan ke File".
Itu saja! Pada titik ini, permainan Anda harus menyimpan skor Anda tepat ketika Anda menekan tombol simpan. Tetapi Anda belum benar-benar melakukan apa pun dengan nilai yang disimpan. Hal berikutnya yang perlu Anda lakukan adalah Memuat skor dan benar-benar menggunakannya di adegan Anda.
Memuat
Dengan skor Anda disimpan, sekarang Anda perlu memuatnya dan menggunakannya di adegan Anda. Ketika berbicara tentang memuat, ada satu pertanyaan penting yang perlu Anda jawab. Kapan Anda ingin memuat?
Seperti penyimpanan, jawabannya sangat bergantung pada proyek Anda. Anda dapat memuat segera setelah adegan Anda dimulai, ketika pemain menekan tombol, atau ketika peristiwa lain dipicu. Ini benar-benar tergantung pada apa yang ingin Anda capai.
Untuk tutorial ini, kita akan memuat tepat ketika adegan dimulai dan menunjukkan skor yang disimpan sebelumnya.
Untuk memulai, tambahkan sebuah label ke dalam adegan Anda. Kita akan menggunakan label ini untuk menunjukkan skor yang disimpan Anda.
Selanjutnya kita perlu menambahkan logika pemuatan yang sebenarnya. Untuk tutorial ini, kita akan menambahkan logika ke Tombol Simpan dari langkah-langkah sebelumnya. Namun, tergantung pada permainan Anda, Anda mungkin perlu menempatkan logika Anda di tempat lain. Pilih tombol simpan dan buka editor perilaku dari properti objek.
Dari kategori Kustom, tambahkan perilaku "Muat dari File" dan jangan sambungkan ke apa pun. Karena tidak tersambung ke perilaku lain, perilaku muat akan dieksekusi tepat ketika adegan dimulai (ketika tombol ada di dalam adegan). Jika Anda ingin memuat berdasarkan peristiwa tertentu, atau pemicu lain, maka Anda harus menghubungkannya ke perilaku lainnya.
Sekarang pilih perilaku "Muat dari File" untuk melihat properti perilaku. Sekali lagi, pastikan "Ada" dipilih untuk jenis kunci.
Selanjutnya ketuk tombol "Pilih Kunci" untuk membuka daftar kunci yang disimpan. Dari daftar, pilih kunci "Skor" yang Anda tambahkan sebelumnya.
Pada titik ini, Anda secara teknis telah memuat skor. Namun, Anda belum melakukan apa pun dengannya. Mari kita manfaatkan nilai yang dimuat itu.
Dari kategori UI, tambahkan perilaku "Atur Label" dan sambungkan ke perilaku Muat yang Anda tambahkan sebelumnya.
Selanjutnya pilih perilaku "Atur Label" untuk melihat propertinya dan ingat untuk memilih label baru yang baru saja Anda tambahkan yang mewakili skor yang dimuat. Setelah Anda memilih label yang benar untuk diubah, tarik nilai keluaran dari sudut perilaku "Muat dari File" ke dalam bidang input dari perilaku Atur Label.
Itu saja yang perlu Anda lakukan! Kemajuan Anda akan disimpan dan dimuat ke dalam label saat Anda bermain lagi.
Skor Tertinggi
Salah satu hal yang mungkin Anda sadari adalah bahwa skor Anda disimpan setiap kali Anda menekan tombol dan menimpa skor sebelumnya. Kadang-kadang ini tidak masalah, tetapi biasanya Anda hanya ingin menyimpan ketika pemain mencapai skor yang lebih tinggi dari yang sebelumnya.
Untuk menerapkan sistem "Skor Tertinggi" ini, kita hanya perlu sedikit memodifikasi logika penyimpanan kita.
Mulailah dengan kembali ke tempat perilaku penyimpanan diletakkan (tombol simpan).
Pertama, Anda perlu memutus sambungan perilaku "Simpan ke File" dari perilaku "Sentuhan Dihentikan". Ketuk garis penghubung antara kedua perilaku untuk memutuskannya.
Selanjutnya dari kategori Logika tambahkan perilaku JIKA. Perilaku JIKA akan memeriksa kapan kondisi tertentu terpenuhi sebelum mengeksekusi. Dalam hal ini kita hanya ingin menyimpan JIKA skor lebih besar dari skor sebelumnya (yang dimuat).
Sambungkan perilaku JIKA ke perilaku "Stop Touching".
Selanjutnya Anda perlu mengetuk perilaku JIKA untuk membuka properti perilakunya dan mengatur kondisi tersebut.
Tarik nilai keluaran dari "Dapatkan Label" ke dalam bidang input pertama dari perilaku JIKA.
Kemudian tarik nilai keluaran dari perilaku "Muat dari File" ke dalam bidang input kedua dari perilaku JIKA.
Sekarang Anda perlu mengubah kondisi tersebut. Ketuk tombol "Sama Dengan" dan pilih opsi Lebih Besar dari atau Sama dengan (≥).
Terakhir, sambungkan perilaku simpan lama Anda ke JIKA. Sekarang perilaku JIKA Anda hanya akan mengeksekusi simpan yang terhubung, JIKA nilai dari label adalah lebih besar (atau sama) dengan nilai yang dimuat.
Itu saja yang perlu Anda lakukan. Anda sekarang seharusnya memiliki sistem penyimpanan dan pemuatan yang berfungsi yang akan menyimpan skor pemain hanya jika mereka mengalahkan percobaan sebelumnya.
Penyimpanan Lain
Tutorial ini membahas penyimpanan skor. Tetapi terkadang Anda ingin menyimpan hal-hal lain, seperti posisi pemain, atau level saat ini, dll.
Konsep yang Anda pelajari dalam tutorial ini masih berlaku. Anda hanya perlu mengubah kapan Anda menyimpan, dan apa yang Anda simpan.
Ambil contoh penyimpanan posisi pemain. Posisi objek diberikan dalam 2 angka. X, dan Y. Untuk ini, Anda hanya akan menggunakan 2 perilaku simpan. Satu untuk menyimpan posisi X, dan yang lainnya untuk menyimpan posisi Y. Kemudian ketika datang untuk memuat, Anda akan menggunakan 2 perilaku muat. Lalu alih-alih mengatur label, Anda akan cukup memindahkan objek pemain ke posisi X dan Y yang dimuat.
Membuat rencana tentang apa yang ingin Anda simpan, dan kapan Anda perlu menyimpan, Anda dapat membuat sistem yang bekerja untuk hampir semua situasi.

