Files
test/Assets/PerfectWorld/Scripts/Move/CECCounter.cs
T
2026-05-05 16:09:25 +07:00

61 lines
1.4 KiB
C#

using BrewMonster;
using UnityEngine;
public class CECCounter
{
// Thuộc tính
public float m_dwCounter; // Counter
public float m_dwPeriod; // Count period
// Constructor
public CECCounter()
{
m_dwCounter = 0;
m_dwPeriod = 0;
}
// Set / Get period
public void SetPeriod(float dwPeriod) { m_dwPeriod = dwPeriod; }
public float GetPeriod() { return m_dwPeriod; }
// Set / Get counter
public void SetCounter(float dwCounter) { m_dwCounter = dwCounter; }
public float GetCounter() { return m_dwCounter; }
// Has counter reached period ?
public bool IsFull()
{
return (m_dwCounter >= m_dwPeriod);
}
// Reset counter
public void Reset(bool bFull = false)
{
m_dwCounter = bFull ? m_dwPeriod : 0;
}
// Increase counter
public bool IncCounter(float dwCounter)
{
m_dwCounter += dwCounter;
return (m_dwCounter >= m_dwPeriod) ? true : false;
}
public bool IncCounter(float dwCounter, out float fCounter, out float fPeriod)
{
m_dwCounter += dwCounter;
fCounter = m_dwCounter;
fPeriod = m_dwPeriod;
return (m_dwCounter >= m_dwPeriod) ? true : false;
}
// Decrease counter
public void DecCounter(float dwCounter)
{
if (m_dwCounter <= dwCounter)
m_dwCounter = 0;
else
m_dwCounter -= dwCounter;
}
}