admin 管理员组文章数量: 887006
页游php制作原理,PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十三)
十六、造船和防御(FleetBuildingPage.php与DefensesBuildingPage.php页面)
先说造船厂页面,其实这个页面中并没有真正的造船,只是把要造的船和数量保存到数据库中;产生船舰的代码在另外一个函数里面。下面我们开始分析这个页面,并且也按照前面的思路,先讲解构造页面的代码。
首先判断本星球是否已有造船厂,没有当然要提示。
下面使用循环语句,构造出每种船舰的建造页面,这段代码我觉得不需要再详细讲解了。
接下来是要显示正在制造的船舰列表,要脚本动态显示,实际上是假像;即使显示有船舰造好了,如果不是刷新,数据库里面并不会有。注意这里有两个重要的字段:b_hangar_id保存着要造的船列表;b_hangar保存着上次更新后剩下的时间,单位是秒。
使用函数ElementBuildListBox(),构造出一个正在造船的脚本,函数代码大家自己看,不难,只要理解了前面我说的两个字段就可以了。
最后输出造船厂页面。
现在我们又回到前面,玩家输入要制造的船舰的数量,进入这段代码。
1.取得要制造的船舰代码和数量
2.判断制造的数量是否超过允许的最大值,超过则取最大值
3.如果制造数量不为零,判断是否允许制造
4.然后取得当前资源能制造的最大值
5.设置资源消耗和时间消耗
6.最后更新星球数据,包括减少资源和建造船舰的字段b_hangar_id,贴出代码如下:
if ($Count >= 1) {
$CurrentPlanet['metal'] -= $Ressource['metal'];
$CurrentPlanet['crystal'] -= $Ressource['crystal'];
$CurrentPlanet['deuterium'] -= $Ressource['deuterium'];
$CurrentPlanet['b_hangar_id'].= "". $Element .",". $Count .";";
}
造船厂页面完成了,下面我们来看防御页面。这个页面基本逻辑和造船厂一样,这里就不写了。不同的是多一些逻辑限制,罗列出来如下:
1.在构造防御单位页面的时候,代码407和408是大小防御护盾,要注意只能有一个
2.在玩家输入数量后的制造代码里面,代码502和503是拦截导弹和星际导弹,要注意两个导弹的数量关系和正在制造列表里面的导弹数量
3.同样使用字段b_hangar_id保存
造船和防御页面简单的讲解完了,最重要的制造代码在另外一个函数里面,下一章节分析。相关阅读:
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
ThinkPHP利用PHPMailer实现邮件发送实现代码
JavaScript实现显示函数调用堆栈的方法
jquery获取元素索引值index()示例
JS获取单击按钮单元格所在行的信息
Win10桌面图标不见了找出来呢?
十种办法解决安装Win10 TH2正式版卡住不动的问题
javacript获取当前屏幕大小
php银联网页支付实现方法
javascript函数定义的几种区别小结
C#备忘录模式(Memento Pattern)实例教程
简介PHP的Yii框架中缓存的一些高级用法
Win XP自动 批处理文件 清除机器狗病毒
css设置div背景颜色的方法
版权声明:本文标题:页游php制作原理,PHP 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1732351956h1533335.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论