塔防游戏制作教程(四)
嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第四节,如何实现炮塔的升级和出售功能。
如何实现炮塔的升级
在炮塔升级时,我们简单地做一些属性的提升以及外表的变化,例如当炮塔升级后,攻击速度提升,攻击范围增大,炮塔变成红色的。
首先,我们为炮塔增加几个局部变量。
攻击速度用于设置炮塔发射子弹的速度。
攻击范围用于设置当前炮塔的攻击范围。
是否已升级用于标识当前的炮塔是否已经进行过升级。
索引相当于当前的炮塔的 ID,我们为每个炮塔设置一个索引,也就是唯一的标识。
炮塔类型用于标识当前的炮塔类型。
对于炮塔的设置,我们增加这样的操作:当创建一个炮塔后,再次点击炮塔,会出现针对当前炮塔的选项,这里创建了一个选项面板,用于处理炮塔的升级和出售。
接着来看一下如何设置选项面板,我们在炮塔上增加点击处理,增加如下的积木逻辑。
这里重点关注一下设置的 3 个全局变量,之前讲过,在小游戏制作工具中,我们需要使用全局变量来进行数据的传递,这里我们将当前选择的炮塔的一些信息记录到全局变量中,在后面的升级和出售处理中会用到。最后,我们将选项面板移动到当前手指点击的位置,然后通知选项面板,让它显示。
出售炮塔的类型用于在出售炮塔时,根据炮塔的不同类型设置不同的出售价格。
当前炮塔是否已升级用于在显示升级处理时,判断当前炮塔是否可以进行升级(当前我们设置每个炮塔只能进行一次升级)。
当前选中炮塔的索引用于记录当前操作的炮塔,在后续操作中可以借此知道操作的是哪一个炮塔。
接下来,看一下选项面板的显示逻辑。
因为我们限定了每个炮塔只能进行一次升级,所以这里根据之前记录的“当前炮塔是否已升级”全局变量的值来设置升级按钮是否可用。
升级按钮点击的积木逻辑。
逻辑很简单,如果玩家的金币数量大于升级需要的金币数量(100个),就进行升级处理,可以看到这里我们发送了两个通知,把不同炮塔的具体升级操作交由炮塔自己进行处理。
最后,看一下炮塔上具体的升级处理积木逻辑。
在升级按钮的点击逻辑中,我们向所有的炮塔发送了“炮塔升级”的通知,所以,游戏中的所有炮塔都会接收到该通知,此时我们如何知道具体要升级的是哪个炮塔呢?这里就需要借助之前设置的“当前选中炮塔索引”这个全局变量了,使用这个变量和炮塔自身的局部变量“索引”进行比对,如果相等的话,就证明了当前需要升级的是该炮塔。确定了要升级的炮塔后,接下来设置一下炮塔的颜色以及两个属性就可以了。
至此,我们就完成了炮塔的升级处理,预览一下炮塔的升级效果。
如何实现炮塔的出售
接下来,看一下选项面板中出售按钮的积木逻辑。
同样很简单,根据之前设置的“出售的炮塔类型”全局变量,设置不同类型炮塔的出售价格,然后向所有的炮塔发送“出售炮塔”通知。
跟炮塔升级逻辑类似,我们也将炮塔出售逻辑放在炮塔自身中处理,来看出售炮塔的积木逻辑。
同样的,根据“当前选中炮塔索引”这个全局变量来决定要删除的是哪个炮塔,删除炮塔后,在当前炮塔的位置重新克隆一个“创建”炮塔的按钮。
预览一下出售炮塔的效果。
至此,如何制作一个塔防小游戏的所有内容就分享完了,这四篇系列教程或许不能帮助做出一个高质量的塔防游戏,但是至少也能够帮助你了解到在一个塔防游戏中都包含了哪些模块,每一个模块的实现思路是怎样的。这个系列教程只能帮助你完成一个基础的框架,至于最终能够做出一个怎样的塔防游戏,这个将由你来决定。
如何做一个塔防小游戏(一)
如何做一个塔防小游戏(二)
如何做一个塔防小游戏(三)
如果觉得这个系列教程对你有帮助,点赞,分享都可以。这会让我知道我写的这些教程能够帮助到他人,这对于我来讲是一种强大的反馈,也让我觉得这件事儿做的很有意义。
塔防游戏的项目的小程序码在这里,可微信识别下方二维码体验。
我是会做游戏也会教你做游戏的小蚂蚁,关注公众号【小蚂蚁教你做游戏】,可免费领取全网最全的微信小游戏开发教程资料。获取塔防小游戏项目模版工程,可添加小蚂蚁vx:xiaomayi6669,备注“塔防小游戏”获取。
塔防游戏制作教程(四)相关推荐
- Cocos2D:塔防游戏制作之旅(十)
最终,draw方法显示这些路径点被放置在哪里,并且绘制出路径点之间的连线,它们仅仅被用作调试.一个成品游戏不应该绘制敌人的路径 - 那对于玩家来说太过容易了! 创建路径点的列表.打开HelloWorl ...
- 微信塔防小游戏开发教程,唤境引擎制作塔防游戏分享
今天带来的是塔防游戏制作攻略! 点击这里来下载工程文件, 点击这里可以下载工程中所用的素材哦~ 预览状态时敌人会从四个生成点随机生成,并且会自动寻路绕过黑色墙体走向红色终点.点击黑色墙体可以创建炮塔, ...
- (译)如何使用cocos2d制作一个塔防游戏:引子
原文链接地址:http://www.iphonegametutorials.com/2011/04/11/cocos2d-game-tutorial-how-to-build-a-tower-defe ...
- 如何制作一个塔防游戏 Cocos2d x 2 0 4
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本文实践 ...
- (译)如何使用cocos2d制作一个塔防游戏:第三部分
原文链接地址:http://www.iphonegametutorials.com/2011/04/19/cocos2d-game-tutorial-%E2%80%93-how-to-build-a- ...
- 如何在unity中制作塔防游戏
塔防游戏非常流行,毫无疑问--没有什么比看着自己的防御消灭讨厌的侵略者更让人满足!在这两部分教程中,用unity来制作一个塔防游戏! 将会学习怎样...... 创建一波敌人 让它们跟随线路点 ...
- Unity3D之塔防游戏的制作(一)
前不久,由于要练习Unity的使用,之前也写了几个小游戏,但是感觉还有一些东西不太熟练,就临时决定来写一下这个塔防游戏,就是模仿一下几年前比较流行的皇家守卫军,(其实我当时也不知道写什么,是别人提的建 ...
- 零基础学CocosCreator·第七季-制作一款塔防游戏
第七季-制作一款塔防游戏 01.塔防前言 为什么是塔防? 准备 02.使用TileMap创建地图 新建地图 获取地图 编辑地图 代码操控 运行 03-16.实战中 04.状态机 代码 08.事件分发器 ...
- unity轻松制作塔防游戏
课程介绍:玩儿过塔防游戏吗?听说过<保卫萝卜>和<塔防战争>吗?本系列课程使用简单易懂的逻辑带你一起剖析这类游戏制作的过程.本案例完美展示了该类项目从搭建到完成的完整架构体系, ...
最新文章
- python中文名的发件人邮件读取解析_如何使用python收取读取邮件?
- C++ 和 Java,你选哪个? | 每日趣闻
- 提交响应后无法调用sendredirect_微服务的那些事(三),微服务的远程调用方式。RPC和HTTP...
- glBegin()和glEnd()之间可调用的函数
- Spring Cloud Alibaba - 14 OpenFeign自定义配置 + 调用优化 + 超时时间
- git查看分支记录_git原理
- [导入]防止你的日志页被人iframe
- Android Bitmap OutOfMemory 解决的方法
- python练习题及答案-听说你python基础入门了?100个经典练习题送给你(附完整答案)...
- 解析kml文件,提取经纬度信息存入csv
- 计算机应用主要学PS,计算机应用专业PS模块考试标准.doc
- 2020上海大学生网络安全赛MISC题WP
- vue-awsome-swiper安装和css引入问题
- win7下安装nodejs
- SitePoint播客#26:力量在于您
- 三星s5pv210核心板全球最低价199元,尽在保定芯灵思
- mac下的c语言贪吃蛇
- 安阳工学院c语言期末考试题库,安阳工学院期末C语言答案.doc
- 【渝粤题库】陕西师范大学164116 网络资源优化与推广 作业 (高起专)
- 基于Rockchip RK3588 Android12 SDK搭建自己的repo 仓库服务器