diff options
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java')
| -rw-r--r-- | src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java | 98 |
1 files changed, 49 insertions, 49 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java b/src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java index c6981467..a034fa8d 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/util/LerpingFloat.java @@ -1,67 +1,67 @@ package io.github.moulberry.notenoughupdates.util; public class LerpingFloat { - private int timeSpent; - private long lastMillis; - private final int timeToReachTarget; + private int timeSpent; + private long lastMillis; + private final int timeToReachTarget; - private float targetValue; - private float lerpValue; + private float targetValue; + private float lerpValue; - public LerpingFloat(float initialValue, int timeToReachTarget) { - this.targetValue = this.lerpValue = initialValue; - this.timeToReachTarget = timeToReachTarget; - } + public LerpingFloat(float initialValue, int timeToReachTarget) { + this.targetValue = this.lerpValue = initialValue; + this.timeToReachTarget = timeToReachTarget; + } - public LerpingFloat(int initialValue) { - this(initialValue, 200); - } + public LerpingFloat(int initialValue) { + this(initialValue, 200); + } - public void tick() { - int lastTimeSpent = timeSpent; - this.timeSpent += System.currentTimeMillis() - lastMillis; + public void tick() { + int lastTimeSpent = timeSpent; + this.timeSpent += System.currentTimeMillis() - lastMillis; - float lastDistPercentToTarget = lastTimeSpent / (float) timeToReachTarget; - float distPercentToTarget = timeSpent / (float) timeToReachTarget; - float fac = (1 - lastDistPercentToTarget) / lastDistPercentToTarget; + float lastDistPercentToTarget = lastTimeSpent / (float) timeToReachTarget; + float distPercentToTarget = timeSpent / (float) timeToReachTarget; + float fac = (1 - lastDistPercentToTarget) / lastDistPercentToTarget; - float startValue = lerpValue - (targetValue - lerpValue) / fac; + float startValue = lerpValue - (targetValue - lerpValue) / fac; - float dist = targetValue - startValue; - if (dist == 0) return; + float dist = targetValue - startValue; + if (dist == 0) return; - float oldLerpValue = lerpValue; - if (distPercentToTarget >= 1) { - lerpValue = targetValue; - } else { - lerpValue = startValue + dist * distPercentToTarget; - } + float oldLerpValue = lerpValue; + if (distPercentToTarget >= 1) { + lerpValue = targetValue; + } else { + lerpValue = startValue + dist * distPercentToTarget; + } - if (lerpValue == oldLerpValue) { - timeSpent = lastTimeSpent; - } else { - this.lastMillis = System.currentTimeMillis(); - } - } + if (lerpValue == oldLerpValue) { + timeSpent = lastTimeSpent; + } else { + this.lastMillis = System.currentTimeMillis(); + } + } - public void resetTimer() { - this.timeSpent = 0; - this.lastMillis = System.currentTimeMillis(); - } + public void resetTimer() { + this.timeSpent = 0; + this.lastMillis = System.currentTimeMillis(); + } - public void setTarget(float targetValue) { - this.targetValue = targetValue; - } + public void setTarget(float targetValue) { + this.targetValue = targetValue; + } - public void setValue(float value) { - this.targetValue = this.lerpValue = value; - } + public void setValue(float value) { + this.targetValue = this.lerpValue = value; + } - public float getValue() { - return lerpValue; - } + public float getValue() { + return lerpValue; + } - public float getTarget() { - return targetValue; - } + public float getTarget() { + return targetValue; + } } |
