From 0b51689f278c67d136aee563dfad98dbb8b63822 Mon Sep 17 00:00:00 2001 From: Tom Hicks Date: Mon, 5 Mar 2012 19:48:44 -0800 Subject: [PATCH 1/3] fixed plot generation for even numbered plot sized and road widths --- .../bukkitplugins/metropolis/Cuboid.java | 7 ++ .../metropolis/MetropolisPlugin.java | 110 ++++++++++-------- Metropolis/src/main/resources/config.yml | 1 + 3 files changed, 68 insertions(+), 50 deletions(-) diff --git a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/Cuboid.java b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/Cuboid.java index c68d20a..5390527 100644 --- a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/Cuboid.java +++ b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/Cuboid.java @@ -221,4 +221,11 @@ public class Cuboid implements Comparable { return true; } + + @Override + public String toString() { + return String.format("{Cuboid minX=%d, minY=%d, minZ=%d, maxX=%d, maxY=%d, maxZ=%d}", minX, minY, minZ, maxX, maxY, maxZ); + } + + } 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 2894838..8ed61d6 100644 --- a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java +++ b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java @@ -108,22 +108,8 @@ public class MetropolisPlugin extends JavaPlugin { if(DEBUG){log.info("Checking config");} Configuration config = getConfig(); if(!config.contains("version")){ - //new or upgrading from ancient - if(config.contains("plot.sizeX")){ - if(DEBUG){log.info("Upgrading from a 0.4.6 config or newer.");} - //upgrading from ancient - int oldSizeX = safeGetIntFromConfig(config, "plot.sizeX"); - int oldSizeZ = safeGetIntFromConfig(config, "plot.sizeZ"); - int oldRoadWidth = safeGetIntFromConfig(config, "road.width"); - oldSizeX -= oldRoadWidth; - oldSizeZ -= oldRoadWidth; - config.set("plot.sizeX", oldSizeX); - config.set("plot.sizeZ", oldSizeZ); - saveConfig(); - if(DEBUG){log.info("Plot size updated");} - }else{ - if(DEBUG){log.info("No config exists. Assuming new installation.");} - } + //new + if(DEBUG){log.info("No config exists. Assuming new installation.");} }else{ int configVersion = safeGetIntFromConfig(config, "version"); if(DEBUG){log.info(String.format("Updating config from version v%s to v%s.", configVersion, version));} @@ -135,6 +121,9 @@ public class MetropolisPlugin extends JavaPlugin { if(DEBUG){log.info("Config updated");} } + config.set("version", version); + saveConfig(); + config.options().copyDefaults(true); if(DEBUG){log.info("Reading configuration from file.");} @@ -220,7 +209,7 @@ public class MetropolisPlugin extends JavaPlugin { _spawnRegion = regionManager.getRegion("Spawn"); if(_spawnRegion == null){ - _spawnRegion = new ProtectedCuboidRegion("Spawn", getPlotMin(0, 0), this.getPlotMax(0, 0)); + _spawnRegion = new ProtectedCuboidRegion("Spawn", getPlotMin(0, 0), getPlotMax(0, 0)); _spawnRegion.setPriority(1); _spawnRegion.setFlag(DefaultFlag.PVP, StateFlag.State.DENY); _spawnRegion.setFlag(DefaultFlag.MOB_DAMAGE, StateFlag.State.DENY); @@ -232,11 +221,27 @@ public class MetropolisPlugin extends JavaPlugin { _spawnRegion.setFlag(DefaultFlag.LAVA_FLOW, StateFlag.State.DENY); _spawnRegion.setFlag(DefaultFlag.SNOW_FALL, StateFlag.State.DENY); regionManager.addRegion(_spawnRegion); + + _spawnCuboid = new Cuboid(_spawnRegion.getMinimumPoint(), _spawnRegion.getMaximumPoint()); + setupSpawn(); + }else{ + _spawnCuboid = new Cuboid(_spawnRegion.getMinimumPoint(), _spawnRegion.getMaximumPoint()); } _spawnCuboid = new Cuboid(_spawnRegion.getMinimumPoint(), _spawnRegion.getMaximumPoint()); + if(DEBUG){ + log.info("Metropolis: first 9 plots"); + + for (int ix=-1; ix<=1;ix++){ + for (int iz=-1; iz<=1; iz++){ + log.info(getCuboid(iz, ix).toString()); + } + } + } + + _occupiedPlots = new ArrayList(); fillOccupiedPlots(); resizeCityRegion(); @@ -266,6 +271,12 @@ public class MetropolisPlugin extends JavaPlugin { RegisterCommandHandler("metropolis-plot-reserve", new MetropolisPlotReserveCommand(this)); } + private Cuboid getCuboid(int row, int col) { + BlockVector min = getPlotMin(row, col); + BlockVector max = getPlotMax(row, col); + return new Cuboid(min, max); + } + private void RegisterCommandHandler(String commandName, CommandExecutor executor){ PluginCommand command = getCommand(commandName); if(command == null){ @@ -322,16 +333,16 @@ public class MetropolisPlugin extends JavaPlugin { } private void setupSpawn() { - BlockVector min = getPlotMin(0, 0); - BlockVector max = getPlotMax(0, 0); + log.info("Metropolis: Spawn Cuboid is " + _spawnCuboid.toString()); if(generateSpawn){ int x= 0; int y=roadLevel; int z=0; - for(x=min.getBlockX(); x<= max.getBlockX(); x++){ - for(z=min.getBlockZ(); z<= max.getBlockZ(); z++){ + //floor + for(x=_spawnCuboid.getMinX(); x<= _spawnCuboid.getMaxX(); x++){ + for(z=_spawnCuboid.getMinZ(); z<=_spawnCuboid.getMaxZ(); z++){ for(y=roadLevel+1; y 45){ sign.setLine(3, playerName.substring(31, Math.min(45, playerName.length()))); } - } + } + + sign.update(true); } public List getCityBlocks() { diff --git a/Metropolis/src/main/resources/config.yml b/Metropolis/src/main/resources/config.yml index 218451b..3097d2d 100644 --- a/Metropolis/src/main/resources/config.yml +++ b/Metropolis/src/main/resources/config.yml @@ -3,6 +3,7 @@ plot: sizeZ: 24 floor: generate: true + clearSpaceAbove: 66 material: 2 supports: generate: true From 3bff854de6c56f41d08ccffdc534499350eec0fe Mon Sep 17 00:00:00 2001 From: Tom Hicks Date: Tue, 6 Mar 2012 00:59:35 -0800 Subject: [PATCH 2/3] tweaked plot generation and checking again --- .../metropolis/MetropolisPlugin.java | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) 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 8ed61d6..407713f 100644 --- a/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java +++ b/Metropolis/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java @@ -444,10 +444,13 @@ public class MetropolisPlugin extends JavaPlugin { return; } + int roadWidth1 = roadWidth / 2; + int roadWidth2 = roadWidth - roadWidth1; + //North West Corner if((roadMask & (ROAD_NORTH | ROAD_WEST)) != 0){ - for(x=plotCuboid.minX - roadWidth; x Date: Wed, 7 Mar 2012 20:21:59 -0800 Subject: [PATCH 3/3] Updated repo url. --- Metropolis/pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Metropolis/pom.xml b/Metropolis/pom.xml index 175df78..8355803 100644 --- a/Metropolis/pom.xml +++ b/Metropolis/pom.xml @@ -37,7 +37,6 @@ - @@ -64,7 +63,7 @@ majinnaibu-repository - ftp://www.majinnaibu.com/majinnaibu/repo + ftp://repo.majinnaibu.com