最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP網(wǎng)頁(yè)游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十三)

 更新時(shí)間:2014年06月26日 18:05:14   作者:鐵船長(zhǎng)  
這篇文章主要介紹了PHP網(wǎng)頁(yè)游戲Xnova(ogame)源碼解讀的造船與防御代碼部分,需要的朋友可以參考下

十六、造船和防御(FleetBuildingPage.php與DefensesBuildingPage.php頁(yè)面)

先說(shuō)造船廠頁(yè)面,其實(shí)這個(gè)頁(yè)面中并沒(méi)有真正的造船,只是把要造的船和數(shù)量保存到數(shù)據(jù)庫(kù)中;產(chǎn)生船艦的代碼在另外一個(gè)函數(shù)里面。下面我們開(kāi)始分析這個(gè)頁(yè)面,并且也按照前面的思路,先講解構(gòu)造頁(yè)面的代碼。

首先判斷本星球是否已有造船廠,沒(méi)有當(dāng)然要提示。

下面使用循環(huán)語(yǔ)句,構(gòu)造出每種船艦的建造頁(yè)面,這段代碼我覺(jué)得不需要再詳細(xì)講解了。

接下來(lái)是要顯示正在制造的船艦列表,要腳本動(dòng)態(tài)顯示,實(shí)際上是假像;即使顯示有船艦造好了,如果不是刷新,數(shù)據(jù)庫(kù)里面并不會(huì)有。注意這里有兩個(gè)重要的字段:b_hangar_id保存著要造的船列表;b_hangar保存著上次更新后剩下的時(shí)間,單位是秒。

使用函數(shù)ElementBuildListBox(),構(gòu)造出一個(gè)正在造船的腳本,函數(shù)代碼大家自己看,不難,只要理解了前面我說(shuō)的兩個(gè)字段就可以了。

最后輸出造船廠頁(yè)面。

現(xiàn)在我們又回到前面,玩家輸入要制造的船艦的數(shù)量,進(jìn)入這段代碼。

1.取得要制造的船艦代碼和數(shù)量
2.判斷制造的數(shù)量是否超過(guò)允許的最大值,超過(guò)則取最大值
3.如果制造數(shù)量不為零,判斷是否允許制造
4.然后取得當(dāng)前資源能制造的最大值
5.設(shè)置資源消耗和時(shí)間消耗
6.最后更新星球數(shù)據(jù),包括減少資源和建造船艦的字段b_hangar_id,貼出代碼如下:

if ($Count >= 1) {
 $CurrentPlanet['metal'] -= $Ressource['metal'];
 $CurrentPlanet['crystal'] -= $Ressource['crystal'];
 $CurrentPlanet['deuterium'] -= $Ressource['deuterium'];
 $CurrentPlanet['b_hangar_id'].= "". $Element .",". $Count .";";
}

造船廠頁(yè)面完成了,下面我們來(lái)看防御頁(yè)面。這個(gè)頁(yè)面基本邏輯和造船廠一樣,這里就不寫(xiě)了。不同的是多一些邏輯限制,羅列出來(lái)如下:

1.在構(gòu)造防御單位頁(yè)面的時(shí)候,代碼407和408是大小防御護(hù)盾,要注意只能有一個(gè)
2.在玩家輸入數(shù)量后的制造代碼里面,代碼502和503是攔截導(dǎo)彈和星際導(dǎo)彈,要注意兩個(gè)導(dǎo)彈的數(shù)量關(guān)系和正在制造列表里面的導(dǎo)彈數(shù)量
3.同樣使用字段b_hangar_id保存

造船和防御頁(yè)面簡(jiǎn)單的講解完了,最重要的制造代碼在另外一個(gè)函數(shù)里面,下一章節(jié)分析。

相關(guān)文章

最新評(píng)論

霸州市| 松滋市| 松滋市| 广平县| 资阳市| 龙南县| 海阳市| 永川市| 正阳县| 清新县| 牟定县| 隆昌县| 安顺市| 靖边县| 梁山县| 罗山县| 美姑县| 陕西省| 治县。| 呼伦贝尔市| 盐池县| 华坪县| 恩平市| 南丹县| 洞头县| 宣威市| 灌南县| 乌鲁木齐县| 资阳市| 和政县| 香港 | 十堰市| 尼勒克县| 永善县| 织金县| 连州市| 秭归县| 绥滨县| 壶关县| 若尔盖县| 怀集县|