24 lines
		
	
	
		
			519 B
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
		
			519 B
		
	
	
	
		
			C#
		
	
	
	
	
	
using Engine.Core;
 | 
						|
 | 
						|
namespace Engine.Systems.Time;
 | 
						|
 | 
						|
public interface IReadOnlyTimer
 | 
						|
{
 | 
						|
    Event<IReadOnlyTimer> OnStarted { get; }
 | 
						|
    Event<IReadOnlyTimer, TimerDeltaArguments> OnDelta { get; }
 | 
						|
    Event<IReadOnlyTimer> OnStopped { get; }
 | 
						|
 | 
						|
    Event<IReadOnlyTimer> OnPaused { get; }
 | 
						|
    Event<IReadOnlyTimer> OnResumed { get; }
 | 
						|
 | 
						|
    double StartTime { get; }
 | 
						|
    double Remaining { get; }
 | 
						|
 | 
						|
    float Percentage { get; }
 | 
						|
 | 
						|
    TimerState State { get; }
 | 
						|
 | 
						|
    readonly record struct TimerDeltaArguments(double Delta);
 | 
						|
 | 
						|
}
 |