From ce7a14c36b5fa91820ab1911c6ebe21ffaccb53b Mon Sep 17 00:00:00 2001 From: Brettflan Date: Tue, 7 Jun 2011 06:08:21 -0500 Subject: [PATCH] Added a function to the main plugin class for other plugins to hook into, which will get the BorderData for a specified world. The other plugin can then access all available functions such as checking an X/Z position to see if it's inside the border, or getting a corrected (and safe) position inside the border. --- src/com/wimbli/WorldBorder/BorderData.java | 8 ++++++++ src/com/wimbli/WorldBorder/WorldBorder.java | 6 ++++++ 2 files changed, 14 insertions(+) diff --git a/src/com/wimbli/WorldBorder/BorderData.java b/src/com/wimbli/WorldBorder/BorderData.java index 2c4cec2..aff438d 100644 --- a/src/com/wimbli/WorldBorder/BorderData.java +++ b/src/com/wimbli/WorldBorder/BorderData.java @@ -123,6 +123,10 @@ public class BorderData return false; // Apparently outside, then } } + public boolean insideBorder(double xLoc, double zLoc) + { + return insideBorder(xLoc, zLoc, Config.ShapeRound()); + } public Location correctedPosition(Location loc, boolean round) { @@ -164,6 +168,10 @@ public class BorderData return new Location(loc.getWorld(), Math.floor(xLoc) + 0.5, yLoc, Math.floor(zLoc) + 0.5, loc.getYaw(), loc.getPitch()); } + public Location correctedPosition(Location loc) + { + return correctedPosition(loc, Config.ShapeRound()); + } //these material IDs are acceptable for places to teleport player; breathable blocks and water private static LinkedHashSet acceptableBlocks = new LinkedHashSet(Arrays.asList( diff --git a/src/com/wimbli/WorldBorder/WorldBorder.java b/src/com/wimbli/WorldBorder/WorldBorder.java index e4ce9e6..d14d4b4 100644 --- a/src/com/wimbli/WorldBorder/WorldBorder.java +++ b/src/com/wimbli/WorldBorder/WorldBorder.java @@ -41,4 +41,10 @@ public class WorldBorder extends JavaPlugin System.out.println( desc.getName() + " version " + desc.getVersion() + " shutting down" ); Config.StopBorderTimer(); } + + // for other plugins to hook into + public BorderData GetWorldBorder(String worldName) + { + return Config.Border(worldName); + } }