💡返回主题
上节实现效果
前面我们实现了发射子弹:
效果很棒!但现在还有一个小小问题——子弹发射时的初始位置是武器坐标位置,而不是武器的枪口位置:
因此,我们尝试让子弹移到枪口位置。
编写代码
1.首先,子弹克隆出来后,朝前移动一段距离,使其近似移到枪口位置:
2.然后,我们再尝试让子弹往上移一点,以精准地移到枪口:
上面的代码可以让子弹移到枪口。如果你不理解为什么,可以看下面的分步演示视频:
这样,我们就让子弹能从枪口发射了!
但是,如果朝左射击,又会有问题:
这是因为武器朝左时,子弹应该右转来靠近枪口移动,而不是左转:
因此代码调整如下:
完美!
3.最后,我们可以把“移到枪口位置”这个功能,做成一个“自制积木”。
首先,我们知道,下面这一大块代码,实现的其实是一个功能:让子弹移到枪口位置,并面向武器的方向。
如果,我们能把这一大块代码,变成一个积木,那么就会让代码的可读性更好!
这就是接下来我们要介绍的“自制积木”功能: 将 “移到枪口,并面向武器位置” 这一功能的一系列积木做成一个自制积木👇
最终代码如下:
<iframe
width="100%"
height="800px"
scrolling="no"
src="https://www.ccw.site/embed?id=STG101/Arkos/Lec2/04&type=comment"
title="{射击2-让子弹移到枪口的位置}"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowFullScreen
scrolling="0"
></iframe>