From 2e17ba13c2f522058c63bf15e17f6541e558690c Mon Sep 17 00:00:00 2001 From: headhunter45 Date: Sun, 19 Feb 2012 13:26:11 -0800 Subject: [PATCH] Added optional generation of a sign identifying owner in plots on creation --- Metropolis/README.txt | 3 +++ Metropolis/pom.xml | 2 +- .../metropolis/MetropolisPlugin.java | 24 +++++++++++++++++++ Metropolis/src/main/resources/config.yml | 2 ++ Metropolis/src/main/resources/plugin.yml | 2 +- 5 files changed, 31 insertions(+), 2 deletions(-) diff --git a/Metropolis/README.txt b/Metropolis/README.txt index b0620a4..b866027 100644 --- a/Metropolis/README.txt +++ b/Metropolis/README.txt @@ -15,6 +15,9 @@ CONFIG: Edit the config.yml file. You can set the height to clear above roads, the road width, the plot size (incluing half the road width on either side), the road material, and the level at which the road is generated. Changelog: +v0.4.6 + Added optional generation of a sign identifying owner in plots on creation +v0.4.5 v0.4.4 Added a welcome message telling players where their home is. Switched from PlayerLoginEvent to PlayerJoinEvent diff --git a/Metropolis/pom.xml b/Metropolis/pom.xml index a1f46f2..410716a 100644 --- a/Metropolis/pom.xml +++ b/Metropolis/pom.xml @@ -2,6 +2,6 @@ 4.0.0 com.majinnaibu.bukkitplugins Metropolis - 0.4.5-SNAPSHOT + 0.4.6-SNAPSHOT Metropolis \ No newline at end of file diff --git a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java index cafd413..e164317 100644 --- a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java +++ b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java @@ -6,8 +6,10 @@ import java.util.Collections; import java.util.List; import java.util.logging.Logger; +import org.bukkit.Material; import org.bukkit.World; import org.bukkit.block.Block; +import org.bukkit.block.Sign; import org.bukkit.configuration.Configuration; import org.bukkit.entity.Player; import org.bukkit.plugin.Plugin; @@ -50,6 +52,7 @@ public class MetropolisPlugin extends JavaPlugin { String worldName = "world"; boolean generateFloor = false; int floorMaterial = 2; + boolean generateSign = false; @Override public void onDisable() { @@ -72,6 +75,7 @@ public class MetropolisPlugin extends JavaPlugin { worldName =config.getString("worldname"); generateFloor = config.getBoolean("plot.floor.generate"); floorMaterial = config.getInt("plot.floor.material"); + generateSign = config.getBoolean("plot.sign.generate"); saveConfig(); log.info(String.format("Metropolis: world name is %s", worldName)); @@ -387,11 +391,31 @@ public class MetropolisPlugin extends JavaPlugin { generateFloor(plotCuboid); } + log.info(String.format("generateSign: %s", String.valueOf(generateSign))); + if(generateSign){ + generateSign(plotCuboid, playerName); + } + log.info(String.format("Done generating home for %s", playerName)); return new PlayerHome(homeRegion); } + private void generateSign(Cuboid plotCuboid, String playerName) { + Block signBlock = world.getBlockAt(plotCuboid.getCenterX(), roadLevel+1, plotCuboid.getCenterZ()); + signBlock.setType(Material.SIGN_POST); + Sign sign = (Sign)signBlock.getState(); + sign.setLine(0, "Home of"); + + sign.setLine(1, playerName.substring(0, Math.min(15, playerName.length()))); + if(playerName.length() > 15){ + sign.setLine(2, playerName.substring(16, Math.min(30, playerName.length()))); + if(playerName.length() > 45){ + sign.setLine(3, playerName.substring(31, Math.min(45, playerName.length()))); + } + } + } + public List getCityBlocks() { return Collections.unmodifiableList(_occupiedHomes); } diff --git a/Metropolis/src/main/resources/config.yml b/Metropolis/src/main/resources/config.yml index 36b129c..a368e79 100644 --- a/Metropolis/src/main/resources/config.yml +++ b/Metropolis/src/main/resources/config.yml @@ -4,6 +4,8 @@ plot: floor: generate: true material: 2 + sign: + generate: true road: width: 4 clearSpaceAbove: 66 diff --git a/Metropolis/src/main/resources/plugin.yml b/Metropolis/src/main/resources/plugin.yml index 409b937..3d28410 100644 --- a/Metropolis/src/main/resources/plugin.yml +++ b/Metropolis/src/main/resources/plugin.yml @@ -2,7 +2,7 @@ name: Metropolis main: com.majinnaibu.bukkitplugins.metropolis.MetropolisPlugin depend: [WorldGuard] softdepend: [WorldEdit,CommandBook] -version: 0.4.5 +version: 0.4.6 database: false commands: metropolis-home-generate: