PHP网页游戏学习之Xnova(ogame)源码解读(十一)
十四、建筑页面(BatimentBuildingPage.php)
现在开始解析真正的建筑页面,里面用到的函数不少,不过都不难,我们一起来看。
一开始先检查星球的已使用空间并更新,使用函数CheckPlaUsedFields,这个函数前面讲过,实现也不难。
接下来这个是我们前面重点讲过的结构,就是判断是否输入;所以我们先跳到这段代码的后面看,这里有几个函数是处理一些建筑队列的。
1. SetNextQueueElementOnTop我们讲过,处理队列中的下一个建筑
2. ShowBuildingQueue构造当前的队列,代码虽多,但简单,有兴趣可以自己跟踪
3. BuildingSavePlaRecord保存前面代码构造的建筑队列到数据库
4.BuildingSaveUserRecord保存资源积分(事务官)到数据库
然后要构造建筑页面,我做一个文字说明,大部分UI的构造不写
1. 判断最大队列值
2. 计算出当前星球的最大空间
3. 判断当前的建筑是否可以建造
4. 如果可以造的话,要取得建造时间、所需资源
5. 如果建造的是研究所需要判断是否在研究
就是把前面准备好的各项内容构造出html页面,这个看看就应该能明白。接下来讲解我们跳过的有用户输入部分代码,结构很清晰
1. 取得用户输入的各项参数(实际是点击的)
2. 判断要建造的建筑是星球上还是月球上
3. 还有对链接合法性的判断,如果是不合法的,用户将受到惩罚(嘿嘿)
4. 然后是根据用户的操作,进入不同的队列功能
5. CancelBuildingFromQueue取消正在建造的建筑
6. RemoveBuildingFromQueue从队列中移除一个建筑
7. AddBuildingToQueue(true)在队列中插入一个建造建筑
8. AddBuildingToQueue(false)在队列中插入一个取消建筑
9. ResetThisFuckingCheater惩罚用户函数,大家自己看吧
上面几个函数具体功能可以自己看,都是对队列的操作,大同小异。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指