using UnityEngine; using UnityEngine.UI; public class EyeReactionSimple : MonoBehaviour, IListener { public Slider left = null; public Slider right = null; [Space] public Slider left2 = null; public Slider right2 = null; private EyeSimulation eyeSim; private float minVal = 8; private float maxVal = 30; public void OnEvent<T>(EVENT_TYPE eventType, Component Sender, T param = default) { if(eventType == EVENT_TYPE.ON_FIRE_MISSED) { if (Mathf.Abs(eyeSim.angleLH) > minVal) { left.value = right2.value = 1; right.value = left2.value = 1 - ((Mathf.Clamp(Mathf.Abs(eyeSim.angleLH), minVal, maxVal) - minVal) / (maxVal - minVal)); } else if (Mathf.Abs(eyeSim.angleRH) > minVal) { left.value = right2.value = 1 - ((Mathf.Clamp(Mathf.Abs(eyeSim.angleRH), minVal, maxVal) - minVal) / (maxVal - minVal)); right.value = left2.value = 1; } else { left.value = right.value = left2.value = right2.value = 1; } } } void Awake() { eyeSim = GetComponent<EyeSimulation>(); } void Start() { EventManager.Instance.AddListener(EVENT_TYPE.ON_FIRE_MISSED, this); } }