diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/FastClimb.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/FastClimb.java index 98c94c22b37..0d60143a1ca 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/FastClimb.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/FastClimb.java @@ -49,7 +49,7 @@ public class FastClimb extends Module { .build() ); - private boolean resetTimer; + private boolean hasTimerOverride; public FastClimb() { super(Categories.Movement, "fast-climb", "Allows you to climb faster."); @@ -57,22 +57,31 @@ public FastClimb() { @Override public void onActivate() { - resetTimer = false; + hasTimerOverride = false; + } + + @Override + public void onDeactivate() { + resetTimer(); } @EventHandler private void onPreTick(TickEvent.Pre event) { - if (timerMode.get()) { - if (climbing()) { - resetTimer = false; - Modules.get().get(Timer.class).setOverride(timer.get()); - } else if (!resetTimer) { - Modules.get().get(Timer.class).setOverride(Timer.OFF); - resetTimer = true; - } + if (timerMode.get() && climbing()) { + hasTimerOverride = true; + Modules.get().get(Timer.class).setOverride(timer.get()); + } else { + resetTimer(); } } + private void resetTimer() { + if (!hasTimerOverride) return; + + Modules.get().get(Timer.class).setOverride(Timer.OFF); + hasTimerOverride = false; + } + @EventHandler private void onTick(TickEvent.Post event) { if (!timerMode.get() && climbing()) { diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/NoSlow.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/NoSlow.java index a3c9f01f61a..e670868f8a1 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/NoSlow.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/movement/NoSlow.java @@ -104,7 +104,7 @@ public class NoSlow extends Module { .build() ); - private boolean resetTimer; + private boolean hasTimerOverride; public NoSlow() { super(Categories.Movement, "no-slow", "Allows you to move normally when using objects that will slow you."); @@ -112,7 +112,12 @@ public NoSlow() { @Override public void onActivate() { - resetTimer = false; + hasTimerOverride = false; + } + + @Override + public void onDeactivate() { + resetTimer(); } public boolean airStrict() { @@ -161,17 +166,21 @@ public boolean slowness() { @EventHandler private void onPreTick(TickEvent.Pre event) { - if (web.get() == WebMode.Timer) { - if (mc.level.getBlockState(mc.player.blockPosition()).getBlock() == Blocks.COBWEB && !mc.player.onGround()) { - resetTimer = false; - Modules.get().get(Timer.class).setOverride(webTimer.get()); - } else if (!resetTimer) { - Modules.get().get(Timer.class).setOverride(Timer.OFF); - resetTimer = true; - } + if (web.get() == WebMode.Timer && mc.level.getBlockState(mc.player.blockPosition()).getBlock() == Blocks.COBWEB && !mc.player.onGround()) { + hasTimerOverride = true; + Modules.get().get(Timer.class).setOverride(webTimer.get()); + } else { + resetTimer(); } } + private void resetTimer() { + if (!hasTimerOverride) return; + + Modules.get().get(Timer.class).setOverride(Timer.OFF); + hasTimerOverride = false; + } + public enum WebMode { Vanilla, Timer,