cari
Rumahhujung hadapan webtutorial jsMembuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan

Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan

Kunci Takeaways

  • Loop Game, yang merupakan denyutan jantung dari mana -mana permainan, adalah fungsi yang berjalan banyak kali sesaat dan mempunyai dua pekerjaan utama
  • Mengemas kini apa yang sedang berlaku dan menarik adegan baru. Kelas Ticker Easeljs digunakan untuk menguruskan masa gelung permainan, jeda/meneruskan gelung permainan, dan mengukur masa berlalu.
  • Logik permainan melibatkan menambah fungsi untuk menembak tembakan, mengemas kini paparan, menggerakkan pukulan, mengendalikan hits, dan mengakhiri permainan. The EaseLjs DisplayObjects menyokong kaedah yang paling hangat (), yang memudahkan untuk melihat apakah titik berada di atas kedudukan objek semasa.
Ini adalah yang ketiga dalam satu siri empat jawatan selama empat minggu yang akan menunjukkan kepada anda bagaimana untuk membuat permainan Windows 8 yang mudah, menggunakan HTML5, JavaScript, WinJS, dan CreateJS. Permainan ini didasarkan pada permainan sampel XNA "Lab Wars Catapult". Kami akan menggunakan semula aset dari permainan itu kerana kami membangunkan versi baru untuk Windows 8 yang berdasarkan teknologi web. Dalam jawatan ini, kami akan membawa kehidupan dengan beberapa logik permainan dan JavaScript.

Loop Game

Heartbeat dari mana -mana permainan adalah gelung permainan.  Ini fungsi yang berjalan banyak kali sesaat dan mempunyai dua pekerjaan utama - mengemas kini apa yang sedang berlaku kemudian menarik adegan baru. Dalam Bahagian 2, kami sudah meletakkan garis besar di tempatnya: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Sekarang persoalannya, bagaimana kita mendapatkan fungsi gameloop () bermula, dan terus berjalan banyak kali sesaat?

kelas ticker Easeljs

Nasib baik, Easeljs mempunyai kelas ticker yang mempunyai beberapa ciri yang akan kami gunakan:
  • Menguruskan masa gelung permainan
  • jeda/resume gelung permainan
  • Ukur masa berlalu
Ia adalah kelas statik, jadi kita boleh mula menggunakannya.  Dalam lalai.js, tambahkan fungsi startgame () baru dan panggilnya pada akhir prepedGame (): Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Di sini kami memberitahu Ticker untuk menggunakan Window.RequestanimationFrame untuk mengawal seberapa kerap fungsi Gameloop dipanggil. RequestAnimationFrame adalah API yang agak baru untuk aplikasi web yang membantu memastikan kerja tidak dilakukan dengan tidak perlu.  Untuk memahami mengapa ini boleh menjadi lebih baik daripada menetapkan pemasa tetap (mis. Dengan setTimeout ()), lihat sampel RequestAnimationFrame pada tapak pemacu ujian IE. Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Setiap kali RequestAnimationFrame siap, gelung permainan kami akan berjalan.

"Bersedia, AIM, FIRE!"

Okay, sekarang kami mempunyai permainan dengan gelung permainan yang berjalan, jadi sudah tiba masanya untuk menambah keseronokan! Setiap pemain/catapult akan menembak peluru/batu ke arah yang lain.  Kita perlu tahu sama ada tembakan sedang terbang, siapa yang menghidupkannya, dan bagaimana pukulan bergerak. Pertama, mari kita tambahkan lebih banyak pembolehubah kepada lalai.js: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Sekarang mari kita gunakan sebahagian daripada mereka dengan menambahkan yang berikut ke fungsi kemas kini (): Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Buat masa ini, kedua -dua pemain secara automatik membakar (pada halaju rawak) pada giliran mereka.  Ammobitmap dipindahkan ke pusat atas tembakan tembakan, dan kelembapan tembakan diberikan nilai rawak dalam julat yang dibatasi (diselaraskan untuk resolusi skrin.) Kami juga akan menambah fungsi fireshot () untuk menunjukkan pukulan dan memberitahu permainan yang ada di udara: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan  

Mengemas kini paparan

Sebelum kita menggerakkan tembakan melalui udara, mari fokus pada separuh ke -2 persamaan gelung permainan - melukis ke skrin.  Ini selalunya sangat kompleks, tetapi peringkat Easeljs menjaga lukisan kandungan kami (semua kanak -kanak - bitmaps, teks, dan lain -lain - kami menambah ke panggung) ke kanvas, jadi ini semua yang kita perlukan: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Itu sahaja!  Jika anda menjalankan permainan, Player 1 akan secara automatik dan pukulan akan muncul di atas Catapult Merah ... Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan ... tetapi ia tidak akan berganjak.  Mari kita dapat bergerak.

menggerakkan pukulan

Mari kita kembali ke fungsi kemas kini () dan tambahkan logik ke pernyataan IF (ShotisFlying): Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Jangan lari lagi, kita masih memerlukan dua fungsi, tetapi inilah yang berlaku:
  • garis 149 & 150 - gerakkan pukulan dengan menambahkan halaju (yang mungkin negatif untuk naik dan/atau kiri)
  • baris 151 - Guna graviti untuk melambatkan halaju
  • garis 153-155-Adakah pukulan memukul tanah atau pergi dari tepi kiri atau kanan skrin?
  • garis 157-160-terlepas-tamatkan pemain pukulan dan menukar
  • Lines 162-168-Pukulan Pemain 1-Lihat jika ia melanda Player 2. Jika ya, kemas kini kehidupan Pemain 2.
  • Lines 169-175-Pukulan Pemain 2-Lihat jika ia melanda Player 1. Jika ya, kemas kini kehidupan Pemain 1.
Mari tambahkan pemeriksaan (bitmap) fungsi: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Apa itu perbincangan tentang Hittest?  Easeljs DisplayObjects (di mana bitmap berasaskan) menyokong kaedah yang paling hangat (), yang menjadikannya sangat mudah untuk melihat apakah titik berada di atas kedudukan objek semasa.  Malangnya, kami mensyaratkan objek dan paling hangat hanya berfungsi dengan saiz asal, jadi kami perlu menyemak hits sendiri.  Hanya sedikit matematik dan kami ditetapkan.

mengendalikan hits

Sekarang, tambahkan ProcessHit () fungsi: Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Ini hanya menamatkan pukulan, mengubah pemain, dan memastikan permainan tidak berakhir.

mengakhiri permainan

Mari kita tamatkan jawatan ini dengan mengakhiri permainan.  Tambahkan fungsi endgame (imej): Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Itu sahaja!  Sekarang anda boleh menjalankan permainan dan melihat siapa yang menang. Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan

Apa yang akan datang?

Kami telah menambah banyak di bahagian ini - perkara -perkara yang melukis, bergerak, memukul, berakhir ... tetapi terdapat dua lubang ternganga.  Pertama, pemain sebenarnya tidak bermain, jadi kami akan menambah pemprosesan input seterusnya.  Kedua, perkara -perkara yang sangat tenang, terutamanya untuk perang, jadi kami akan melemparkan beberapa bunyi juga. Ke Bahagian 4: Minggu depan!

soalan yang sering ditanya mengenai membuat permainan Windows 8 yang mudah dengan JavaScript

Bagaimana saya boleh mula membuat permainan dengan JavaScript untuk Windows 8?

Untuk mula membuat permainan dengan JavaScript untuk Windows 8, anda perlu mempunyai pemahaman asas tentang JavaScript dan HTML5. Anda juga perlu memasang Visual Studio, yang merupakan persekitaran pembangunan untuk aplikasi Windows 8. Sebaik sahaja anda mempunyai prasyarat ini, anda boleh mulakan dengan membuat projek baru di Visual Studio dan memilih template "Blank App". Dari sana, anda boleh mula menulis logik permainan anda di JavaScript dan mereka bentuk antara muka permainan anda dengan HTML5 dan CSS. Bahasa pengaturcaraan yang boleh digunakan untuk membuat pelbagai permainan. Beberapa contoh termasuk permainan teka -teki, permainan strategi, platformer, dan juga permainan 3D. Kemungkinannya tidak berkesudahan, dan dengan alat dan sumber yang betul, anda boleh membuat apa -apa jenis permainan yang boleh anda bayangkan.

Bagaimana saya boleh menambah interaktiviti ke permainan JavaScript saya?

Interaktiviti dalam permainan JavaScript boleh dicapai melalui pengendali acara. Ini adalah fungsi yang dicetuskan apabila peristiwa tertentu berlaku, seperti klik tetikus atau akhbar utama. Sebagai contoh, anda boleh menggunakan acara 'onclick' untuk mencetuskan fungsi apabila pengguna mengklik pada elemen permainan, atau acara 'onkeydown' untuk memindahkan watak apabila pengguna menekan kekunci. Ujian dan debug permainan JavaScript saya?

Ujian dan penyahpepijatan adalah bahagian penting dalam pembangunan permainan. Visual Studio menyediakan alat debugging yang kuat yang membolehkan anda melangkah melalui kod anda, memeriksa pembolehubah, dan mengenal pasti sebarang kesilapan atau pepijat. Anda juga boleh menggunakan konsol untuk log mesej dan menjejaki pelaksanaan kod anda.

Bagaimana saya boleh mengoptimumkan permainan JavaScript saya untuk prestasi? . Ini termasuk meminimumkan penggunaan pembolehubah global, menggunakan RequestAnimationFrame untuk gelung permainan, mengoptimumkan imej dan aset anda, dan menggunakan algoritma yang cekap untuk logik permainan. Ia juga penting untuk menguji permainan anda pada pelbagai peranti dan penyemak imbas untuk memastikan ia berjalan lancar. ke permainan JavaScript menggunakan API audio HTML5. Ini membolehkan anda memuatkan dan memainkan fail bunyi, mengawal kelantangan, dan juga membuat kesan bunyi. Anda juga boleh menggunakan perpustakaan seperti Howler.js untuk memudahkan proses dan menambah ciri audio yang lebih maju.

Bagaimana saya boleh menerbitkan permainan JavaScript saya di kedai Windows? Permainan anda, anda boleh menerbitkannya di kedai Windows dengan membuat akaun kedai, mendaftarkan aplikasi anda, dan menyerahkannya untuk pensijilan. Anda perlu menyediakan tangkapan skrin, keterangan, dan maklumat lain mengenai permainan anda. Sebaik sahaja permainan anda diluluskan, ia akan tersedia untuk dimuat turun di kedai Windows.

Bolehkah saya mengewangkan permainan JavaScript saya? Satu pilihan ialah menjual permainan anda di kedai Windows. Anda juga boleh memasukkan pembelian dalam aplikasinya, di mana pemain boleh membeli kandungan atau ciri tambahan. Pilihan lain adalah untuk memaparkan iklan dalam permainan anda, walaupun ini harus dilakukan dengan berhati -hati untuk mengelakkan mengganggu pengalaman permainan. Tidak terhad kepada Windows 8 atau mana -mana platform tertentu. Dengan alat dan perpustakaan yang betul, anda boleh membuat permainan yang berjalan pada pelbagai platform, termasuk pelayar web, peranti mudah alih, dan juga konsol permainan. Beberapa perpustakaan yang popular untuk pembangunan permainan silang platform dengan JavaScript termasuk phaser, pixi.js, dan tiga.js.

di mana saya boleh mengetahui lebih lanjut mengenai perkembangan permainan dengan JavaScript?

Terdapat banyak sumber yang tersedia dalam talian untuk belajar tentang perkembangan permainan dengan JavaScript. Laman web seperti W3Schools, Rangkaian Pemaju Mozilla, dan CodeCademy menawarkan tutorial dan panduan mengenai pembangunan JavaScript dan permainan. Terdapat juga banyak buku, kursus dalam talian, dan forum di mana anda boleh belajar dan mendapatkan bantuan daripada pemaju lain.

Atas ialah kandungan terperinci Membuat permainan Windows 8 yang mudah dengan JavaScript: Logik Permainan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Rangka Kerja JavaScript: Menguasai Pembangunan Web ModenRangka Kerja JavaScript: Menguasai Pembangunan Web ModenMay 02, 2025 am 12:04 AM

Kuasa rangka kerja JavaScript terletak pada pembangunan yang memudahkan, meningkatkan pengalaman pengguna dan prestasi aplikasi. Apabila memilih rangka kerja, pertimbangkan: 1.

Hubungan antara JavaScript, C, dan penyemak imbasHubungan antara JavaScript, C, dan penyemak imbasMay 01, 2025 am 12:06 AM

Pengenalan Saya tahu anda mungkin merasa pelik, apa sebenarnya yang perlu dilakukan oleh JavaScript, C dan penyemak imbas? Mereka seolah -olah tidak berkaitan, tetapi sebenarnya, mereka memainkan peranan yang sangat penting dalam pembangunan web moden. Hari ini kita akan membincangkan hubungan rapat antara ketiga -tiga ini. Melalui artikel ini, anda akan mempelajari bagaimana JavaScript berjalan dalam penyemak imbas, peranan C dalam enjin pelayar, dan bagaimana mereka bekerjasama untuk memacu rendering dan interaksi laman web. Kita semua tahu hubungan antara JavaScript dan penyemak imbas. JavaScript adalah bahasa utama pembangunan front-end. Ia berjalan secara langsung di penyemak imbas, menjadikan laman web jelas dan menarik. Adakah anda pernah tertanya -tanya mengapa Javascr

Aliran node.js dengan typescriptAliran node.js dengan typescriptApr 30, 2025 am 08:22 AM

Node.js cemerlang pada I/O yang cekap, sebahagian besarnya terima kasih kepada aliran. Aliran memproses data secara berperingkat, mengelakkan beban memori-ideal untuk fail besar, tugas rangkaian, dan aplikasi masa nyata. Menggabungkan sungai dengan keselamatan jenis typescript mencipta powe

Python vs JavaScript: Pertimbangan Prestasi dan KecekapanPython vs JavaScript: Pertimbangan Prestasi dan KecekapanApr 30, 2025 am 12:08 AM

Perbezaan prestasi dan kecekapan antara Python dan JavaScript terutamanya dicerminkan dalam: 1) sebagai bahasa yang ditafsirkan, Python berjalan perlahan tetapi mempunyai kecekapan pembangunan yang tinggi dan sesuai untuk pembangunan prototaip pesat; 2) JavaScript adalah terhad kepada benang tunggal dalam penyemak imbas, tetapi I/O multi-threading dan asynchronous boleh digunakan untuk meningkatkan prestasi dalam node.js, dan kedua-duanya mempunyai kelebihan dalam projek sebenar.

Asal JavaScript: Meneroka Bahasa PelaksanaannyaAsal JavaScript: Meneroka Bahasa PelaksanaannyaApr 29, 2025 am 12:51 AM

JavaScript berasal pada tahun 1995 dan dicipta oleh Brandon Ike, dan menyedari bahasa itu menjadi C. 1.C Language menyediakan keupayaan pengaturcaraan prestasi tinggi dan sistem untuk JavaScript. 2. Pengurusan memori JavaScript dan pengoptimuman prestasi bergantung pada bahasa C. 3. Ciri lintas platform bahasa C membantu JavaScript berjalan dengan cekap pada sistem operasi yang berbeza.

Di sebalik tabir: Apa bahasa JavaScript?Di sebalik tabir: Apa bahasa JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript berjalan dalam penyemak imbas dan persekitaran Node.js dan bergantung pada enjin JavaScript untuk menghuraikan dan melaksanakan kod. 1) menjana pokok sintaks abstrak (AST) di peringkat parsing; 2) menukar AST ke bytecode atau kod mesin dalam peringkat penyusunan; 3) Laksanakan kod yang disusun dalam peringkat pelaksanaan.

Masa Depan Python dan JavaScript: Trend dan RamalanMasa Depan Python dan JavaScript: Trend dan RamalanApr 27, 2025 am 12:21 AM

Trend masa depan Python dan JavaScript termasuk: 1. Kedua -duanya akan terus mengembangkan senario aplikasi dalam bidang masing -masing dan membuat lebih banyak penemuan dalam prestasi.

Python vs JavaScript: Persekitaran dan Alat PembangunanPython vs JavaScript: Persekitaran dan Alat PembangunanApr 26, 2025 am 12:09 AM

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual