用Unity做血条或进度条常用脚本
*
血条或进度条的效果
用Unity3d做血条或进度条真的很方便,GUI里scrollbar就可以轻松实现,再加上lerp一个血条或进度条就完成了。
*/
using UnityEngine;
using System.Collections;
public class BloodBarTest : MonoBehaviour {
public GUISkin theSkin;
public float bloodValue = 0.0f;
private float tmpValue;
private Rect rctBloodBar;
private Rect rctUpButton;
private Rect rctDownButton;
private bool onoff;
// Use this for initialization
void Start () {
rctBloodBar = new Rect (20,20,20,200);
rctUpButton = new Rect (50,20,40,20);
rctDownButton = new Rect (50,50,40,20);
tmpValue = bloodValue;
}
void OnGUI (){
GUI.skin = theSkin;
if (GUI.Button (rctUpButton,"加血")){
tmpValue = -1.0f;
}
if (GUI.Button (rctDownButton,"减血")){
tmpValue += 0.1f;
}
if (bloodValue > 0.0f) tmpValue = 0.0f;
if (bloodValue < -1.0f) tmpValue = -1.0f;
bloodValue = Mathf.Lerp(bloodValue,tmpValue,0.05f);
//~ Debug.Log (bloodValue + " " + tmpValue);
GUI.VerticalScrollbar(rctBloodBar, 1.0f, bloodValue,0.0f, 1.0f,GUI.skin.GetStyle("verticalScrollbar"));
}
// Update is called once per frame
void Update () {
}
}