💡返回主题
前面在实现玩家射击时,我们遗漏了一个点:给玩家添加开火动画。 之所以保留了一部分到现在才讲,其实是故意的(doge)。
因为这部分涉及到私有变量的知识,放在太前面会难以理解。现在经过前面的教程,相信你们已经知道什么是变量、什么是私有变量了,所以我们再回过头讲解这部分的内容~
下面,我们为武器添加射击时的火花动画,是不是更加形象了呢!
绘制开火造型
1. 首先,我们来为武器绘制开火时的造型,开火动画包含 2 帧。由于还有上下翻转后的造型,所以总共要添加 4 个造型:
• 先做第一帧开火造型。
复制“步枪”造型,改名为“步枪开火1”:
• 绘制枪口火焰:
• 接着制作翻转造型:
2. 复制“步枪开火 1”造型,使用之前讲到的技巧制作上下翻转后的造型,命名为“步枪开火 1 左”:
3. 接着,制作第二帧造型“步枪开火 2”,以及对应的翻转造型“步枪开火 2 左”
这样就完成了开火动画的绘制。
编写开火动画代码
我们可以尝试通过下面的代码,实现武器开枪时,播放开火动画。
但是,这里的造型是武器朝右时的造型,没有考虑武器朝左的情况。 而且,左侧的代码在不停的根据玩家方向切换左右造型,导致右侧的设置造型的结果总是会被左边代码中的切换造型的代码覆盖。
为了解决这个问题,我们需要借助变量的力量!
- 首先,为武器新建一个私有变量,命名为“武器造型”(记得选中“仅适用于当前角色”)
2. 接着,将代码作如下修改:
这样,就完美解决了前面的问题! 演示效果:
<iframe
width="100%"
height="800px"
scrolling="no"
src="https://www.ccw.site/embed?id=STG101/Arkos/Lec6/05&type=comment"
title="{射击6-为武器添加开火动画}"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowFullScreen
scrolling="0"
></iframe>