HTML5遊戲開發進階 6 :加入單位

CopperDong發表於2018-02-12

   建立一個通用且易用的框架,通過該框架就能很容易地向關卡中新增單位,並使用滑鼠選中它們。

6.1 定義單位

   加入以下游戲單位:

建築(Buildings):四種型別的建築

    基地(Base):主建築,建造其他建築的前提

    星港(Starport):用來生產車輛與飛行器

    煉油廠(Harvester):用來從油田中提煉資源

    炮塔(Ground turret):針對敵對車輛的防禦性建築

車輛(Vehicles):四種型別的車輛

    運輸車(Transport):用於運輸物資和人員,沒有裝備武器

    採油車(Harvester):在油田上展開成為煉油廠。

    輕型坦克(Scout tank):輕型、快速的坦克,用來偵查。

    重型坦克(Heavy tank):慢速、裝甲厚、火力強的坦克。

飛行器(Aircraft):兩種型別的飛行器

    直升機(Chopper):慢速移動,可以攻擊地面和空中單位

    戰鬥機(Wraith):快速移動,只能攻擊空中單位

地形(Terrain):除了地圖中已有的地形,還定義了以下兩種地形

    油田(Oil field):礦產資源,通過建立煉油廠可以從資源中獲取資金

    岩石(Rocks):有趣的岩石 

    <!-- 定義遊戲中的單位 -->
    <script src="js/buildings.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/vehicles.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/aircraft.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/terrain.js" type="text/javascript" charset="utf-8"></script>

6.2 第一個物體:主基地

    主基地總是在關卡開始的時候就已經建造完畢,而其他建築則需要有玩家自己建造。只要有足夠的資金,主基地也沒有被摧毀,玩家就可以建造其他建築。

     影像中每一排包括一個預設的動畫迴圈(四幀)、一個損壞狀態的基地(一幀)和建造其他建築時的動畫(三幀)

     building.js

6.3 為關卡新增單位

    使地圖包含預載入的單位型別列表和單位項列表。

6.4 繪製單位

    需要在單位物件內部實現animate()和draw()方法

6.5 新增星港

    用來購買地面或空中單位。

6.6 新增煉油廠

   既是建築又是車輛的單位。

6.7 新增炮塔

   它只能攻擊地面上的敵人,預設模式為guard莫斯。

   direction屬性可以使用0到7的數字

   額外的屬性:是否具有攻擊性、當前的方向、武器的型別等。

6.8 新增車輛

   與炮塔類似 vehicles.js

6.9 新增飛行器

    新增了陰影aircraft.js

6.10 新增地形

    terrain.js

6.11 選中游戲單位

    允許玩家通過單擊或拖動拉框來選中游戲中的單位

6.12 強調選中的單位

    單位中selected屬性



相關文章