14 lines
		
	
	
		
			542 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			542 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| function loopElapsed(elapsed, duration, delay = 0) {
 | |
|     return elapsed - duration - delay;
 | |
| }
 | |
| function reverseElapsed(elapsed, duration, delay = 0, isForwardPlayback = true) {
 | |
|     return isForwardPlayback
 | |
|         ? loopElapsed(duration + -elapsed, duration, delay)
 | |
|         : duration - (elapsed - duration) + delay;
 | |
| }
 | |
| function hasRepeatDelayElapsed(elapsed, duration, delay, isForwardPlayback) {
 | |
|     return isForwardPlayback ? elapsed >= duration + delay : elapsed <= -delay;
 | |
| }
 | |
| 
 | |
| export { hasRepeatDelayElapsed, loopElapsed, reverseElapsed };
 | 
