diff options
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/game')
3 files changed, 9 insertions, 3 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java b/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java index e18a309..fbae413 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java @@ -186,7 +186,9 @@ public class Game { PlayerLoader.unloadPlayer(player); if(saveInventory) { ItemStack[] data = Main.getInstance().getDatabase().getInventoryData().getInventory(player.getUniqueId()); - player.getInventory().setContents(data); + try { + player.getInventory().setContents(data); + } catch (NullPointerException ignored){} } if (announceMessagesToNonPlayers) Bukkit.broadcastMessage(messagePrefix + message("GAME_LEAVE").addPlayer(player)); else broadcastMessage(messagePrefix + message("GAME_LEAVE").addPlayer(player)); diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java index 1dd6cfc..290b679 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java @@ -51,7 +51,7 @@ public class MovementHandler implements Listener { if (!Main.getInstance().getBoard().contains(event.getPlayer())) return; if (!event.getPlayer().getWorld().getName().equals(Main.getInstance().getGame().getCurrentMap().getGameSpawnName())) return; if (!event.getTo().getWorld().getName().equals(Main.getInstance().getGame().getCurrentMap().getGameSpawnName())) return; - if (event.getPlayer().hasPermission("hideandseek.leavebounds")) return; + if (event.getPlayer().hasPermission("hs.leavebounds")) return; Map map = Main.getInstance().getGame().getCurrentMap(); if (event.getTo().getBlockX() < map.getBoundsMin().getBlockX() || event.getTo().getBlockX() > map.getBoundsMax().getBlockX() || event.getTo().getBlockZ() < map.getBoundsMin().getZ() || event.getTo().getBlockZ() > map.getBoundsMax().getZ()) { event.setCancelled(true); diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/PlayerHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/PlayerHandler.java index d34cb11..64ed728 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/PlayerHandler.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/PlayerHandler.java @@ -13,6 +13,9 @@ import org.bukkit.event.entity.ItemSpawnEvent; import org.bukkit.event.player.PlayerDropItemEvent; import org.bukkit.inventory.ItemStack; +import static net.tylermurphy.hideAndSeek.configuration.Config.dropItems; +import static net.tylermurphy.hideAndSeek.configuration.Config.regenHealth; + public class PlayerHandler implements Listener { @EventHandler(priority = EventPriority.HIGHEST) @@ -25,6 +28,7 @@ public class PlayerHandler implements Listener { @EventHandler(priority = EventPriority.HIGHEST) public void onPlayerRegainHealth(EntityRegainHealthEvent event) { + if (regenHealth) return; if (event.getRegainReason() == EntityRegainHealthEvent.RegainReason.SATIATED || event.getRegainReason() == EntityRegainHealthEvent.RegainReason.REGEN) { if (event.getEntity() instanceof Player) { if (!Main.getInstance().getBoard().contains((Player) event.getEntity())) return; @@ -35,7 +39,7 @@ public class PlayerHandler implements Listener { @EventHandler(priority = EventPriority.HIGHEST) public void onItemDrop(PlayerDropItemEvent event) { - if (Main.getInstance().getBoard().contains(event.getPlayer())) { + if (!dropItems && Main.getInstance().getBoard().contains(event.getPlayer())) { event.setCancelled(true); } } |