From b4707c94c46bbd38be94f9d21547a17d4f4003fa Mon Sep 17 00:00:00 2001 From: MattBDev Date: Fri, 3 Jun 2016 10:57:25 -0400 Subject: [PATCH] Fix #579 Also tweaks to deprecation for development purposes. --- .../plot/api/PlotAPI.java | 14 ++++++++++--- .../com/plotsquared/bukkit/BukkitMain.java | 20 +++++++++++++++---- .../bukkit/listeners/PlayerEvents_1_8.java | 1 + .../bukkit/object/BukkitPlayer.java | 3 ++- 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/Bukkit/src/main/java/com/intellectualcrafters/plot/api/PlotAPI.java b/Bukkit/src/main/java/com/intellectualcrafters/plot/api/PlotAPI.java index ef6230c8f..bce651d3b 100644 --- a/Bukkit/src/main/java/com/intellectualcrafters/plot/api/PlotAPI.java +++ b/Bukkit/src/main/java/com/intellectualcrafters/plot/api/PlotAPI.java @@ -228,13 +228,14 @@ public class PlotAPI { * Get the plot manager for a world. Most of these methods can be accessed * through the MainUtil. * - * @param world Which manager to get + * @param world the world to retrieve the manager from * * @return PlotManager * * @see PlotManager * @see PS#getPlotManager(Plot) */ + @SuppressWarnings("deprecation") @Deprecated public PlotManager getPlotManager(World world) { if (world == null) { @@ -292,6 +293,7 @@ public class PlotAPI { * @see #getPlotAreas(World) * @see PlotArea */ + @SuppressWarnings("deprecation") @Deprecated public PlotArea getWorldSettings(World world) { if (world == null) { @@ -395,6 +397,7 @@ public class PlotAPI { * * @see PlotArea#getPlot(PlotId) */ + @SuppressWarnings("deprecation") @Deprecated public Plot getPlot(World world, int x, int z) { if (world == null) { @@ -446,6 +449,7 @@ public class PlotAPI { * * @see #getPlots(World, Player, boolean) */ + @SuppressWarnings("deprecation") @Deprecated public boolean hasPlot(World world, Player player) { return getPlots(world, player, true).length > 0; @@ -500,6 +504,7 @@ public class PlotAPI { * @return World[] - array of plot worlds * */ + @SuppressWarnings("deprecation") @Deprecated public String[] getPlotWorlds() { Set plotWorldStrings = PS.get().getPlotWorldStrings(); @@ -531,6 +536,7 @@ public class PlotAPI { * * @see Plot */ + @SuppressWarnings("deprecation") @Deprecated public Location[] getLocations(Plot plot) { Location bukkitBottom = BukkitUtil.getLocation(plot.getCorners()[0]); @@ -563,9 +569,10 @@ public class PlotAPI { * * @see Plot */ + @SuppressWarnings("deprecation") @Deprecated public Location getBottomLocation(Plot plot) { - return BukkitUtil.getLocation(plot.getBottom()); + return BukkitUtil.getLocation(plot.getCorners()[0]); } /** @@ -579,9 +586,10 @@ public class PlotAPI { * * @see Plot */ + @SuppressWarnings("deprecation") @Deprecated public Location getTopLocation(Plot plot) { - return BukkitUtil.getLocation(plot.getTop()); + return BukkitUtil.getLocation(plot.getCorners()[1]); } /** diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitMain.java b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitMain.java index 4bbfcb6b8..d5685a50f 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitMain.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/BukkitMain.java @@ -79,6 +79,7 @@ import org.bukkit.OfflinePlayer; import org.bukkit.World; import org.bukkit.command.PluginCommand; import org.bukkit.entity.Entity; +import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; import org.bukkit.event.Listener; import org.bukkit.generator.ChunkGenerator; @@ -313,10 +314,21 @@ public final class BukkitMain extends JavaPlugin implements Listener, IPlotMain } Location location = entity.getLocation(); if (BukkitUtil.getLocation(location).isPlotRoad()) { - Entity passenger = entity.getPassenger(); - if (!(passenger instanceof Player) && entity.getMetadata("keep").isEmpty()) { - iterator.remove(); - entity.remove(); + if (entity instanceof LivingEntity) { + LivingEntity livingEntity = (LivingEntity) entity; + if (!livingEntity.isLeashed() || !entity.hasMetadata("keep")) { + Entity passenger = entity.getPassenger(); + if (!(passenger instanceof Player) && entity.getMetadata("keep").isEmpty()) { + iterator.remove(); + entity.remove(); + } + } + } else { + Entity passenger = entity.getPassenger(); + if (!(passenger instanceof Player) && entity.getMetadata("keep").isEmpty()) { + iterator.remove(); + entity.remove(); + } } } } diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/listeners/PlayerEvents_1_8.java b/Bukkit/src/main/java/com/plotsquared/bukkit/listeners/PlayerEvents_1_8.java index 02719dd32..b18a895a9 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/listeners/PlayerEvents_1_8.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/listeners/PlayerEvents_1_8.java @@ -32,6 +32,7 @@ import java.util.UUID; public class PlayerEvents_1_8 extends PlotListener implements Listener { + @SuppressWarnings("deprecation") @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) public void onInventoryClick(InventoryClickEvent event) { if (!event.isLeftClick() || (event.getAction() != InventoryAction.PLACE_ALL) || event.isShiftClick()) { diff --git a/Bukkit/src/main/java/com/plotsquared/bukkit/object/BukkitPlayer.java b/Bukkit/src/main/java/com/plotsquared/bukkit/object/BukkitPlayer.java index 7f227bad3..56e370323 100644 --- a/Bukkit/src/main/java/com/plotsquared/bukkit/object/BukkitPlayer.java +++ b/Bukkit/src/main/java/com/plotsquared/bukkit/object/BukkitPlayer.java @@ -9,6 +9,7 @@ import com.intellectualcrafters.plot.util.UUIDHandler; import com.plotsquared.bukkit.util.BukkitUtil; import org.bukkit.Effect; import org.bukkit.GameMode; +import org.bukkit.Material; import org.bukkit.WeatherType; import org.bukkit.entity.Player; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; @@ -180,7 +181,7 @@ public class BukkitPlayer extends PlotPlayer { @Override public void playMusic(Location location, int id) { - this.player.playEffect(BukkitUtil.getLocation(location), Effect.RECORD_PLAY, id); + this.player.playEffect(BukkitUtil.getLocation(location), Effect.RECORD_PLAY, Material.getMaterial(id)); } @Override