Rumah Keuangan Pribadi Cara Membuat Interaksi Pengguna di Game HTML5 Anda - dummies

Cara Membuat Interaksi Pengguna di Game HTML5 Anda - dummies

Daftar Isi:

Video: CSS Efecto - 17 recogida de borde @JoseCodFacilito 2024

Video: CSS Efecto - 17 recogida de borde @JoseCodFacilito 2024
Anonim

Perbedaan terbesar antara game HTML5 dan animasi adalah interaksi pengguna. Jika Anda ingin membuatnya menjadi permainan, Anda memerlukan pengguna untuk terlibat. Dan inilah cara melakukannya.

Inilah kodenya:

mobil. adegan var html; mobil var; fungsi init () {scene = new Scene (); mobil = Sprite baru (adegan, "mobil png", 50, 30); mobil. setAngle (270); mobil. setSpeed ​​(0); tempat kejadian. start ();} // akhirin fungsi init update () {scene. bersih(); // centang kunci jika (keysDown [K_LEFT]) { mobil. changeAngleBy (-5); } // akhiri jika jika (keysDown [K_RIGHT]) { mobil. changeAngleBy (5); } // akhiri jika jika (keysDown [K_UP]) { mobil. changeSpeedBy (1); } // akhiri jika jika (keysDown [K_DOWN]) { mobil. changeSpeedBy (-1); } // akhiri jika mobil. update ();} // end update

Mengendarai mobil!

Cara menggunakan keyboard untuk permainan Anda

Entah bagaimana pengguna perlu berinteraksi dengan halaman. Keyboard adalah salah satu elemen masukan termudah untuk digunakan. simpleGame menyediakan beberapa cara untuk mengecek keyboard, namun teknik yang paling ampuh menggunakan variabel khusus yang disebut keysDown. Begini cara kerjanya:

  • keysDown adalah array global. Variabel ini dibuat secara otomatis saat Anda membangun sebuah adegan. Ini adalah array dari nilai Boolean - yang berarti setiap elemen hanya bisa true atau hanya false.

  • Ada konstan yang didefinisikan untuk setiap tombol. Setiap tombol pada keyboard standar memiliki konstanta khusus yang sudah ditentukan. Misalnya, K_A mewakili tombol A, dan K_B mewakili kunci B.

  • keysDown memberitahukan status setiap tombol. Jika tombol A saat ini ditekan, keysDown [A] akan berisi nilai true. Jika tombol A tidak ditekan, keysDown [A] akan berisi nilai false.

  • Anda dapat menentukan status terkini dari tombol apa saja. Cek saja tombol keysDown [] untuk menentukan status key yang ada.

  • Anda dapat memiliki beberapa tombol sekaligus. Tujuan utama dari teknik ini adalah untuk memungkinkan beberapa tombol ditekan sekaligus. Dalam komputasi normal, tidak biasa memiliki lebih dari satu tombol sekaligus. Di game, sangat umum menekan lebih dari satu tombol sekaligus, jadi Anda memerlukan mekanisme yang bisa mendukung harapan ini.

Cara menggerakkan sprite permainan

Pada dasarnya, sprite memiliki posisi, yang dikendalikan oleh properti X dan Y. Jika Anda ingat dari kelas matematika, X mewakili nilai horisontal, dan Y adalah untuk lokasi vertikal. Tanda asal (0, 0) adalah pojok kiri atas layar.

Koordinat X bekerja sama seperti Anda ingat dari kelas matematika. Karena nilai X semakin besar, sprite bergerak ke kanan. Dalam grafis komputer, Y bertindak sedikit berbeda dari kelas matematika.Sebagian besar pemindaian perangkat keras display dari atas ke bawah, jadi Y adalah 0 di bagian atas layar dan meningkat saat Anda bergerak ke bawah.

Perhatikan bahwa tinggi dan lebar maksimum disimpan dalam variabel: scene. tinggi dan pemandangan lebar.

Semua berbagai metode pergerakan benar-benar tentang memanipulasi X dan Y. Anda dapat mengatur nilai ini secara manual (setPosition (), setX (), dan setY ()), atau Anda dapat mengubah nilainya (changeXby (), ubahYby ()). Masing-masing metode ini bertindak segera, sehingga Anda bisa menggunakannya untuk mengarahkan posisi atau gerak sprite.

Beberapa fungsi ini tampak serupa satu sama lain. Sebagai contoh, changeXby () terlihat sangat mirip setChangeX (). Fungsi ini memiliki perbedaan yang halus tapi penting. Fungsi changeXby () mengubah nilai X satu kali. Jika Anda ingin perubahan berlanjut, Anda harus terus memanggil fungsi ini.

Fungsi setChangeX () lebih hebat karena Anda dapat menyebutnya satu kali, dan berulang kali mengubah x dengan nilai apapun yang Anda tentukan sampai Anda memanggil setChangeX () lagi.

Bagi kebanyakan sprite, Anda benar-benar ingin memberi sprite sudut dan kecepatan, dan membiarkannya pergi. Objek sprite memiliki metode yang Anda perlukan untuk perilaku ini. setAngle () memungkinkan Anda menentukan arah sprite akan pergi, dan setSpeed ​​() memungkinkan Anda menentukan kecepatan untuk pergi ke arah itu. Seperti kebanyakan fungsi gerak, ada juga metode changeAngle () dan changeSpeed ​​().

Cara mengendalikan mobil di permainan Anda

Tombolnya mekanisme dapat dikombinasikan dengan metode gerakan untuk mengendalikan mobil Anda dengan mudah. Inilah kode yang relevan dari update () lagi:

function update () {scene. bersih(); // centang kunci jika (keysDown [K_LEFT]) { mobil. changeAngleBy (-5); } // akhiri jika jika (keysDown [K_RIGHT]) { mobil. changeAngleBy (5); } // akhiri jika jika (keysDown [K_UP]) { mobil. changeSpeedBy (1); } // akhiri jika jika (keysDown [K_DOWN]) { mobil. changeSpeedBy (-1); } // akhiri jika mobil. update ();} // end update

Pengkodean sebenarnya cukup mudah dimengerti:

  1. Kosongkan pemandangan.

    Seperti biasa, urutan pertama bisnis di fungsi update () adalah membersihkan ruang bermain. Pastikan Anda menghapus bingkai sebelumnya sebelum melakukan hal lain.

  2. Periksa panah kiri tekan.

    Gunakan tombol untuk mengatur apakah panah kiri ditekan.

  3. Jika panah kiri ditekan, belok kiri mobil.

    Jika pengguna saat ini menekan tombol panah kiri, putar mobil lima derajat berlawanan arah jarum jam. Gunakan metode changeAngleBy () untuk mengubah tampilan visual mobil dan juga arah perjalanannya.

  4. Ulangi untuk panah kanan.

    Cek panah kanan sama, tapi kali ini putar mobil lima derajat searah jarum jam.

  5. Gunakan panah atas untuk mempercepat.

    Jika pengguna menekan panah ke atas, ubah kecepatan mobil. Gunakan nilai positif untuk mempercepat mobil. Ini tidak akan memakan banyak karena kode ini diperiksa 20 kali per detik.

  6. Lambat mobil turun dengan panah bawah.

    Gunakan mekanisme serupa untuk panah bawah.Ubah kecepatan dengan nilai negatif untuk memperlambat mobil. Pendekatan ini memungkinkan nilai negatif, dan mobil akan kembali jika Anda mau.

  7. Gambarkan mobil di posisi barunya.

    Sangat penting untuk diingat bahwa memanggil fungsi gerak sprite tidak mengubah lokasi mobil! Hanya mengubah data internal dalam memori permainan. Anda harus menghubungi metode update mobil () untuk melihat perubahan tindakan ini.

Cara Membuat Interaksi Pengguna di Game HTML5 Anda - dummies

Pilihan Editor

Bagaimana Memeriksa Kinerja Sistem dengan AWS - dummies

Bagaimana Memeriksa Kinerja Sistem dengan AWS - dummies

AWS (Amazon Web Services) memberi Anda sejumlah metode untuk memantau layanan AWS-spesifik. Namun, Anda mungkin memiliki masalah kinerja sistem yang mendasarinya atau masalah aplikasi non-AWS yang harus dihadapi, yang berarti memiliki alat yang dapat bekerja di luar AWS. Paket grup Alat Kinerja berisi sejumlah alat khusus Linux untuk menyelesaikan tugas ini ...

Bagaimana Memilih Layanan AWS yang Anda Butuhkan - kenangan sehari-hari

Bagaimana Memilih Layanan AWS yang Anda Butuhkan - kenangan sehari-hari

Ingat bahwa Anda hanya memiliki 12 bulan kebebasan Anda percobaan untuk membuat keputusan tentang layanan AWS (Amazon Web Services) yang akan digunakan dalam bisnis Anda. Dua belas bulan mungkin tampak seperti banyak waktu, tapi Anda akan mendapati bahwa itu menguap di depan mata Anda saat Anda mencoba menyulap tanggung jawab, pertemuan, dan pertemuan sehari-hari Anda ...

Amazon Web Services For Dummies Cheat Sheet - dummies

Amazon Web Services For Dummies Cheat Sheet - dummies

Amazon Web Services (AWS) adalah penyedia layanan cloud yang menawarkan akses mudah ke berbagai sumber daya komputasi yang berguna, semuanya ditawarkan secara on-demand, dengan biaya yang efektif. Jika Anda seorang praktisi IT yang siap untuk merangkul Amazon Web Services, matikan kebiasaan desain aplikasi lama Anda dan terapkan pendekatan baru yang memanfaatkan karakteristik AWS dan ...

Pilihan Editor

GED Contoh Pertanyaan: Pertanyaan Ilmu Fisik - dummies

GED Contoh Pertanyaan: Pertanyaan Ilmu Fisik - dummies

Ketika Anda mencapai bagian Sains GED, Anda akan diharapkan memiliki pengetahuan umum di semua cabang Ilmu Pengetahuan, termasuk Ilmu Fisika. Berikut adalah contoh jenis pertanyaan yang mungkin Anda hadapi pada hari ujian. Kecepatan dan Kecepatan Ada perbedaan antara kecepatan dan kecepatan, meskipun terkadang Anda ...

Latihan GED RLA: Reading Comprehension - dummies

Latihan GED RLA: Reading Comprehension - dummies

Cara terbaik untuk mempersiapkan bagian pemahaman bacaan GED Tes RLA adalah melakukan sebanyak mungkin pertanyaan latihan. Simak sampel untuk melihat apa yang akan Anda hadapi pada hari ujian. Contoh Pertanyaan Pertanyaan 1-6 mengacu pada bagian berikut. Fasilitas untuk Akses ke Perusahaan Kreatif (FACE) Awalnya didirikan ...

GED Penalaran melalui Latihan Keterampilan Membaca Bahasa Seni - dummies

GED Penalaran melalui Latihan Keterampilan Membaca Bahasa Seni - dummies

Komponen bacaan Penalaran meskipun Bahasa Seni Bagian pada GED terdiri dari kutipan dari fiksi dan nonfiksi. Setiap kutipan diikuti oleh beberapa item pilihan berdasarkan bahan bacaan. Untuk pertanyaan di bagian ini, pilih satu jawaban terbaik untuk setiap pertanyaan. Bekerja dengan hati-hati, tapi jangan terlalu banyak menghabiskan waktu ...

Pilihan Editor

Bagaimana NaturallySpeaking Dapat Belajar dari Email Terkirim - dummies

Bagaimana NaturallySpeaking Dapat Belajar dari Email Terkirim - dummies

Menganalisis e-mail adalah salah satu cara untuk asisten NaturallySpeaking Anda untuk membangun kosa kata Anda. Proses ini membantu dalam dua cara. Ini belajar dari gaya e-mail Anda dan secara otomatis dapat menambahkan alamat e-mail yang Anda gunakan saat ini. Ia bekerja dengan Microsoft Outlook, Outlook. com, Lotus Notes, Gmail, Yahoo! , dan Windows Live Mail. Dari Pusat Akurasi, ...

Bagaimana NaturallySpeaking Berjalan di Latar Belakang - dummies

Bagaimana NaturallySpeaking Berjalan di Latar Belakang - dummies

Secara alamiSpeaking menggunakan beberapa jendela sekaligus. Biasanya, Anda meluncurkan aplikasi, Anda mendapatkan jendela aplikasi, dan Anda bekerja di jendela itu. Akhir dari cerita. Tidak demikian halnya dengan NaturallySpeaking, dan untuk alasan yang bagus: Anda ingin bisa menggunakan input suara di banyak tempat yang berbeda, tidak hanya di satu jendela saja. Inti ...

Bagaimana menambahkan perintah teks otomatis ke nuansa profesional - dummies

Bagaimana menambahkan perintah teks otomatis ke nuansa profesional - dummies

Menambahkan Fitur baru yang hebat yang akan membuat Anda semakin produktif saat menggunakan perintah Dragon Professional Individual Anda. Ini adalah kemampuan untuk menggunakan variabel dalam perintah auto-text Anda. Jadi bagaimana anda bisa menggunakannya? Setelah Anda membuat perintah baru dan menentukan isinya sehingga Anda tidak perlu mengetik ulang ...