From 7adef836879de33fdb6ab3511800fa38832ef72f Mon Sep 17 00:00:00 2001 From: asofold Date: Tue, 5 Mar 2013 20:21:29 +0100 Subject: [PATCH] Change resetting of yOnGround for NoFall. Use CheckConfig to determine if it is necessary. Move resetting to a method. Collect block flags again. --- .../nocheatplus/checks/moving/NoFall.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/NCPPlugin/src/main/java/fr/neatmonster/nocheatplus/checks/moving/NoFall.java b/NCPPlugin/src/main/java/fr/neatmonster/nocheatplus/checks/moving/NoFall.java index db00eca8..c28d7251 100644 --- a/NCPPlugin/src/main/java/fr/neatmonster/nocheatplus/checks/moving/NoFall.java +++ b/NCPPlugin/src/main/java/fr/neatmonster/nocheatplus/checks/moving/NoFall.java @@ -96,6 +96,11 @@ public class NoFall extends Check { final double oldNFDist = data.noFallFallDistance; + // Reset-cond is not touched by yOnGround. + // TODO: Distinguish water depth vs. fall distance ? + final boolean fromReset = from.isResetCond(); + final boolean toReset = to.isResetCond(); + // Adapt yOnGround if necessary (sf uses another setting). if (yDiff < 0 && cc.yOnGround < cc.noFallyOnGround) { // In fact this is somewhat heuristic, but it seems to work well. @@ -104,12 +109,9 @@ public class NoFall extends Check { adjustYonGround(from, to , cc.noFallyOnGround); } - // TODO: Distinguish water depth vs. fall distance! - final boolean fromOnGround = from.isOnGround(); - final boolean fromReset = from.isResetCond(); final boolean toOnGround = to.isOnGround(); - final boolean toReset = to.isResetCond(); + // TODO: early returns (...) @@ -182,13 +184,11 @@ public class NoFall extends Check { * @param cc */ private void adjustYonGround(final PlayerLocation from, final PlayerLocation to, final double yOnGround) { - if (!from.isResetCond() && !from.isOnGround()){ + if (!from.isOnGround()){ from.setyOnGround(yOnGround); - from.collectBlockFlags(yOnGround); } - if (!to.isResetCond() && !to.isOnGround()){ + if (!to.isOnGround()){ to.setyOnGround(yOnGround); - to.collectBlockFlags(yOnGround); } }