Unity3D---使用GUI实现血条的制作

血条的制作有很多的方法,在此介绍使用GUI制作血条的方法,希望对大家有所帮助:

using UnityEngine;
using System.Collections;

public class PlayerHealth : MonoBehaviour {
    //玩家最大血量
    public int maxHealth =100;
    //玩家当前血量
    public int curHealth = 100;
    //血条的长度
    public float healthBarLength;

    void Start () {
        //设置血条的长度等于屏幕宽度的一半
        healthBarLength = Screen.width / 2;
    }


    void Update () {
        //使用自定义调节当前血量的方法
        AdjustCurHealth (0);
    }
    void OnGUI () {
        //使用GUI.Box绘制血条
        GUI.Box (new Rect (10, 10, healthBarLength, 20), curHealth + "/" + maxHealth);
    }
    //自定义调节当前血量的方法
    public void AdjustCurHealth (int adj) {
        curHealth += adj;
        //判断当前血量是否小于零,如果小于零,则设置当前血量等于零
        if (curHealth < 0) {
            curHealth = 0;
                }
       //判断当前血量是否大于最大血量,如果大于最大血量,则设置当前血量等于最大血量
        if (curHealth>maxHealth ) {
            curHealth = maxHealth;
                }
        //判断最大血量是否小于1,如果小于1,则设置最大血量等于1
        if (maxHealth < 1) {
            maxHealth = 1; 
                }
        //血条值的变化
        healthBarLength = (Screen.width / 2) * (curHealth / (float)maxHealth);
    }
}

以上就是GUI绘制血条的方法,需要注意的是血条值变化的判断,祝大家下午愉快!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值