From 31aa3526482fb67ad404cf1d27bb67a2f00b35b1 Mon Sep 17 00:00:00 2001 From: ryanhamshire Date: Tue, 3 Feb 2015 18:48:01 -0800 Subject: [PATCH] Fixed /givepet not working in PvP worlds. --- .../GriefPrevention/PlayerEventHandler.java | 25 +++++++++++-------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java b/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java index 155930a..601e34e 100644 --- a/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java +++ b/src/me/ryanhamshire/GriefPrevention/PlayerEventHandler.java @@ -921,7 +921,7 @@ class PlayerEventHandler implements Listener PlayerData playerData = this.dataStore.getPlayerData(player.getUniqueId()); //if entity is tameable and has an owner, apply special rules - if(entity instanceof Tameable && !GriefPrevention.instance.config_pvp_enabledWorlds.contains(entity.getLocation().getWorld())) + if(entity instanceof Tameable) { Tameable tameable = (Tameable)entity; if(tameable.isTamed() && tameable.getOwner() != null) @@ -943,16 +943,19 @@ class PlayerEventHandler implements Listener return; } - //otherwise disallow - OfflinePlayer owner = GriefPrevention.instance.getServer().getOfflinePlayer(ownerID); - String ownerName = owner.getName(); - if(ownerName == null) ownerName = "someone"; - String message = GriefPrevention.instance.dataStore.getMessage(Messages.NotYourPet, ownerName); - if(player.hasPermission("griefprevention.ignoreclaims")) - message += " " + GriefPrevention.instance.dataStore.getMessage(Messages.IgnoreClaimsAdvertisement); - GriefPrevention.sendMessage(player, TextMode.Err, message); - event.setCancelled(true); - return; + if(!GriefPrevention.instance.config_pvp_enabledWorlds.contains(entity.getLocation().getWorld())) + { + //otherwise disallow + OfflinePlayer owner = GriefPrevention.instance.getServer().getOfflinePlayer(ownerID); + String ownerName = owner.getName(); + if(ownerName == null) ownerName = "someone"; + String message = GriefPrevention.instance.dataStore.getMessage(Messages.NotYourPet, ownerName); + if(player.hasPermission("griefprevention.ignoreclaims")) + message += " " + GriefPrevention.instance.dataStore.getMessage(Messages.IgnoreClaimsAdvertisement); + GriefPrevention.sendMessage(player, TextMode.Err, message); + event.setCancelled(true); + return; + } } }