1. 程式人生 > >Cocos Creator | 飛刀大亂鬥開發教程系列(一)

Cocos Creator | 飛刀大亂鬥開發教程系列(一)

預覽效果

具體內容

■ 這一期,主要講解主頁下方列表選項如何實現。也就是遊戲開始後,載入所有現有的英雄列表,這一功能的實現,如下圖部分。

■ 列表使用 ScrollView 實現,橫向滾動,設定好上下左右的邊距、選項之間的間距,內容部分使用 Layout 來做自動排版,最終列表顯示內容,如上圖所示即可。

■ 重點是列表中的英雄預製體。預製體一共有三種狀態:已解鎖、使用中、未解鎖。具體顯示效果如下圖所示。遊戲中儲存每一級英雄的狀態,根據狀態資料,繪製英雄列表顯示。

狀態的顯示控制

■ 如上所述,一共有三種狀態,理論上,遊戲開始時,只有第一關是解鎖的,後面的關卡根據遊戲的進行,不斷的開啟。預製的狀態由一個變數控制,不同值表示不同狀態。

■ 預製節點下,留有不同狀態的根節點,根據英雄不同的狀態,控制不同狀態的節點顯示以達到狀態變化的效果。

英雄武器顯示控制

■ 英雄和武器,都是總共 12 個等級,根據不同的等級,選擇對應的英雄和武器紋理,進行紋理的動態更新即可,下圖中的英雄有兩種狀態,後期操作需要用到,目前可以忽視 _p 結尾的, _n 是這次需要用到的。

 

■ 武器和英雄,都依託在一個精靈上,對應的紋理,使用紋理資料儲存即可,為了方便,會按照等級順序儲存,這樣方便取出等級紋理圖片。

英雄選擇控制

■ 因為在遊戲過程中,一次只能使用一個英雄,所以使用中狀態的英雄,永遠只會有一個。而且,未解鎖的英雄,是無法使用的,點選也需要做特別處理。

■ 如上圖程式碼,在選擇的時候,需要判斷新選擇的是否和之前的一樣,這種不需要做處理;如果獲取到新選擇的英雄未解鎖,目前是沒有做其他任何處理的。

■ 新增英雄的時候,需要給每個預製體註冊一個回撥函式,預製體點選的時候,會呼叫註冊的函式,為了獲取點選的節點,需要把預製體本身節點傳遞出來。

 

載入英雄列表

■ 遊戲一開始,根據英雄列表資料,繪製英雄列表,資料單機的,儲存在記憶體。儲存的資料包括:各等級的英雄名稱,狀態資訊,後續遊戲過程中,觸發某些條件,再更新對應資料,重新繪製列表即可,如果有需要,也可以儲存起來,目前是用來學習的 demo,就暫時用全域性變數儲存。