From dd0bffea2f0678a2a6191171796e0b7e1a238f2b Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot Date: Mon, 24 Sep 2018 19:31:16 +1000 Subject: [PATCH] API to generate filled explorer maps By: Ugleh --- .../src/main/java/org/bukkit/Bukkit.java | 41 +++++++++++++++++++ .../src/main/java/org/bukkit/Server.java | 37 +++++++++++++++++ 2 files changed, 78 insertions(+) diff --git a/paper-api/src/main/java/org/bukkit/Bukkit.java b/paper-api/src/main/java/org/bukkit/Bukkit.java index 5bea055b35..5a4654fd0c 100644 --- a/paper-api/src/main/java/org/bukkit/Bukkit.java +++ b/paper-api/src/main/java/org/bukkit/Bukkit.java @@ -530,6 +530,47 @@ public final class Bukkit { return server.createMap(world); } + /** + * Create a new explorer map targeting the closest nearby structure of a + * given {@link StructureType}. + *
+ * This method uses implementation default values for radius and + * findUnexplored (usually 100, true). + * + * @param world the world the map will belong to + * @param location the origin location to find the nearest structure + * @param structureType the type of structure to find + * @return a newly created item stack + * + * @see World#locateNearestStructure(org.bukkit.Location, + * org.bukkit.StructureType, int, boolean) + */ + public static ItemStack createExplorerMap(World world, Location location, StructureType structureType) { + return server.createExplorerMap(world, location, structureType); + } + + /** + * Create a new explorer map targeting the closest nearby structure of a + * given {@link StructureType}. + *
+ * This method uses implementation default values for radius and + * findUnexplored (usually 100, true). + * + * @param world the world the map will belong to + * @param location the origin location to find the nearest structure + * @param structureType the type of structure to find + * @param radius radius to search, see World#locateNearestStructure for more + * information + * @param findUnexplored whether to find unexplored structures + * @return the newly created item stack + * + * @see World#locateNearestStructure(org.bukkit.Location, + * org.bukkit.StructureType, int, boolean) + */ + public static ItemStack createExplorerMap(World world, Location location, StructureType structureType, int radius, boolean findUnexplored) { + return server.createExplorerMap(world, location, structureType, radius, findUnexplored); + } + /** * Reloads the server, refreshing settings and plugin information. */ diff --git a/paper-api/src/main/java/org/bukkit/Server.java b/paper-api/src/main/java/org/bukkit/Server.java index c3535e90b0..21ed6aeba1 100644 --- a/paper-api/src/main/java/org/bukkit/Server.java +++ b/paper-api/src/main/java/org/bukkit/Server.java @@ -438,6 +438,43 @@ public interface Server extends PluginMessageRecipient { */ public MapView createMap(World world); + /** + * Create a new explorer map targeting the closest nearby structure of a + * given {@link StructureType}. + *
+ * This method uses implementation default values for radius and + * findUnexplored (usually 100, true). + * + * @param world the world the map will belong to + * @param location the origin location to find the nearest structure + * @param structureType the type of structure to find + * @return a newly created item stack + * + * @see World#locateNearestStructure(org.bukkit.Location, + * org.bukkit.StructureType, int, boolean) + */ + public ItemStack createExplorerMap(World world, Location location, StructureType structureType); + + /** + * Create a new explorer map targeting the closest nearby structure of a + * given {@link StructureType}. + *
+ * This method uses implementation default values for radius and + * findUnexplored (usually 100, true). + * + * @param world the world the map will belong to + * @param location the origin location to find the nearest structure + * @param structureType the type of structure to find + * @param radius radius to search, see World#locateNearestStructure for more + * information + * @param findUnexplored whether to find unexplored structures + * @return the newly created item stack + * + * @see World#locateNearestStructure(org.bukkit.Location, + * org.bukkit.StructureType, int, boolean) + */ + public ItemStack createExplorerMap(World world, Location location, StructureType structureType, int radius, boolean findUnexplored); + /** * Reloads the server, refreshing settings and plugin information. */