1. 程式人生 > >h5小遊戲構建架設h5棋牌平臺開發制作

h5小遊戲構建架設h5棋牌平臺開發制作

開始 margin post menu 讓我 com 管理啟動 版本 char

還記得貪吃蛇這個經典遊戲嗎?在諾基亞時代,在黑白像素點遊戲機時代,就是這樣一個簡單的遊戲也能讓我們玩上幾個小時。

還有現在最熱門的h5棋牌平臺開發制作Q-2189563389,也都是利用H5開發的

在這篇文章,我們將使用HTML5來重現這個遊戲,基於著名的開源HTML5遊戲框架——Phaser。你將了解到遊戲精靈、遊戲狀態,以及如何使用預加載(preload)、創建(create)與刷新(update)方法。最終效果呈現如下:技術分享圖片

一、開發準備

首先訪問Phaser官網,下載JavaScript版本的 ,選擇用於生產環境的壓縮版phaser.min.js。

項目文件結構如下:技術分享圖片

打開index.html,鏈接五個js文件,並添加頁面標題,啟動遊戲時打開此文件即可:

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>貪吃蛇</title>
    <script src="assets/js/phaser.min.js"></script>
    <script src="assets/js/menu.js"></script>
    <script src="assets/js/game.js"></script>
    <script src="assets/js/gameover.js"></script>
    <script src="assets/js/main.js"></script>
    <style>
        body{
            padding: 0;
            margin: 0;
        }

        canvas{
            margin: 0 auto;
        }
    </style>
</head>

<body>
</body>
</html>



二、遊戲是如何組織的

基於Phaser的遊戲是圍繞“狀態(state)”進行組織的,此處的“狀態”可以看作是遊戲的不同階段,貪吃蛇遊戲的狀態較少,可簡易的分為三個狀態:

菜單狀態,由menu.js處理,僅用於顯示開始界面,點擊轉換到遊戲狀態。
遊戲狀態,由game.js處理,用於顯示遊戲界面、控制貪吃蛇運動,死亡後進入遊戲結束狀態。
遊戲結束狀態,由gameover.js處理,用於顯示結束界面、最終得分,點擊再次回到遊戲狀態。
main.js為主JavaScript文件,在其中創建遊戲實例,註冊各個遊戲狀態。

1、加載圖像

到現在為止,我們僅僅預構了遊戲框架,接下來我們來創建菜單狀態,讓它來顯示遊戲開始界面。

在HTML文件中我們已經引入了Phaser庫,這使我們擁有了一個名為Phaser的全局對象,通過這個對象,我們可以訪問Phaser庫中哪些用於構建遊戲的方法和函數。

現在我們使用Phaser對象來創建一個遊戲實例,這個對象用來代表整個遊戲,我們會為他添加不同的狀態。

main.js

// JavaScript Document
var game;

//新建一600px寬、450px高的遊戲實例
//Game對象用於管理啟動、創建子系統、運行邏輯、渲染
//第三個參數表示要使用的渲染器
//第四個參數表示父級DOM元素
game = new Phaser.Game(600, 450, Phaser.AUTO, ‘‘);

//添加菜單狀態
//第一個參數表示如何調用狀態
//第二個參數是一個包含狀態功能所需方法的對象
game.state.add(‘Menu‘, Menu);

game.state.start(‘Menu‘);

接下來初始化菜單狀態對象(Menu),在menu.js中定義一個新對象Menu並為它添加函數。狀態啟動時,首先會調用preload函數,加載遊戲所需資源;加載完成後,調用create函數,初始化遊戲區域以及其他需要初始化的內容。

menu.js

// JavaScript Document
var Menu = {

preload: function () {
//加載圖像以便於在其上添加遊戲精靈
//第一個參數表示圖像名稱
//第二個參數表示文件路徑
game.load.image(‘menu‘, ‘./assets/images/menu.png‘);
},

create: function () {
//添加一個遊戲精靈,此處添加的精靈為遊戲logo
//參數以此為:X,Y,圖像名稱(見上)
this.add.sprite(0,0,‘menu‘);
}
};

到此,在瀏覽器中打開index.html,即可看到遊戲開始界面,但還無法點擊。(由於瀏覽器的安全限制,可能無法啟動遊戲,那麽則需要一個本地web服務器

h5小遊戲構建架設h5棋牌平臺開發制作