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

 更新时间:2014年06月25日 09:12:50   作者:铁船长  
这篇文章主要介绍了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.最后提交到数据库,更新资源和其他一些信息

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

相关文章

  • Nginx+php配置文件及原理解析

    Nginx+php配置文件及原理解析

    这篇文章主要介绍了Nginx+php配置文件及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12
  • workerman结合laravel开发在线聊天应用的示例代码

    workerman结合laravel开发在线聊天应用的示例代码

    聊天功能是很常见的一种功能,Workerman是一款开源高性能异步PHP socket即时通讯框架。这篇文章主要介绍了workerman结合laravel开发在线聊天应用,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • ThinkPHP框架实现FTP图片上传功能示例

    ThinkPHP框架实现FTP图片上传功能示例

    这篇文章主要介绍了ThinkPHP框架实现FTP图片上传功能,结合实例形式分析了thinkPHP框架实现ftp图片上传功能相关的配置、文件传输功能等操作技巧,需要的朋友可以参考下
    2019-04-04
  • 详解Laravel服务容器的绑定与解析

    详解Laravel服务容器的绑定与解析

    本篇文章给大家带来的内容是关于Laravel服务容器的绑定与解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助
    2019-11-11
  • laravel中的fillable和guarded属性详解

    laravel中的fillable和guarded属性详解

    今天小编就为大家分享一篇laravel中的fillable和guarded属性详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • 如何让CI框架支持service层

    如何让CI框架支持service层

    本文主要介绍了在controller和model中加一个业务层service,由它来负责业务逻辑,封装好的调用接口可以被controller复用,提高了通用的业务逻辑的复用性,设计到具体业务实现会调用Model的接口。
    2014-10-10
  • php之header的不同用法总结(实例讲解)

    php之header的不同用法总结(实例讲解)

    下面小编就为大家分享一篇php之header的不同用法总结(实例讲解),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • Zend Framework入门教程之Zend_Registry组件用法详解

    Zend Framework入门教程之Zend_Registry组件用法详解

    这篇文章主要介绍了Zend Framework入门教程之Zend_Registry组件用法,结合实例形式分析了Zend_Registry组件实现对象注册的设置、获取、判断、删除等操作常用技巧,需要的朋友可以参考下
    2016-12-12
  • 一个比较简单的PHP 分页分组类

    一个比较简单的PHP 分页分组类

    最近写的一个PHP 分页分组类,写完后才看到,网上有太多的了,但是这个比较简单,记到此处,备用,对于学习php的朋友也是一个不错的参考。
    2009-12-12
  • PHP连接access数据库

    PHP连接access数据库

    本文给大家介绍的是在php中使用ADO来链接ACCESS数据库的方法的示例,非常的的简单使用,推荐给有需要的小伙伴们参考下。
    2015-03-03

最新评论