forked from LeenkxTeam/LNXSDK
		
	
		
			
	
	
		
			38 lines
		
	
	
		
			868 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			868 B
		
	
	
	
		
			Haxe
		
	
	
	
	
	
| 
								 | 
							
								package iron.system;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								class Time {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									public static var step(get, never): Float;
							 | 
						||
| 
								 | 
							
									static function get_step(): Float {
							 | 
						||
| 
								 | 
							
										if (frequency == null) initFrequency();
							 | 
						||
| 
								 | 
							
										return 1 / frequency;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									public static var scale = 1.0;
							 | 
						||
| 
								 | 
							
									public static var delta(get, never): Float;
							 | 
						||
| 
								 | 
							
									static function get_delta(): Float {
							 | 
						||
| 
								 | 
							
										if (frequency == null) initFrequency();
							 | 
						||
| 
								 | 
							
										return (1 / frequency) * scale;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									static var last = 0.0;
							 | 
						||
| 
								 | 
							
									public static var realDelta = 0.0;
							 | 
						||
| 
								 | 
							
									public static inline function time(): Float {
							 | 
						||
| 
								 | 
							
										return kha.Scheduler.time();
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									public static inline function realTime(): Float {
							 | 
						||
| 
								 | 
							
										return kha.Scheduler.realTime();
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									static var frequency: Null<Int> = null;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									static function initFrequency() {
							 | 
						||
| 
								 | 
							
										frequency = kha.Display.primary != null ? kha.Display.primary.frequency : 60;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									public static function update() {
							 | 
						||
| 
								 | 
							
										realDelta = realTime() - last;
							 | 
						||
| 
								 | 
							
										last = realTime();
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								}
							 |