From 8ae8045729dffafb1996f8082e9d030d4fa45676 Mon Sep 17 00:00:00 2001 From: Tom Hicks Date: Fri, 29 Aug 2014 23:28:42 -0700 Subject: [PATCH] Adds 2 debug commands for checking material names. Changes config.yml to use material names instead of IDs. --- .../metropolis/MetropolisPlugin.java | 17 ++++++----- .../MetropolisDebugGetMaterialCommand.java | 30 +++++++++++++++++++ .../MetropolisDebugMatchMaterialCommand.java | 30 +++++++++++++++++++ .../metropolis/util/Material.java | 5 ---- src/main/resources/config.yml | 15 +++++----- 5 files changed, 78 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugGetMaterialCommand.java create mode 100644 src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugMatchMaterialCommand.java delete mode 100644 src/main/java/com/majinnaibu/bukkitplugins/metropolis/util/Material.java diff --git a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java index 74ae5c2..52fc3ef 100644 --- a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java +++ b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/MetropolisPlugin.java @@ -29,6 +29,8 @@ import org.bukkit.plugin.java.JavaPlugin; import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisCommand; import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisDebugGenerateTestHomesCommand; +import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisDebugGetMaterialCommand; +import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisDebugMatchMaterialCommand; import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisFlagResetCommand; import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisHomeEvictCommand; import com.majinnaibu.bukkitplugins.metropolis.commands.MetropolisHomeGenerateCommand; @@ -284,6 +286,8 @@ public class MetropolisPlugin extends JavaPlugin { RegisterCommandHandler("metropolis", new MetropolisCommand(this)); RegisterCommandHandler("metropolis-debug-generatetesthomes", new MetropolisDebugGenerateTestHomesCommand(this)); + RegisterCommandHandler("metropolis-debug-getmaterial", new MetropolisDebugGetMaterialCommand(this)); + RegisterCommandHandler("metropolis-debug-matchmaterial", new MetropolisDebugMatchMaterialCommand(this)); RegisterCommandHandler("metropolis-flag-reset", new MetropolisFlagResetCommand(this)); @@ -352,6 +356,7 @@ public class MetropolisPlugin extends JavaPlugin { } } + @SuppressWarnings("unused") private Cuboid getCuboid(int row, int col) { //This is only used for debug info BlockVector min = getPlotMin(row, col, 1); @@ -396,12 +401,10 @@ public class MetropolisPlugin extends JavaPlugin { } private Material safeGetMaterialFromConfig(Configuration config, String name){ - Material material = null; - if(config.isInt(name)){ - material = Material.getMaterial(config.getInt(name)); - }else if(config.isString(name)){ - material = Material.getMaterial(config.getString(name)); - if(material== null){ + Material material = Material.AIR; + if(config.isString(name)){ + material = Material.matchMaterial(config.getString(name)); + if(material == null){ material = Material.matchMaterial(config.getString(name)); } } @@ -1078,7 +1081,7 @@ public class MetropolisPlugin extends JavaPlugin { } private void saveCurrentHomes() { - File outFile = new File(getDataFolder(), "currentHomes.yml"); + //File outFile = new File(getDataFolder(), "currentHomes.yml"); // TODO Auto-generated method stub diff --git a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugGetMaterialCommand.java b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugGetMaterialCommand.java new file mode 100644 index 0000000..dac1cb5 --- /dev/null +++ b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugGetMaterialCommand.java @@ -0,0 +1,30 @@ +package com.majinnaibu.bukkitplugins.metropolis.commands; + +import java.util.logging.Level; + +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import com.majinnaibu.bukkitplugins.metropolis.MetropolisPlugin; + +public class MetropolisDebugGetMaterialCommand implements CommandExecutor { + + private MetropolisPlugin _plugin; + + public MetropolisDebugGetMaterialCommand(MetropolisPlugin plugin) { + _plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + try { + sender.sendMessage(String.format("Material.getMaterial(\"%s\") returns \"%s\"", args[0], Material.getMaterial(args[0]))); + return true; + } catch(Exception ex) { + _plugin.getLogger().log(Level.ALL, "Error", ex); + return false; + } + } +} diff --git a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugMatchMaterialCommand.java b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugMatchMaterialCommand.java new file mode 100644 index 0000000..32d9601 --- /dev/null +++ b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/commands/MetropolisDebugMatchMaterialCommand.java @@ -0,0 +1,30 @@ +package com.majinnaibu.bukkitplugins.metropolis.commands; + +import java.util.logging.Level; + +import org.bukkit.Material; +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import com.majinnaibu.bukkitplugins.metropolis.MetropolisPlugin; + +public class MetropolisDebugMatchMaterialCommand implements CommandExecutor { + + private MetropolisPlugin _plugin; + + public MetropolisDebugMatchMaterialCommand(MetropolisPlugin plugin) { + _plugin = plugin; + } + + @Override + public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { + try { + sender.sendMessage(String.format("Material.getMaterial(\"%s\") returns \"%s\"", String.join(" ", args), Material.matchMaterial(args[0]))); + return true; + } catch(Exception ex) { + _plugin.getLogger().log(Level.ALL, "Error", ex); + return false; + } + } +} diff --git a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/util/Material.java b/src/main/java/com/majinnaibu/bukkitplugins/metropolis/util/Material.java deleted file mode 100644 index 1608911..0000000 --- a/src/main/java/com/majinnaibu/bukkitplugins/metropolis/util/Material.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.majinnaibu.bukkitplugins.metropolis.util; - -public class Material { - public static final int signTypeId = 63; -} diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index ce4408e..584a9be 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -4,26 +4,27 @@ plot: floor: generate: true clearSpaceAbove: 66 - material: 2 + material: GRASS supports: generate: true - material: 1 + material: STONE sign: - generate: true road: + generate: true +road: width: 4 clearSpaceAbove: 66 level: 62 - material: 4 + material: COBBLESTONE supports: generate: true - material: 1 + material: STONE spawn: generate: true setAsWorldSpawn: true - material: 2 + material: GRASS wall: generate: true - material: 7 + material: BEDROCK height: 66 worldname: world userOverrides: