Files
test/Assets/PerfectWorld/Scripts/UI/GamePlay/SkillUI/AUIClockIcon.cs
T

49 lines
1.3 KiB
C#

using System;
using UnityEngine;
using UnityEngine.UI;
namespace BrewMonster
{
public class AUIClockIcon : MonoBehaviour
{
[SerializeField] private Image m_ClockIcon;
[SerializeField] private int m_iMin;
[SerializeField] private int m_iMax;
[SerializeField] private int m_iPos;
public Image GetClockIcon() => m_ClockIcon;
public void SetProgressPos(float progress)
{
progress = Math.Clamp(progress, m_iMin, m_iMax);
m_ClockIcon.fillAmount = progress;
UpdateClockIcon();
BMLogger.LogError("AUIClockIcon SetProgressPos ");
}
public void SetProgressRange(int min, int max)
{
if (min >= max)
{
BMLogger.LogError("AUIClockIcon SetProgressRange min should be greater than max ");
return;
}
m_iMin = min;
m_iMax = max;
m_iPos = Math.Clamp(m_iPos, m_iMin, m_iMax);
}
private void Update()
{
if (m_iPos != m_iMin)
{
UpdateClockIcon();
}
}
private void UpdateClockIcon()
{
float progress = (float)(m_iPos - m_iMin) / (m_iMax - m_iMin);
m_ClockIcon.fillAmount = progress;
}
}
}