From 16081752ad183442604e87ec71aece222b446c91 Mon Sep 17 00:00:00 2001 From: Drc-DEV <33911680+Drc-DEV@users.noreply.github.com> Date: Mon, 18 Feb 2019 05:56:56 +0100 Subject: [PATCH 1/2] Do not check for NPC Teleportation Fixes this error: https://pastebin.com/GC2tVctc --- .../factions/listeners/FactionsPlayerListener.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java b/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java index d4b6ec81..f36acc47 100644 --- a/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java +++ b/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java @@ -654,6 +654,9 @@ public class FactionsPlayerListener implements Listener { //For Blocking Homes and Blocking Teleportation To Homes @EventHandler public void onPlayerHomeCheck(PlayerTeleportEvent event) throws Exception { + if (event.getPlayer().hasMetadata("NPC")){ + return; + } if (event.getPlayer().hasPermission("factions.homes.bypass")) { return; } From 96fe8d059ef53a4bc20672cf860195f5fd882734 Mon Sep 17 00:00:00 2001 From: Drc-DEV <33911680+Drc-DEV@users.noreply.github.com> Date: Mon, 18 Feb 2019 15:21:17 +0100 Subject: [PATCH 2/2] Fix HomeCheck (no essentials) + BONE_MEAL Material Bypass the PlayerHomeCheck if Essentials is not installed (causes exceptions) Fix BONE_MEAL multi-version support --- .../factions/listeners/FactionsPlayerListener.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java b/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java index f36acc47..8ba1daa0 100644 --- a/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java +++ b/src/main/java/com/massivecraft/factions/listeners/FactionsPlayerListener.java @@ -660,6 +660,9 @@ public class FactionsPlayerListener implements Listener { if (event.getPlayer().hasPermission("factions.homes.bypass")) { return; } + if (Bukkit.getPluginManager().getPlugin("Essentials") == null) { + return; + } boolean isHome = false; for (String str : SavageFactions.plugin.ess.getUser(event.getPlayer()).getHomes()) { Location home = SavageFactions.plugin.ess.getUser(event.getPlayer()).getHome(str); @@ -956,7 +959,7 @@ public class FactionsPlayerListener implements Listener { Block block = event.getClickedBlock(); if (event.getAction() == Action.RIGHT_CLICK_BLOCK && block.getType() == MultiversionMaterials.GRASS_BLOCK.parseMaterial() - && event.hasItem() && event.getItem().getType() == Material.BONE_MEAL) { + && event.hasItem() && event.getItem().getType() == MultiversionMaterials.BONE_MEAL.parseMaterial()) { if (!FactionsBlockListener.playerCanBuildDestroyBlock(event.getPlayer(), block.getLocation(), PermissableAction.BUILD.name(), true)) { FPlayer me = FPlayers.getInstance().getById(event.getPlayer().getUniqueId().toString()); Faction otherFaction = Board.getInstance().getFactionAt(new FLocation(block.getLocation()));