大熊貓豬·侯佩原創或翻譯作品.歡迎轉載,轉載請注明出處. 如果覺得寫的不好請告訴我,如果覺得不錯請多多支援點贊.謝謝! hopy ;)
上一篇我們初步看了一下mainscene類的初始化方法裡都做了神馬事,其中随機化地圖是在initgamedatafromgd方法裡做的,我們就來深入看看這個方法.
該方法是一個比較長的方法,裡面又調用了若幹其他方法,我把其中主要的代碼在下面列出來:
該方法裡面比較”雜”,它主要做了如下這些事:
将ios裝置中存儲的資料讀到記憶體中,這樣每次玩的記錄和内容都可以儲存和再加載,這是在loadgamedata方法中完成的,後面會介紹
根據遊戲資料設定hud層中對應的标簽,hud是我們遊戲中的儀表盤:

其中包括了剩餘的生命數,炸彈數,目前累積的分數,目前炸彈的威力大小,遊戲剩餘的時間等等标簽.在實際遊戲中顯示如下:
最左邊那列豎條實際是顯示在螢幕可見範圍之外,需要的時候在彈進來,這裡先不用管吧.
根據遊戲資料設定遊戲主角的屬性:是否可以穿牆和穿炸彈,是否處于高速移動狀态
更新hud中的狀态标簽,調用的是updatestatelabel方法,後面會提及
接下來初始化可布局的所有瓦塊坐标,調用的方法是initnowalltiles方法
然後調用randomcreatemap來建立随機地圖,别急馬上就會講到
初始化所有可達的瓦塊,調用的方法為initwalkabletiles方法
初始化firesprite敵人類中的所有類名稱
根據關卡中的資料”産出”敵人,調用的是spawnfiresprites3方法