色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP網頁游戲學習之Xnova(ogame)源碼解讀(十一)

十四、建筑頁面(BatimentBuildingPage.php

現在開始解析真正的建筑頁面,里面用到的函數不少,不過都不難,我們一起來看。

一開始先檢查星球的已使用空間并更新,使用函數CheckPlaNETUsedFields,這個函數前面講過,實現也不難。

接下來這個是我們前面重點講過的結構,就是判斷是否輸入;所以我們先跳到這段代碼的后面看,但是這里有幾個函數是處理一些建筑隊列的。


1. SetNextQueueElementOnTop:我們講過,處理隊列中的下一個建筑

2. ShowBuildingQueue:構造當前的隊列,代碼雖多,但簡單,有興趣可以自己跟蹤

3. BuildingSavePlaNETRecord:保存前面代碼構造的建筑隊列到數據庫

4.BuildingSaveUserRecord:保存資源積分(事務官)到數據庫

然后要構造建筑頁面,我做一個文字說明,大部分UI的構造不寫:

1.     判斷最大隊列值

2.     計算出當前星球的最大空間

3.     判斷當前的建筑是否可以建造

4.     如果可以造的話,要取得建造時間、所需資源

5.     如果建造的是研究所需要判斷是否在研究

最后就是把前面準備好的各項內容構造出html頁面,這個看看就應該能明白。接下來講解我們跳過的有用戶輸入部分代碼,結構很清晰:

1.     取得用戶輸入的各項參數(實際是點擊的)

2.     判斷要建造的建筑是星球上還是月球上

3.     還有對鏈接合法性的判斷,如果是不合法的,用戶將受到懲罰(嘿嘿)

4.     然后是根據用戶的操作,進入不同的隊列功能

5.     CancelBuildingFromQueue:取消正在建造的建筑

6.     RemoveBuildingFromQueue:從隊列中移除一個建筑

7.     AddBuildingToQueue(true):在隊列中插入一個建造建筑

8.     AddBuildingToQueue(false):在隊列中插入一個取消建筑

9.     ResetThisFuckingCheater:懲罰用戶函數,大家自己看吧

上面幾個函數具體功能可以自己看,都是對隊列的操作,大同小異。

php技術PHP網頁游戲學習之Xnova(ogame)源碼解讀(十一),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 麻城市| 诏安县| 商丘市| 化德县| 涡阳县| 永福县| 会泽县| 潼南县| 穆棱市| 江华| 赫章县| 饶平县| 肃南| 全南县| 刚察县| 鸡泽县| 英山县| 新建县| 文登市| 宿松县| 炎陵县| 乡城县| 铁力市| 鄂温| 福建省| 安西县| 淮安市| 高台县| 太和县| 息烽县| 萝北县| 美姑县| 河津市| 隆昌县| 曲水县| 炉霍县| 苍山县| 新田县| 吉首市| 安乡县| 石台县|