mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2026-04-05 23:36:12 +00:00
33 lines
763 B
Java
33 lines
763 B
Java
package com.volmit.iris.util;
|
|
|
|
public class ChronoLatch {
|
|
private final long interval;
|
|
private long since;
|
|
|
|
public ChronoLatch(long interval, boolean openedAtStart) {
|
|
this.interval = interval;
|
|
since = System.currentTimeMillis() - (openedAtStart ? interval * 2 : 0);
|
|
}
|
|
|
|
public ChronoLatch(long interval) {
|
|
this(interval, true);
|
|
}
|
|
|
|
public void flipDown() {
|
|
since = System.currentTimeMillis();
|
|
}
|
|
|
|
public boolean couldFlip() {
|
|
return System.currentTimeMillis() - since > interval;
|
|
}
|
|
|
|
public boolean flip() {
|
|
if (System.currentTimeMillis() - since > interval) {
|
|
since = System.currentTimeMillis();
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
}
|