血条的制作有很多的方法,在此介绍使用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绘制血条的方法,需要注意的是血条值变化的判断,祝大家下午愉快!