血条制作以及移动

血条制作以及移动

……

……

血条是游戏中很常见的游戏物品。

我记录一下我制作血条以及血条跟随角色移动的方法。

首先。

要剖析一下血条。

一般来说。

角色的血条都是绿色的。

而一旦角色掉血的话,掉血的部分就会变成黑色。

比如这样:

所以。

这里就需要用到UI中的Image。

绿色的部分是一个Image。

而黑色的部分,也是一个Image。

而脚本逻辑所要做到的就是让角色在掉血的时候,控制绿色Image的缩放。

有些人可能会想。

如果缩放的话,那岂不是绿色部分直接就缩小了吗?怎么往左边缩了?

这里就不得不提到Pivot。

只要把Pivot设置到上图所示的坐标,就可以按照比例向左减少血条,在代码中也可以很方便的进行控制。

如下图所示,如果角色的HP小于等于0就直接游戏失败了,就调用游戏失败的方法。而如果HP大于0的话,就先算出HP的比例,然后下面调用localScale对x进行按比例缩小,就可以实现血条的控制了。

……

……

那怎么让血条跟随角色移动呢?

如上图所示。

可以看到,我调用了主摄像机,将一个HP_pos.position转化为了屏幕坐标。

那么,这个HP_pos.position是什么呢?其实,这个其实是一个空物体的坐标。很简单,比如说,我需要把血条挂在角色的脑袋上,那么,我这个空物体的位置就在角色的脑袋上(这个空物体是角色的子物体,这样就可以跟随角色一起移动),就是这样。

然后下面那句代码,hp_Panel就是血条(血条的黑色Image为父物体,绿色Image为子物体,这里是移动父物体hp_Panel),将血条移动到我第一句代码所设置的3D位置所代表的屏幕坐标。也就是说,把血条移动到角色的脑袋上。

并且,由于是在Update中执行,所以血条会随着角色的变化而变化。

这样,就实现了一个简单的血条跟随角色移动的逻辑。

……

……

猜你喜欢

转载自blog.csdn.net/oyqho/article/details/129942439