服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - PHP教程 - PHP网页游戏学习之Xnova(ogame)源码解读(十二)

PHP网页游戏学习之Xnova(ogame)源码解读(十二)

2020-07-11 15:31铁船长 PHP教程

这篇文章主要介绍了PHP网页游戏Xnova(ogame)源码解读研究页面部分,需要的朋友可以参考下

十五、研究页面(ResearchBuildingPage.php)

研究因为没有队列,所以相对简单一些;但是也有一些比较特殊的东西。我们先看研究之前的一个处理函数HandleTechnologieBuild()。

这个函数是处理现在的科技研究的,其中b_tech_planet字段是研究的星球ID,b_tech字段是完成研究的时间点,b_tech_id字段是研究的具体科技字段名。函数逻辑不难,我就不仔细讲解了,大家自己看看,下面正式进入研究页面:

首先要检查当前星球是否有研究所。

然后检查当前星球的建筑队列中是否有研究所,使用函数CheckLabSettingsInQueue()检查;此函数略过。

接下来又是前面的结构,我们先看下面的构造代码,循环:

1.判断是否是科技研究

2.判断是否可以进行这项研究,主要是vars.php文件中的前置条件检查

3.取得研究的需要资源

4.取得研究的需要时间

5.然后判断这样研究是否可以进行

6.下面是个分支:如果没有研究在进行,那么构造出下一等级的html;如果有研究在进行,就构造出研究剩余的时间

7.最后输出页面

现在回到前面,讲解玩家点击研究的逻辑。分成两段逻辑,一是研究、二是取消研究。

1.研究:先进行一些安全检查,然后取得所需资源和时间,构造扣除资源等语句

2.取消研究:取得所需资源,构造退回资源等语句

3.最后提交到数据库,更新资源和其他一些信息

研究页面的逻辑比起前面建筑页面简单多了,下一章将是造船厂页面。

延伸 · 阅读

精彩推荐