Unity学习之绘制血条及仇恨距离

编程入门 行业动态 更新时间:2024-10-26 14:31:11

Unity学习之绘制血条及仇恨<a href=https://www.elefans.com/category/jswz/34/1768622.html style=距离"/>

Unity学习之绘制血条及仇恨距离

欢迎大家来到我的博客.php?mod=space&uid=3352&do=blog&view=me&from=space

在Unity中如何绘制人物血条

思路就是使用GUI绘制两张图片,一张图片是红色图片,一张图片是黑色图片,黑色图片条是固定的,然后红色图片是人物的生命值,再利用人物生命值减少,增加的百分比来绘制红色图片的宽度,这样就可做出人物血条的效果。

//红色血条 

    public Texture2D blood_Red;

    //黑色血条 

    public Texture2D blood_Black;

    //当前血值 

    public int HP = 100;

 

    void OnGUI()

{

//测试生命值增加的自动生成的按钮

        if (GUILayout.RepeatButton("Add"))

        {

            //增加血值 

            if (HP < 100)

            {

                HP++;

            }

        }

//测试生命值减少的自动生成的按钮

        if (GUILayout.RepeatButton("Sub"))

        {

            //减少血值 

            if (HP > 0)

            {

                HP--;

            }

        }

        //根据当前血量计算红色血条显示的宽度 

        int blood_width = blood_Red.width * HP / 100;

        //绘制黑色血条 

        GUI.DrawTexture(new Rect(100, 100, blood_Black.width, blood_Black.height), blood_Black);

        //绘制红色血条 

        GUI.DrawTexture(new Rect(100, 100, blood_width, blood_Red.height), blood_Red);

}

利用Vector3中的Distance方法计算两个三维坐标之间的距离来进行到达怪物仇恨距离,怪物自动攻击

if (Vector3.Distance(transform.position, hero.position) < 2f)

            {

                if (lifeTime > 0)

                {

                    AnimationToAttack();

                }

                else if (lifeTime == 0)

                {

                    AnimationToDying();

                }

 

            }

请继续关注我的博客

.php?mod=space&uid=3352&do=blog&view=me&from=space

更多精彩尽在/

更多推荐

Unity学习之绘制血条及仇恨距离

本文发布于:2024-02-11 04:03:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1679027.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:距离   Unity

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!