Unity3D---使用GUI實現血條的製作
阿新 • • 發佈:2019-02-03
血條的製作有很多的方法,在此介紹使用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繪製血條的方法,需要注意的是血條值變化的判斷,祝大家下午愉快!