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


Posted in PHP onJune 25, 2014

十五、研究页面(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.最后提交到数据库,更新资源和其他一些信息

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

PHP 相关文章推荐
PHP GD 图像处理组件的常用函数总结
Apr 28 PHP
php下使用curl模拟用户登陆的代码
Sep 10 PHP
初品cakephp 入门基础
Feb 16 PHP
destoon各类调用汇总
Jun 20 PHP
php中有关合并某一字段键值相同的数组合并的改进
Mar 10 PHP
详解PHP编码转换函数应用技巧
Oct 22 PHP
PHP实现上传多文件示例代码
Feb 20 PHP
php pdo操作数据库示例
Mar 10 PHP
Yii2中添加全局函数的方法分析
May 04 PHP
php实现与python进行socket通信的方法示例
Aug 30 PHP
PhpStorm配置Xdebug调试的方法步骤
Feb 02 PHP
PHP容器类的两种实现方式示例
Jul 24 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十一)
Jun 25 #PHP
JavaScript创建命名空间的5种写法
Jun 24 #PHP
PHP获取windows登录用户名的方法
Jun 24 #PHP
PHP获取MySql新增记录ID值的3种方法
Jun 24 #PHP
PHP判断表单复选框选中状态完整例子
Jun 24 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十)
Jun 24 #PHP
PHP网页游戏学习之Xnova(ogame)源码解读(九)
Jun 24 #PHP
You might like
Zerg基本策略
2020/03/14 星际争霸
php将时间差转换为字符串提示
2011/09/07 PHP
PHP开发注意事项总结
2015/02/04 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
JavaScript基本数据类型及值类型和引用类型
2015/08/25 Javascript
jquery实现通用的内容渐显Tab选项卡效果
2015/09/07 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
详解nodejs 文本操作模块-fs模块(四)
2016/12/22 NodeJs
javaScript+turn.js实现图书翻页效果实例代码
2017/02/16 Javascript
jquery仿微信聊天界面
2017/05/06 jQuery
react高阶组件经典应用之权限控制详解
2017/09/07 Javascript
利用nvm管理多个版本的node.js与npm详解
2017/11/02 Javascript
JavaScript封装的常用工具类库bee.js用法详解【经典类库】
2018/09/03 Javascript
细说Vue组件的服务器端渲染的过程
2019/05/30 Javascript
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
Python元组拆包和具名元组解析实例详解
2018/03/26 Python
python用户评论标签匹配的解决方法
2018/05/31 Python
详解Django模版中加载静态文件配置方法
2019/07/21 Python
Python大数据之使用lxml库解析html网页文件示例
2019/11/16 Python
详解Python IO口多路复用
2020/06/17 Python
Python 实现集合Set的示例
2020/12/21 Python
CSS3实现文本垂直排列的方法
2018/07/10 HTML / CSS
美国最灵活的移动提供商:Tello
2017/07/18 全球购物
彪马俄罗斯官网:PUMA俄罗斯
2019/07/13 全球购物
HOTEL INFO英国:搜索全球酒店
2019/08/08 全球购物
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
写自荐信要注意什么
2013/12/26 职场文书
大学生职业生涯设计书
2014/01/02 职场文书
校运会广播稿100字
2014/01/27 职场文书
高中生操行评语
2014/04/25 职场文书
高中生军训感言
2015/08/01 职场文书
中秋节感想
2015/08/10 职场文书
争做文明公民倡议书
2019/06/24 职场文书