用Unity做血条或进度条真的很方便,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;
-
-
- 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);
-
- GUI.VerticalScrollbar(rctBloodBar, 1.0f, bloodValue,0.0f, 1.0f,GUI.skin.GetStyle("verticalScrollbar"));
- }
-
-
- void Update () {
-
- }
- }
本文出处【狗刨学习网】