From 4b85875c1884ae49d53540e20f3fbad68fa93f2b Mon Sep 17 00:00:00 2001 From: jedk1 Date: Wed, 25 Nov 2015 21:23:27 +0000 Subject: [PATCH] Fix BendingPlayer NPE of player log out --- src/com/projectkorra/projectkorra/airbending/AirBlast.java | 3 +++ src/com/projectkorra/projectkorra/airbending/AirSpout.java | 5 ++--- src/com/projectkorra/projectkorra/airbending/AirSuction.java | 3 +++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/com/projectkorra/projectkorra/airbending/AirBlast.java b/src/com/projectkorra/projectkorra/airbending/AirBlast.java index fae8c571..c9982a5e 100644 --- a/src/com/projectkorra/projectkorra/airbending/AirBlast.java +++ b/src/com/projectkorra/projectkorra/airbending/AirBlast.java @@ -130,6 +130,9 @@ public class AirBlast implements ConfigLoadable { if (!origins.containsKey(player)) return; Location origin = origins.get(player); + if (player.isDead() || !player.isOnline()) + return; + if (!origin.getWorld().equals(player.getWorld())) { origins.remove(player); return; diff --git a/src/com/projectkorra/projectkorra/airbending/AirSpout.java b/src/com/projectkorra/projectkorra/airbending/AirSpout.java index ff0a1459..581c1b09 100644 --- a/src/com/projectkorra/projectkorra/airbending/AirSpout.java +++ b/src/com/projectkorra/projectkorra/airbending/AirSpout.java @@ -94,10 +94,9 @@ public class AirSpout implements ConfigLoadable { } public boolean progress() { - if (!GeneralMethods.canBend(player.getName(), "AirSpout") + if (player.isDead() || !player.isOnline() || !GeneralMethods.canBend(player.getName(), "AirSpout") // || !Methods.hasAbility(player, Abilities.AirSpout) - || player.getEyeLocation().getBlock().isLiquid() || GeneralMethods.isSolid(player.getEyeLocation().getBlock()) - || player.isDead() || !player.isOnline()) { + || player.getEyeLocation().getBlock().isLiquid() || GeneralMethods.isSolid(player.getEyeLocation().getBlock())) { remove(); return false; } diff --git a/src/com/projectkorra/projectkorra/airbending/AirSuction.java b/src/com/projectkorra/projectkorra/airbending/AirSuction.java index fbe30134..8a667612 100644 --- a/src/com/projectkorra/projectkorra/airbending/AirSuction.java +++ b/src/com/projectkorra/projectkorra/airbending/AirSuction.java @@ -103,6 +103,9 @@ public class AirSuction implements ConfigLoadable { if (!origins.containsKey(player)) return; Location origin = origins.get(player); + if (player.isDead() || !player.isOnline()) + return; + if (!origin.getWorld().equals(player.getWorld())) { origins.remove(player); return;