💡返回主题
前面我们完成了游戏的大部分功能,这部分我们来做最后一件事,将 4 种不同的敌人合并成一个角色。 虽然将 4 种敌人做成 4 个不同的角色也没什么问题,但是他们有很多相似的代码,如果要修改或者添加敌人共用的代码,往往需要给所有 4 个敌人都修改一遍,非常麻烦。 如果能将 4 个敌人合并成一个角色,就可以共用重复的代码,以及共用音效、造型。后期如果要对重复的代码修改,也更加方便。
1. 首先,我们将普通喵改名为“敌人”。之后我们将会把剩下 3 种敌人合并到普通喵里。
2.将剩下 3 种敌人的造型、音效拖动复制到“敌人”中:
(注意造型复制的顺序,否则铁桶喵的攻击动画顺序可能出错)
• 回到“出兵管理”,创建自制积木“放置敌人”:
带参数的自制积木:自制积木可以增加参数。填入自制积木的值会传入参数,从而在自制积木内部使用。(详见视频里的用法)
3. 然后,回到角色“敌人”,新建私有变量“敌人类型”:
4.敌人克隆出来后,将克隆体的“敌人类型”初始化为放置的敌人类型。
5. 接下来,通过私有变量“敌人类型”来区分不同的敌人,从而添加不同的代码:
- 除了铁桶喵为 8 滴血,其他喵默认为 3 滴血;
- 死亡后,根据敌人类型设置死亡造型。
• 接着,将近战动作做成自制积木:
• 从手枪喵复制远程敌人动作,做成自制积木:
• 填入自制积木参数:
6. 然后,让不同类型的敌人执行不同的动作:
• 这样,4 个敌人的代码就整合到了一个角色里。删除多余的三个角色:
7. 最后,将玩家子弹中,检测碰撞只保留“敌人”:
这样,就实现了“4 合 1”。如果之后还要添加新敌人,或者增改代码,就会更加的容易,提高作品的可维护性。
<iframe
width="100%"
height="800px"
scrolling="no"
src="https://www.ccw.site/embed?id=STG101/Arkos/Lec6/06&type=comment"
title="{射击6-合并敌人}"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowFullScreen
scrolling="0"
></iframe>
本页索引