diff --git a/pom.xml b/pom.xml
index 02bc7326..33a685f9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
NoCheatPlus
- 3.5.4
+ 3.5.4_1
Detect and fight the exploitation of various flaws/bugs in Minecraft.
http://dev.bukkit.org/server-mods/nocheatplus
diff --git a/src/me/neatmonster/nocheatplus/checks/blockbreak/BlockBreakCheckListener.java b/src/me/neatmonster/nocheatplus/checks/blockbreak/BlockBreakCheckListener.java
index 5397b114..82be1ae7 100644
--- a/src/me/neatmonster/nocheatplus/checks/blockbreak/BlockBreakCheckListener.java
+++ b/src/me/neatmonster/nocheatplus/checks/blockbreak/BlockBreakCheckListener.java
@@ -141,6 +141,10 @@ public class BlockBreakCheckListener implements Listener, EventManager {
ignoreCancelled = true, priority = EventPriority.MONITOR)
public void blockInteract(final PlayerInteractEvent event) {
+ // Do not care about null blocks
+ if (event.getClickedBlock() == null)
+ return;
+
final NoCheatPlusPlayer player = plugin.getPlayer(event.getPlayer());
final BlockBreakData data = BlockBreakCheck.getData(player);
// Remember this location. Only blockbreakevents for this specific
diff --git a/src/me/neatmonster/nocheatplus/checks/moving/MovingCheckListener.java b/src/me/neatmonster/nocheatplus/checks/moving/MovingCheckListener.java
index 42b10137..96b81eb3 100644
--- a/src/me/neatmonster/nocheatplus/checks/moving/MovingCheckListener.java
+++ b/src/me/neatmonster/nocheatplus/checks/moving/MovingCheckListener.java
@@ -73,14 +73,18 @@ public class MovingCheckListener implements Listener, EventManager {
// Do not do the check if it's disabled, if flying is allowed, if the player is
// allowed to fly because of its game mode or if he has the required permission.
if (!cc.tracker || cc.allowFlying || bukkitPlayer.getGameMode() == GameMode.CREATIVE
- || bukkitPlayer.getAllowFlight() || bukkitPlayer.hasPermission(Permissions.MOVING_RUNFLY))
+ || bukkitPlayer.getAllowFlight() || bukkitPlayer.hasPermission(Permissions.MOVING_RUNFLY)) {
+ data.fallingSince = 0;
return;
+ }
// If the player is in water or in vines, then do not run the check
if (bukkitPlayer.getLocation().getBlock().getType() == Material.WATER
|| bukkitPlayer.getLocation().getBlock().getType() == Material.STATIONARY_WATER
- || bukkitPlayer.getLocation().getBlock().getType() == Material.VINE)
+ || bukkitPlayer.getLocation().getBlock().getType() == Material.VINE) {
+ data.fallingSince = 0;
return;
+ }
// If the player isn't falling or jumping
if (Math.abs(bukkitPlayer.getVelocity().getY()) > 0.1D) {
@@ -95,8 +99,7 @@ public class MovingCheckListener implements Listener, EventManager {
bukkitPlayer.kickPlayer("Flying isn't enabled on this server!");
data.fallingSince = 0;
}
- } else // The player isn't falling/jumping, check if he was previous on the air
- if (data.fallingSince > 0)
+ } else
// Reset the timer
data.fallingSince = 0;
}