如何做一个塔防小游戏(四)

简介: 嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第四节,如何实现炮塔的升级和出售功能。

嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第四节,如何实现炮塔的升级和出售功能。


如何实现炮塔的升级



在炮塔升级时,我们简单地做一些属性的提升以及外表的变化,例如当炮塔升级后,攻击速度提升,攻击范围增大,炮塔变成红色的。


首先,我们为炮塔增加几个局部变量。


640.png

攻击速度用于设置炮塔发射子弹的速度。

攻击范围用于设置当前炮塔的攻击范围。

是否已升级用于标识当前的炮塔是否已经进行过升级。

索引相当于当前的炮塔的 ID,我们为每个炮塔设置一个索引,也就是唯一的标识。

炮塔类型用于标识当前的炮塔类型。

对于炮塔的设置,我们增加这样的操作:当创建一个炮塔后,再次点击炮塔,会出现针对当前炮塔的选项,这里创建了一个选项面板,用于处理炮塔的升级出售


640.png


接着来看一下如何设置选项面板,我们在炮塔上增加点击处理,增加如下的积木逻辑。


640.png


这里重点关注一下设置的 3 个全局变量,之前讲过,在小游戏制作工具中,我们需要使用全局变量来进行数据的传递,这里我们将当前选择的炮塔的一些信息记录到全局变量中,在后面的升级和出售处理中会用到。最后,我们将选项面板移动到当前手指点击的位置,然后通知选项面板,让它显示。


640.png

出售炮塔的类型用于在出售炮塔时,根据炮塔的不同类型设置不同的出售价格。

当前炮塔是否已升级用于在显示升级处理时,判断当前炮塔是否可以进行升级(当前我们设置每个炮塔只能进行一次升级)。

当前选中炮塔的索引用于记录当前操作的炮塔,在后续操作中可以借此知道操作的是哪一个炮塔。

接下来,看一下选项面板的显示逻辑。


640.png


因为我们限定了每个炮塔只能进行一次升级,所以这里根据之前记录的“当前炮塔是否已升级”全局变量的值来设置升级按钮是否可用。


升级按钮点击的积木逻辑。


640.png


逻辑很简单,如果玩家的金币数量大于升级需要的金币数量(100个),就进行升级处理,可以看到这里我们发送了两个通知,把不同炮塔的具体升级操作交由炮塔自己进行处理。


最后,看一下炮塔上具体的升级处理积木逻辑。


640.png


在升级按钮的点击逻辑中,我们向所有的炮塔发送了“炮塔升级”的通知,所以,游戏中的所有炮塔都会接收到该通知,此时我们如何知道具体要升级的是哪个炮塔呢?这里就需要借助之前设置的“当前选中炮塔索引”这个全局变量了,使用这个变量和炮塔自身的局部变量“索引”进行比对,如果相等的话,就证明了当前需要升级的是该炮塔。确定了要升级的炮塔后,接下来设置一下炮塔的颜色以及两个属性就可以了。


至此,我们就完成了炮塔的升级处理,预览一下炮塔的升级效果。


640.gif


如何实现炮塔的出售



接下来,看一下选项面板中出售按钮的积木逻辑。


640.png


同样很简单,根据之前设置的“出售的炮塔类型”全局变量,设置不同类型炮塔的出售价格,然后向所有的炮塔发送“出售炮塔”通知。


跟炮塔升级逻辑类似,我们也将炮塔出售逻辑放在炮塔自身中处理,来看出售炮塔的积木逻辑。


640.png


同样的,根据“当前选中炮塔索引”这个全局变量来决定要删除的是哪个炮塔,删除炮塔后,在当前炮塔的位置重新克隆一个“创建”炮塔的按钮。


预览一下出售炮塔的效果。


a94b53175a7847bf543452e749a699e0.gif


至此,如何制作一个塔防小游戏的所有内容就分享完了,这四篇系列教程或许不能帮助做出一个高质量的塔防游戏,但是至少也能够帮助你了解到在一个塔防游戏中都包含了哪些模块,每一个模块的实现思路是怎样的。这个系列教程只能帮助你完成一个基础的框架,至于最终能够做出一个怎样的塔防游戏,这个将由你来决定。


相关文章
|
22天前
|
前端开发 安全 开发者
贪吃蛇游戏创作手记:从构思到优化
使用通义灵码辅助开发贪吃蛇游戏的过程,从游戏框架搭建到代码优化,详细记录了遇到的问题及解决方案。重点讨论了安全性、逻辑Bug、异常处理、边界条件、性能效率和可维护性等方面的优化措施,最终成功完成游戏开发
贪吃蛇游戏创作手记:从构思到优化
|
5月前
|
前端开发 JavaScript
前端复刻经典小游戏之飞机大战(一)
前端复刻经典小游戏之飞机大战(一)
58 1
|
5月前
|
前端开发 JavaScript 测试技术
前端复刻经典小游戏之飞机大战(二)
前端复刻经典小游戏之飞机大战(二)
85 0
|
5月前
|
前端开发 JavaScript 安全
前端复刻经典小游戏之飞机大战(三)
前端复刻经典小游戏之飞机大战(三)
53 0
|
小程序 索引
如何做一个塔防小游戏(四)
嗨!大家好,我是小蚂蚁。今天我们继续分享制作一个塔防小游戏的第四节,如何实现炮塔的升级和出售功能。 在炮塔升级时,我们简单地做一些属性的提升以及外表的变化,例如当炮塔升级后,攻击速度提升,攻击范围增大,炮塔变成红色的。
111 0
|
小程序 容器
如何做一个塔防小游戏(一)
实现一个防守塔非常的简单,因为小游戏制作工具已经为我们提供了现成的“行为”了。 选中作为炮塔的精灵,然后在属性区的下方点击“管理行为”按钮,在行为对话框中开启“炮塔”行为。这个行为已经为我们提供了制作一个防守塔所需的大部分的功能了。
163 0
|
小程序 索引
如何做一个塔防小游戏(二)
为了方便设置炮塔的位置,可以使用一个精灵图片作为标识,图中我使用了黄色的五角星作为炮塔位置的标识,可以在场景区中直接拖拽五角星对炮塔的位置进行设置。然后在游戏启动后我们将使用炮塔创建按钮来替换这些五角星的位置。
102 0
|
小程序 索引
如何做一个泡泡龙游戏(二)
嗨!大家好,我是小蚂蚁。今天我们继续学习制作一个泡泡龙游戏。 绝大部分的泡泡龙游戏都是关卡制的,你玩过了一关,然后接着再玩下一关。每个关卡其实都是预先设计好的,闯关的过程就是游戏将一个一个设计好的关卡呈现给玩家的过程。这些关卡都是怎样设计的呢?游戏又是怎样将这些设计好的关卡呈现出来的呢?欢迎带着这两个疑问开启今天的阅读之旅。
143 0
|
小程序
如何做个泡泡龙游戏(四)
嗨!大家好,我是小蚂蚁。在上一节中,我们学习了泡泡的发射,移动,反弹和停靠。所有的这些都是以计算的方式来实现的,我们没有选择使用物理,碰撞检测这些方式,因为泡泡龙游戏需要一定的精准性,而通过在每一帧进行计算,可以保证游戏的精准。
115 0
|
算法 小程序
如何做一个泡泡龙游戏(五)
嗨!大家好,我是小蚂蚁。我们今天来继续学习泡泡龙游戏中最核心的东西:查找匹配算法。 其实这也不算是什么新东西了,如果你有看过我的其它关于消除游戏的教程,应该会知道,消除游戏的查找算法就那么一个,不论何种类型的消除游戏,这个算法的核心是不变的,只不过会根据不同类型的消除稍作调整而已。所以,如果你之前对查找算法还不是很了解的话,那么就尝试跟随着这篇教程把它彻底搞懂吧!
118 0
下一篇
无影云桌面