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 静态化实现代码
Mar 20 PHP
PHP 编写大型网站问题集
May 07 PHP
ThinkPHP应用模式扩展详解
Jul 16 PHP
php中有关合并某一字段键值相同的数组合并的改进
Mar 10 PHP
yii2项目实战之restful api授权验证详解
May 20 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
Sep 22 PHP
Linux下 php7安装redis的方法
Nov 01 PHP
PHP面向对象程序设计(OOP)之方法重写(override)操作示例
Dec 21 PHP
php使用mysqli和pdo扩展,测试对比连接mysql数据库的效率完整示例
May 09 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
May 25 PHP
php面向对象基础详解【星际争霸游戏案例】
Jan 23 PHP
php模拟实现斗地主发牌
Apr 22 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
php Sql Server连接失败问题及解决办法
2009/08/07 PHP
在php中设置session用memcache来存储的方法总结
2016/01/14 PHP
jquery 图片Silhouette Fadeins渐显效果
2010/02/07 Javascript
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
javascript采用数组实现tab菜单切换效果
2012/12/12 Javascript
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
将form表单中的元素转换成对象的方法适用表单提交
2014/05/02 Javascript
jquery制作多功能轮播图插件
2015/04/02 Javascript
浅谈JavaScript中的Math.atan()方法的使用
2015/06/14 Javascript
jQuery实现Tab菜单滚动切换的方法
2015/09/21 Javascript
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
2015/12/12 Javascript
精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
2016/07/01 Javascript
完美实现js焦点轮播效果(一)
2017/03/07 Javascript
nodejs搭建本地http服务器教程
2017/03/13 NodeJs
响应式框架Bootstrap栅格系统的实例
2017/12/19 Javascript
基于vue循环列表时点击跳转页面的方法
2018/08/31 Javascript
JavaScript中0、空字符串、'0'是true还是false的知识点分享
2019/09/16 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
vue实现登录拦截
2020/06/29 Javascript
python字符串过滤性能比较5种方法
2017/06/22 Python
解决python3 urllib 链接中有中文的问题
2018/07/16 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
python如何读取bin文件并下发串口
2019/07/05 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
python访问hdfs的操作
2020/06/06 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
scrapy结合selenium解析动态页面的实现
2020/09/28 Python
捷克原创男装和女装购物网站:Bolf.cz
2018/04/28 全球购物
英国领先品牌手动工具和电动工具供应商:Tooled Up
2018/11/24 全球购物
城市规划毕业生求职信
2013/10/10 职场文书
电气工程和自动化自荐信范文
2013/12/25 职场文书
年度考核自我评价
2014/01/25 职场文书
党支部创先争优承诺书
2014/08/30 职场文书
2014个人年终工作总结范文
2014/12/15 职场文书
就业推荐表院系意见
2015/06/05 职场文书