Moved some catches

This commit is contained in:
Robin Kupper
2011-07-27 03:15:54 +02:00
parent 5c1bf22604
commit 303262f268
2 changed files with 245 additions and 272 deletions

View File

@@ -49,220 +49,217 @@ public class CommandsHandler implements CommandExecutor
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
if (!cmd.getName().equalsIgnoreCase("lb"))
return false;
if (args.length == 0) {
sender.sendMessage(ChatColor.LIGHT_PURPLE + "LogBlock v" + logblock.getDescription().getVersion() + " by DiddiZ");
sender.sendMessage(ChatColor.LIGHT_PURPLE + logblock.getUpdater().checkVersion());
sender.sendMessage(ChatColor.LIGHT_PURPLE + "Type /lb help for help");
} else {
final String command = args[0].toLowerCase();
if (command.equals("help")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Help:");
sender.sendMessage(ChatColor.GOLD + "For the commands list type '/lb commands'");
sender.sendMessage(ChatColor.GOLD + "For the parameters list type '/lb params'");
sender.sendMessage(ChatColor.GOLD + "For the list of permissions you got type '/lb permissions'");
} else if (command.equals("commands")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Commands:");
sender.sendMessage(ChatColor.GOLD + "/lb tool -- Gives you the lb tool");
sender.sendMessage(ChatColor.GOLD + "/lb tool [on|off] -- Enables/Disables tool");
sender.sendMessage(ChatColor.GOLD + "/lb tool [params] -- Sets the tool lookup query");
sender.sendMessage(ChatColor.GOLD + "/lb tool default -- Sets the tool lookup query to default");
sender.sendMessage(ChatColor.GOLD + "/lb toolblock -- Analog to tool");
sender.sendMessage(ChatColor.GOLD + "/lb hide -- Hides you from log");
sender.sendMessage(ChatColor.GOLD + "/lb rollback [params] -- Rollback");
sender.sendMessage(ChatColor.GOLD + "/lb redo [params] -- Redo");
sender.sendMessage(ChatColor.GOLD + "/lb tp [params] -- Teleports you to the location of griefing");
sender.sendMessage(ChatColor.GOLD + "/lb writelogfile [params] -- Writes a log file");
sender.sendMessage(ChatColor.GOLD + "/lb lookup [params] -- Lookup");
sender.sendMessage(ChatColor.GOLD + "/lb prev|next -- Browse lookup result pages");
sender.sendMessage(ChatColor.GOLD + "/lb page -- Shows a specific lookup result page");
sender.sendMessage(ChatColor.GOLD + "/lb me -- Displays your stats");
sender.sendMessage(ChatColor.GOLD + "Look at github.com/DiddiZ/LogBlock/wiki/Commands for the full commands reference");
} else if (command.equals("params")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Query Parameters:");
sender.sendMessage(ChatColor.GOLD + "Use doublequotes to escape a keyword: world \"world\"");
sender.sendMessage(ChatColor.GOLD + "player [name1] <name2> <name3> -- List of players");
sender.sendMessage(ChatColor.GOLD + "block [type1] <type2> <type3> -- List of block types");
sender.sendMessage(ChatColor.GOLD + "created, destroyed -- Show only created/destroyed blocks");
sender.sendMessage(ChatColor.GOLD + "chestaccess -- Show only chest accesses");
sender.sendMessage(ChatColor.GOLD + "area <radius> -- Area around you");
sender.sendMessage(ChatColor.GOLD + "selection, sel -- Inside current WorldEdit selection");
sender.sendMessage(ChatColor.GOLD + "world [worldname] -- Changes the world");
sender.sendMessage(ChatColor.GOLD + "time [number] [minutes|hours|days] -- Limits time");
sender.sendMessage(ChatColor.GOLD + "since <dd.MM.yyyy> <HH:mm:ss> -- Limits time to a fixed point");
sender.sendMessage(ChatColor.GOLD + "before <dd.MM.yyyy> <HH:mm:ss> -- Affects only blocks before a fixed time");
sender.sendMessage(ChatColor.GOLD + "limit <row count> -- Limits the result to count of rows");
sender.sendMessage(ChatColor.GOLD + "sum [none|blocks|players] -- Sums the result");
sender.sendMessage(ChatColor.GOLD + "asc, desc -- Changes the order of the displayed log");
sender.sendMessage(ChatColor.GOLD + "coords -- Shows coordinates for each block");
sender.sendMessage(ChatColor.GOLD + "silent -- Displays lesser messages");
} else if (command.equals("permissions")) {
final String[] permissions = {"tool", "toolblock", "me", "lookup", "tp", "rollback", "clearlog", "hide", "ignoreRestrictions"};
sender.sendMessage(ChatColor.DARK_AQUA + "You've got the following permissions:");
for (final String permission : permissions)
if (logblock.hasPermission(sender, "logblock." + permission))
sender.sendMessage(ChatColor.GOLD + "logblock." + permission);
} else if (command.equals("logging")) {
if (sender instanceof Player) {
final String world = ((Player)sender).getWorld().getName();
final WorldConfig wcfg = config.worlds.get(world.hashCode());
sender.sendMessage(ChatColor.DARK_AQUA + "Currently logging in " + world + ":");
String msg = "";
if (wcfg.logBlockPlacings)
msg += ", BlockPlacings";
if (wcfg.logBlockBreaks)
msg += ", BlockBreaks";
if (wcfg.logSignTexts)
msg += ", SignTexts";
if (wcfg.logExplosions)
msg += ", Explosions";
if (wcfg.logFire)
msg += ", Fire";
if (wcfg.logLeavesDecay)
msg += ", LeavesDecay";
if (wcfg.logLavaFlow)
msg += ", LavaFlow";
if (wcfg.logWaterFlow)
msg += ", WaterFlow";
if (wcfg.logChestAccess)
msg += ", ChestAccess";
if (wcfg.logButtonsAndLevers)
msg += ", ButtonsAndLevers";
if (wcfg.logKills)
msg += ", Kills";
if (wcfg.logChat)
msg += ", Chat";
sender.sendMessage(ChatColor.GOLD + msg.substring(2));
}
} else if (command.equals("tool") || command.equals("t")) {
if (sender instanceof Player) {
final Player player = (Player)sender;
if (args.length == 1) {
if (logblock.hasPermission(player, "logblock.tool"))
giveTool(player, config.toolID);
try {
if (args.length == 0) {
sender.sendMessage(ChatColor.LIGHT_PURPLE + "LogBlock v" + logblock.getDescription().getVersion() + " by DiddiZ");
sender.sendMessage(ChatColor.LIGHT_PURPLE + logblock.getUpdater().checkVersion());
sender.sendMessage(ChatColor.LIGHT_PURPLE + "Type /lb help for help");
} else {
final String command = args[0].toLowerCase();
if (command.equals("help")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Help:");
sender.sendMessage(ChatColor.GOLD + "For the commands list type '/lb commands'");
sender.sendMessage(ChatColor.GOLD + "For the parameters list type '/lb params'");
sender.sendMessage(ChatColor.GOLD + "For the list of permissions you got type '/lb permissions'");
} else if (command.equals("commands")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Commands:");
sender.sendMessage(ChatColor.GOLD + "/lb tool -- Gives you the lb tool");
sender.sendMessage(ChatColor.GOLD + "/lb tool [on|off] -- Enables/Disables tool");
sender.sendMessage(ChatColor.GOLD + "/lb tool [params] -- Sets the tool lookup query");
sender.sendMessage(ChatColor.GOLD + "/lb tool default -- Sets the tool lookup query to default");
sender.sendMessage(ChatColor.GOLD + "/lb toolblock -- Analog to tool");
sender.sendMessage(ChatColor.GOLD + "/lb hide -- Hides you from log");
sender.sendMessage(ChatColor.GOLD + "/lb rollback [params] -- Rollback");
sender.sendMessage(ChatColor.GOLD + "/lb redo [params] -- Redo");
sender.sendMessage(ChatColor.GOLD + "/lb tp [params] -- Teleports you to the location of griefing");
sender.sendMessage(ChatColor.GOLD + "/lb writelogfile [params] -- Writes a log file");
sender.sendMessage(ChatColor.GOLD + "/lb lookup [params] -- Lookup");
sender.sendMessage(ChatColor.GOLD + "/lb prev|next -- Browse lookup result pages");
sender.sendMessage(ChatColor.GOLD + "/lb page -- Shows a specific lookup result page");
sender.sendMessage(ChatColor.GOLD + "/lb me -- Displays your stats");
sender.sendMessage(ChatColor.GOLD + "Look at github.com/DiddiZ/LogBlock/wiki/Commands for the full commands reference");
} else if (command.equals("params")) {
sender.sendMessage(ChatColor.DARK_AQUA + "LogBlock Query Parameters:");
sender.sendMessage(ChatColor.GOLD + "Use doublequotes to escape a keyword: world \"world\"");
sender.sendMessage(ChatColor.GOLD + "player [name1] <name2> <name3> -- List of players");
sender.sendMessage(ChatColor.GOLD + "block [type1] <type2> <type3> -- List of block types");
sender.sendMessage(ChatColor.GOLD + "created, destroyed -- Show only created/destroyed blocks");
sender.sendMessage(ChatColor.GOLD + "chestaccess -- Show only chest accesses");
sender.sendMessage(ChatColor.GOLD + "area <radius> -- Area around you");
sender.sendMessage(ChatColor.GOLD + "selection, sel -- Inside current WorldEdit selection");
sender.sendMessage(ChatColor.GOLD + "world [worldname] -- Changes the world");
sender.sendMessage(ChatColor.GOLD + "time [number] [minutes|hours|days] -- Limits time");
sender.sendMessage(ChatColor.GOLD + "since <dd.MM.yyyy> <HH:mm:ss> -- Limits time to a fixed point");
sender.sendMessage(ChatColor.GOLD + "before <dd.MM.yyyy> <HH:mm:ss> -- Affects only blocks before a fixed time");
sender.sendMessage(ChatColor.GOLD + "limit <row count> -- Limits the result to count of rows");
sender.sendMessage(ChatColor.GOLD + "sum [none|blocks|players] -- Sums the result");
sender.sendMessage(ChatColor.GOLD + "asc, desc -- Changes the order of the displayed log");
sender.sendMessage(ChatColor.GOLD + "coords -- Shows coordinates for each block");
sender.sendMessage(ChatColor.GOLD + "silent -- Displays lesser messages");
} else if (command.equals("permissions")) {
final String[] permissions = {"tool", "toolblock", "me", "lookup", "tp", "rollback", "clearlog", "hide", "ignoreRestrictions"};
sender.sendMessage(ChatColor.DARK_AQUA + "You've got the following permissions:");
for (final String permission : permissions)
if (logblock.hasPermission(sender, "logblock." + permission))
sender.sendMessage(ChatColor.GOLD + "logblock." + permission);
} else if (command.equals("logging")) {
if (sender instanceof Player) {
final String world = ((Player)sender).getWorld().getName();
final WorldConfig wcfg = config.worlds.get(world.hashCode());
sender.sendMessage(ChatColor.DARK_AQUA + "Currently logging in " + world + ":");
String msg = "";
if (wcfg.logBlockPlacings)
msg += ", BlockPlacings";
if (wcfg.logBlockBreaks)
msg += ", BlockBreaks";
if (wcfg.logSignTexts)
msg += ", SignTexts";
if (wcfg.logExplosions)
msg += ", Explosions";
if (wcfg.logFire)
msg += ", Fire";
if (wcfg.logLeavesDecay)
msg += ", LeavesDecay";
if (wcfg.logLavaFlow)
msg += ", LavaFlow";
if (wcfg.logWaterFlow)
msg += ", WaterFlow";
if (wcfg.logChestAccess)
msg += ", ChestAccess";
if (wcfg.logButtonsAndLevers)
msg += ", ButtonsAndLevers";
if (wcfg.logKills)
msg += ", Kills";
if (wcfg.logChat)
msg += ", Chat";
sender.sendMessage(ChatColor.GOLD + msg.substring(2));
}
} else if (command.equals("tool") || command.equals("t")) {
if (sender instanceof Player) {
final Player player = (Player)sender;
if (args.length == 1) {
if (logblock.hasPermission(player, "logblock.tool"))
giveTool(player, config.toolID);
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (args[1].equalsIgnoreCase("enable") || args[1].equalsIgnoreCase("on")) {
logblock.getSession(player.getName()).toolEnabled = true;
player.sendMessage(ChatColor.GREEN + "Tool enabled.");
} else if (args[1].equalsIgnoreCase("disable") || args[1].equalsIgnoreCase("off")) {
logblock.getSession(player.getName()).toolEnabled = false;
player.sendMessage(ChatColor.GREEN + "Tool disabled.");
} else if (args[1].equalsIgnoreCase("mode")) {
final Session session = logblock.getSession(player.getName());
if (args.length == 3) {
final ToolMode mode;
try {
mode = ToolMode.valueOf(args[2].toUpperCase());
} catch (final IllegalArgumentException ex) {
sender.sendMessage(ChatColor.RED + "Can't find mode " + args[2]);
return true;
}
if (logblock.hasPermission(player, mode.getPermission())) {
session.toolMode = mode;
sender.sendMessage(ChatColor.GREEN + "Tool mode set to " + args[2]);
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to use mode " + args[2]);
} else
player.sendMessage(ChatColor.RED + "No mode specified");
} else if (args[1].equalsIgnoreCase("default")) {
final Session session = logblock.getSession(player.getName());
session.toolQuery = config.toolQuery.clone();
session.toolMode = ToolMode.LOOKUP;
sender.sendMessage(ChatColor.GREEN + "Tool set to default.");
} else if (logblock.hasPermission(player, "logblock.lookup"))
try {
final QueryParams params = config.toolQuery.clone();
params.parseArgs(sender, argsToList(args, 1));
logblock.getSession(player.getName()).toolQuery = params;
sender.sendMessage(ChatColor.GREEN + "Set tool query to: " + params.getTitle());
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (args[1].equalsIgnoreCase("enable") || args[1].equalsIgnoreCase("on")) {
logblock.getSession(player.getName()).toolEnabled = true;
player.sendMessage(ChatColor.GREEN + "Tool enabled.");
} else if (args[1].equalsIgnoreCase("disable") || args[1].equalsIgnoreCase("off")) {
logblock.getSession(player.getName()).toolEnabled = false;
player.sendMessage(ChatColor.GREEN + "Tool disabled.");
} else if (args[1].equalsIgnoreCase("mode")) {
final Session session = logblock.getSession(player.getName());
if (args.length == 3) {
final ToolMode mode;
try {
mode = ToolMode.valueOf(args[2].toUpperCase());
} catch (final IllegalArgumentException ex) {
sender.sendMessage(ChatColor.RED + "Can't find mode " + args[2]);
return true;
}
if (logblock.hasPermission(player, mode.getPermission())) {
session.toolMode = mode;
sender.sendMessage(ChatColor.GREEN + "Tool mode set to " + args[2]);
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to use mode " + args[2]);
} else
player.sendMessage(ChatColor.RED + "No mode specified");
} else if (args[1].equalsIgnoreCase("default")) {
final Session session = logblock.getSession(player.getName());
session.toolQuery = config.toolQuery.clone();
session.toolMode = ToolMode.LOOKUP;
sender.sendMessage(ChatColor.GREEN + "Tool set to default.");
} else if (logblock.hasPermission(player, "logblock.lookup"))
try {
final QueryParams params = config.toolQuery.clone();
params.parseArgs(sender, argsToList(args, 1));
logblock.getSession(player.getName()).toolQuery = params;
sender.sendMessage(ChatColor.GREEN + "Set tool query to: " + params.getTitle());
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("toolblock") || command.equals("tb")) {
if (sender instanceof Player) {
final Player player = (Player)sender;
if (args.length == 1) {
if (logblock.hasPermission(player, "logblock.toolblock"))
giveTool(player, config.toolblockID);
else
player.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (args[1].equalsIgnoreCase("enable") || args[1].equalsIgnoreCase("on")) {
logblock.getSession(player.getName()).toolBlockEnabled = true;
player.sendMessage(ChatColor.GREEN + "Tool block enabled.");
} else if (args[1].equalsIgnoreCase("disable") || args[1].equalsIgnoreCase("off")) {
logblock.getSession(player.getName()).toolBlockEnabled = false;
player.sendMessage(ChatColor.GREEN + "Tool block disabled.");
} else if (args[1].equalsIgnoreCase("mode")) {
final Session session = logblock.getSession(player.getName());
if (args.length == 3) {
final ToolMode mode;
try {
mode = ToolMode.valueOf(args[2].toUpperCase());
} catch (final IllegalArgumentException ex) {
sender.sendMessage(ChatColor.RED + "Can't find mode " + args[2]);
return true;
}
if (logblock.hasPermission(player, mode.getPermission())) {
session.toolBlockMode = mode;
sender.sendMessage(ChatColor.GREEN + "Toolblock mode set to " + args[2]);
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to use mode " + args[2]);
} else
player.sendMessage(ChatColor.RED + "No mode specified");
} else if (args[1].equalsIgnoreCase("default")) {
final Session session = logblock.getSession(player.getName());
session.toolBlockQuery = config.toolBlockQuery.clone();
session.toolBlockMode = ToolMode.LOOKUP;
sender.sendMessage(ChatColor.GREEN + "Toolblock set to default.");
} else if (logblock.hasPermission(player, "logblock.lookup"))
try {
final QueryParams params = config.toolBlockQuery.clone();
params.parseArgs(sender, argsToList(args, 1));
logblock.getSession(player.getName()).toolBlockQuery = params;
sender.sendMessage(ChatColor.GREEN + "Set tool block query to: " + params.getTitle());
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("hide")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.hide")) {
if (logblock.getConsumer().hide((Player)sender))
sender.sendMessage(ChatColor.GREEN + "You are now hidden and aren't logged. Type '/lb hide' again to unhide");
else
sender.sendMessage(ChatColor.GREEN + "You aren't hidden anylonger.");
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("page")) {
if (args.length == 2 && isInt(args[1]))
showPage(sender, Integer.valueOf(args[1]));
else
sender.sendMessage(ChatColor.RED + "You have to specify a page");
} else if (command.equals("next") || command.equals("+"))
showPage(sender, logblock.getSession(senderName(sender)).page + 1);
else if (command.equals("prev") || command.equals("-"))
showPage(sender, logblock.getSession(senderName(sender)).page - 1);
else if (args[0].equalsIgnoreCase("savequeue")) {
if (logblock.hasPermission(sender, "logblock.rollback"))
try {
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("toolblock") || command.equals("tb")) {
if (sender instanceof Player) {
final Player player = (Player)sender;
if (args.length == 1) {
if (logblock.hasPermission(player, "logblock.toolblock"))
giveTool(player, config.toolblockID);
else
player.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (args[1].equalsIgnoreCase("enable") || args[1].equalsIgnoreCase("on")) {
logblock.getSession(player.getName()).toolBlockEnabled = true;
player.sendMessage(ChatColor.GREEN + "Tool block enabled.");
} else if (args[1].equalsIgnoreCase("disable") || args[1].equalsIgnoreCase("off")) {
logblock.getSession(player.getName()).toolBlockEnabled = false;
player.sendMessage(ChatColor.GREEN + "Tool block disabled.");
} else if (args[1].equalsIgnoreCase("mode")) {
final Session session = logblock.getSession(player.getName());
if (args.length == 3) {
final ToolMode mode;
try {
mode = ToolMode.valueOf(args[2].toUpperCase());
} catch (final IllegalArgumentException ex) {
sender.sendMessage(ChatColor.RED + "Can't find mode " + args[2]);
return true;
}
if (logblock.hasPermission(player, mode.getPermission())) {
session.toolBlockMode = mode;
sender.sendMessage(ChatColor.GREEN + "Toolblock mode set to " + args[2]);
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to use mode " + args[2]);
} else
player.sendMessage(ChatColor.RED + "No mode specified");
} else if (args[1].equalsIgnoreCase("default")) {
final Session session = logblock.getSession(player.getName());
session.toolBlockQuery = config.toolBlockQuery.clone();
session.toolBlockMode = ToolMode.LOOKUP;
sender.sendMessage(ChatColor.GREEN + "Toolblock set to default.");
} else if (logblock.hasPermission(player, "logblock.lookup"))
try {
final QueryParams params = config.toolBlockQuery.clone();
params.parseArgs(sender, argsToList(args, 1));
logblock.getSession(player.getName()).toolBlockQuery = params;
sender.sendMessage(ChatColor.GREEN + "Set tool block query to: " + params.getTitle());
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("hide")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.hide")) {
if (logblock.getConsumer().hide((Player)sender))
sender.sendMessage(ChatColor.GREEN + "You are now hidden and aren't logged. Type '/lb hide' again to unhide");
else
sender.sendMessage(ChatColor.GREEN + "You aren't hidden anylonger.");
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("page")) {
if (args.length == 2 && isInt(args[1]))
showPage(sender, Integer.valueOf(args[1]));
else
sender.sendMessage(ChatColor.RED + "You have to specify a page");
} else if (command.equals("next") || command.equals("+"))
showPage(sender, logblock.getSession(senderName(sender)).page + 1);
else if (command.equals("prev") || command.equals("-"))
showPage(sender, logblock.getSession(senderName(sender)).page - 1);
else if (args[0].equalsIgnoreCase("savequeue")) {
if (logblock.hasPermission(sender, "logblock.rollback"))
new CommandSaveQueue(sender, null, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("rollback") || command.equals("undo") || command.equals("rb")) {
if (logblock.hasPermission(sender, "logblock.rollback"))
try {
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("rollback") || command.equals("undo") || command.equals("rb")) {
if (logblock.hasPermission(sender, "logblock.rollback")) {
final QueryParams params = new QueryParams(logblock);
params.minutes = logblock.getConfig().defaultTime;
params.parseArgs(sender, argsToList(args, 1));
@@ -271,14 +268,10 @@ public class CommandsHandler implements CommandExecutor
params.sum = SummarizationMode.NONE;
params.bct = BlockChangeType.ALL;
new CommandRollback(sender, params, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("redo")) {
if (logblock.hasPermission(sender, "logblock.rollback"))
try {
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("redo")) {
if (logblock.hasPermission(sender, "logblock.rollback")) {
final QueryParams params = new QueryParams(logblock);
params.minutes = logblock.getConfig().defaultTime;
params.parseArgs(sender, argsToList(args, 1));
@@ -287,79 +280,59 @@ public class CommandsHandler implements CommandExecutor
params.sum = SummarizationMode.NONE;
params.bct = BlockChangeType.ALL;
new CommandRedo(sender, params, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("me")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.me"))
try {
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else if (command.equals("me")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.me")) {
final Player player = (Player)sender;
final QueryParams params = new QueryParams(logblock);
params.setPlayer(player.getName());
params.sum = SummarizationMode.TYPES;
params.world = player.getWorld();
new CommandLookup(sender, params, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("writelogfile")) {
if (logblock.hasPermission(sender, "logblock.rollback"))
try {
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this.");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("writelogfile")) {
if (logblock.hasPermission(sender, "logblock.rollback")) {
final QueryParams params = new QueryParams(logblock, sender, argsToList(args, 1));
params.limit = -1;
params.bct = BlockChangeType.ALL;
params.sum = SummarizationMode.NONE;
new CommandWriteLogFile(sender, params, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else if (command.equals("clearlog")) {
if (logblock.hasPermission(sender, "logblock.clearlog"))
try {
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else if (command.equals("clearlog")) {
if (logblock.hasPermission(sender, "logblock.clearlog")) {
final QueryParams params = new QueryParams(logblock, sender, argsToList(args, 1));
params.bct = BlockChangeType.ALL;
params.limit = -1;
new CommandClearLog(sender, params, true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else if (command.equals("tp")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.tp"))
try {
new CommandTeleport(sender, new QueryParams(logblock, sender, argsToList(args, 1)), true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("lookup") || QueryParams.isKeyWord(args[0])) {
if (logblock.hasPermission(sender, "logblock.lookup"))
try {
} else if (command.equals("tp")) {
if (sender instanceof Player) {
if (logblock.hasPermission(sender, "logblock.tp"))
new CommandTeleport(sender, new QueryParams(logblock, sender, argsToList(args, 1)), true);
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else
sender.sendMessage(ChatColor.RED + "You have to be a player.");
} else if (command.equals("lookup") || QueryParams.isKeyWord(args[0])) {
if (logblock.hasPermission(sender, "logblock.lookup")) {
final List<String> argsList = new ArrayList<String>(Arrays.asList(args));
if (command.equals("lookup"))
argsList.remove(0);
new CommandLookup(sender, new QueryParams(logblock, sender, argsList), true);
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else
sender.sendMessage(ChatColor.RED + "Unknown command '" + args[0] + "'");
} else
sender.sendMessage(ChatColor.RED + "You aren't allowed to do this");
} else
sender.sendMessage(ChatColor.RED + "Unknown command '" + args[0] + "'");
}
} catch (final Exception ex) {
sender.sendMessage(ChatColor.RED + ex.getMessage());
}
return true;
}

View File

@@ -284,7 +284,7 @@ public class QueryParams implements Cloneable
else
minutes = parseTimeSpec(values);
if (minutes == -1)
throw new IllegalArgumentException("Faile to parse time spec for '" + param + "'");
throw new IllegalArgumentException("Failed to parse time spec for '" + param + "'");
} else if (param.equals("before")) {
if (values == null)
minutes = logblock.getConfig().defaultTime * -1;