59 lines
1.4 KiB
Java
59 lines
1.4 KiB
Java
import net.runelite.mapping.Export;
|
|
import net.runelite.mapping.Implements;
|
|
import net.runelite.mapping.ObfuscatedGetter;
|
|
import net.runelite.mapping.ObfuscatedName;
|
|
import net.runelite.mapping.ObfuscatedSignature;
|
|
|
|
@ObfuscatedName("ex")
|
|
@Implements("NanoClock")
|
|
public class NanoClock extends Clock {
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedGetter(
|
|
longValue = 3916314053745196243L
|
|
)
|
|
@Export("lastTimeNano")
|
|
long lastTimeNano;
|
|
|
|
public NanoClock() {
|
|
this.lastTimeNano = System.nanoTime(); // L: 10
|
|
} // L: 11
|
|
|
|
@ObfuscatedName("i")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(I)V",
|
|
garbageValue = "1421350581"
|
|
)
|
|
@Export("mark")
|
|
public void mark() {
|
|
this.lastTimeNano = System.nanoTime(); // L: 14
|
|
} // L: 15
|
|
|
|
@ObfuscatedName("w")
|
|
@ObfuscatedSignature(
|
|
descriptor = "(III)I",
|
|
garbageValue = "1121035205"
|
|
)
|
|
@Export("wait")
|
|
public int wait(int var1, int var2) {
|
|
long var3 = 1000000L * (long)var2; // L: 18
|
|
long var5 = this.lastTimeNano - System.nanoTime(); // L: 19
|
|
if (var5 < var3) { // L: 20
|
|
var5 = var3;
|
|
}
|
|
|
|
FloorUnderlayDefinition.method3190(var5 / 1000000L); // L: 21
|
|
long var7 = System.nanoTime(); // L: 22
|
|
|
|
int var9;
|
|
for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += (long)var1 * 1000000L) { // L: 23 24 26
|
|
++var9; // L: 25
|
|
}
|
|
|
|
if (this.lastTimeNano < var7) { // L: 28
|
|
this.lastTimeNano = var7;
|
|
}
|
|
|
|
return var9; // L: 29
|
|
}
|
|
}
|