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

2015-01-24信息快讯网

这篇文章主要介绍了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.最后提交到数据库,更新资源和其他一些信息

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

php文件缓存类汇总
php实现事件监听与触发的方法
PHP通过内置函数memory_get_usage()获取内存使用情况
IIS下PHP的三种配置方式对比
PHP程序员常见的40个陋习,你中了几个?
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
php中FTP函数ftp_connect、ftp_login与ftp_chmod用法
php格式输出文件var_export函数实例
javascript some()函数用法详解
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
PHP动态编译出现Cannot find autoconf的解决方法
phpnow php探针环境检测代码
php使用ZipArchive提示Fatal error: Class ZipArchive not found in的解决方法
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
PHP中使用Session配合Javascript实现文件上传进度条功能
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
PHP实现自动登入google play下载app report的方法
destoon切换城市后实现logo旁边显示地区名称的方法
PHP下通过QRCode类库创建中间带网站LOGO的二维码
PHP网页游戏学习之Xnova(ogame)源码解读(十六)
PHP生成随机密码类分享
PHP网页游戏学习之Xnova(ogame)源码解读(十一)
JavaScript创建命名空间的5种写法
PHP获取windows登录用户名的方法
PHP获取MySql新增记录ID值的3种方法
PHP判断表单复选框选中状态完整例子
PHP网页游戏学习之Xnova(ogame)源码解读(十)
PHP网页游戏学习之Xnova(ogame)源码解读(九)
PHP网页游戏学习之Xnova(ogame)源码解读(八)
PHP网页游戏学习之Xnova(ogame)源码解读(七)
©2014-2024 dbsqp.com