using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class BarScript : MonoBehaviour { [SerializeField] private float fillAmount; [SerializeField] private Image contentLW; [SerializeField] private Image contentRW; [SerializeField] private Image contentCP; // Use this for initialization void Start () { } // Update is called once per frame void Update () { HandleBar(); } private void HandleBar() { contentLW.fillAmount = Map(XwingController.leftwingHealth, 0, XwingController.maxleftwingHealth, 0, 1); contentRW.fillAmount = Map(XwingController.rightwingHealth,0, XwingController.maxrightwingHealth ,0,1); contentCP.fillAmount = Map(XwingController.cockpitHealth,0, XwingController.maxcockpitHealth ,0,1); } private float Map(float value, float inMin, float inMax, float outMin, float outMax){ return (value - inMin) * (outMax - outMin) / (inMax - inMin) + outMin; //(80 current health - 0) * (1 - 0) / (100 max health - 0) + 0 // 80 * 1 / 100 = 0.8 //(78 - 0) * (1 - 0) / (230 - 0) + 0 //(78) * 1 / 230 = 0.339 } }