From 31ae195bab6b6a91d2f89325efa313864511caaf Mon Sep 17 00:00:00 2001 From: 502647092 Date: Thu, 24 Sep 2015 20:31:08 +0800 Subject: [PATCH] fix some command error... Signed-off-by: 502647092 --- .../residence/commandsub/CommandLease.java | 2 +- .../residence/commandsub/CommandLimits.java | 1 + .../residence/commandsub/CommandList.java | 1 + .../residence/commandsub/CommandListAll.java | 1 + .../commandsub/CommandListHidden.java | 1 + .../residence/commandsub/CommandSelect.java | 120 +++++++++--------- 6 files changed, 67 insertions(+), 59 deletions(-) diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLease.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLease.java index bb267e4..a5e9630 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLease.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLease.java @@ -18,7 +18,7 @@ public class CommandLease extends BaseCommand { Residence plugin; public CommandLease(final Residence plugin) { - super("?"); + super("lease"); this.plugin = plugin; setOnlyPlayerExecutable(true); setMinimumArguments(2); diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLimits.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLimits.java index d60a56d..a3e5f39 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLimits.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandLimits.java @@ -16,6 +16,7 @@ public class CommandLimits extends BaseCommand { public CommandLimits(final Residence plugin) { super("limits"); this.plugin = plugin; + setOnlyPlayerExecutable(true); } @Override diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandList.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandList.java index 762ce97..4a47b59 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandList.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandList.java @@ -16,6 +16,7 @@ public class CommandList extends BaseCommand { public CommandList(final Residence plugin) { super("list"); this.plugin = plugin; + setOnlyPlayerExecutable(true); } @Override diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListAll.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListAll.java index 4554929..fbeb88c 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListAll.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListAll.java @@ -16,6 +16,7 @@ public class CommandListAll extends BaseCommand { public CommandListAll(final Residence plugin) { super("listall"); this.plugin = plugin; + setOnlyPlayerExecutable(true); } @Override diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListHidden.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListHidden.java index 74faebc..68c0669 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListHidden.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandListHidden.java @@ -18,6 +18,7 @@ public class CommandListHidden extends BaseCommand { public CommandListHidden(final Residence plugin) { super("listhidden"); this.plugin = plugin; + setOnlyPlayerExecutable(true); } @Override diff --git a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandSelect.java b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandSelect.java index 598e3e5..4de70f2 100644 --- a/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandSelect.java +++ b/src/main/java/com/bekvon/bukkit/residence/commandsub/CommandSelect.java @@ -26,7 +26,9 @@ public class CommandSelect extends BaseCommand { public CommandSelect(final Residence plugin) { super("select"); this.plugin = plugin; + setMinimumArguments(1); setOnlyPlayerExecutable(true); + setPossibleArguments("请使用/res select ? 查看帮助"); setPermission("residence.select"); } @@ -48,8 +50,13 @@ public class CommandSelect extends BaseCommand { player.sendMessage(ChatColor.RED + language.getPhrase("SelectDiabled")); return; } - if (args.length == 1) { - if (args[0].equals("size") || args[0].equals("cost")) { + + final String subcmd = args[0]; + switch (args.length) { + case 1: + switch (subcmd) { + case "size": + case "cost": if (smanager.hasPlacedBoth(player.getName())) { try { smanager.showSelectionInfo(player); @@ -67,16 +74,17 @@ public class CommandSelect extends BaseCommand { return; } } - } else if (args[0].equals("vert")) { + return; + case "vert": smanager.vert(player, resadmin); return; - } else if (args[0].equals("sky")) { + case "sky": smanager.sky(player, resadmin); return; - } else if (args[0].equals("bedrock")) { + case "bedrock": smanager.bedrock(player, resadmin); return; - } else if (args[0].equals("coords")) { + case "coords": final Location playerLoc1 = smanager.getPlayerLoc1(player.getName()); if (playerLoc1 != null) { player.sendMessage(ChatColor.GREEN + language.getPhrase("Primary.Selection") + ":" + ChatColor.AQUA + " (" + playerLoc1.getBlockX() + ", " + playerLoc1.getBlockY() + ", " @@ -88,76 +96,72 @@ public class CommandSelect extends BaseCommand { + playerLoc2.getBlockZ() + ")"); } return; - } else if (args[0].equals("chunk")) { + case "chunk": smanager.selectChunk(player); return; - } else if (args[0].equals("worldedit")) { + case "worldedit": if (smanager.worldEdit(player)) { player.sendMessage(ChatColor.GREEN + plugin.getLanguage().getPhrase("SelectionSuccess")); } return; } - } else if (args.length == 2) { - if (args[0].equals("expand")) { - int amount; - try { - amount = Integer.parseInt(args[1]); - } catch (final Exception ex) { - player.sendMessage(ChatColor.RED + language.getPhrase("InvalidAmount")); - return; - } + return; + case 2: + int amount; + try { + amount = Integer.parseInt(args[1]); + } catch (final Exception ex) { + player.sendMessage(ChatColor.RED + language.getPhrase("InvalidAmount")); + return; + } + switch (subcmd) { + case "expand": smanager.modify(player, false, amount); return; - } else if (args[0].equals("shift")) { - int amount; - try { - amount = Integer.parseInt(args[1]); - } catch (final Exception ex) { - player.sendMessage(ChatColor.RED + language.getPhrase("InvalidAmount")); - return; - } + case "shift": smanager.modify(player, true, amount); return; } - } - if (args.length > 0 && args[0].equals("residence")) { - String resName; - String areaName; - ClaimedResidence res = null; - if (args.length > 1) { - res = rmanager.getByName(args[1]); - } else { - res = rmanager.getByLoc(player.getLocation()); - } - if (res == null) { - player.sendMessage(ChatColor.RED + language.getPhrase("InvalidResidence")); - return; - } - resName = res.getName(); - CuboidArea area = null; - if (args.length > 2) { - area = res.getArea(args[2]); - areaName = args[2]; - } else { - areaName = res.getAreaIDbyLoc(player.getLocation()); - area = res.getArea(areaName); - } - if (area != null) { - smanager.placeLoc1(player, area.getHighLoc()); - smanager.placeLoc2(player, area.getLowLoc()); - player.sendMessage(ChatColor.GREEN + language.getPhrase("SelectionArea", ChatColor.GOLD + areaName + ChatColor.GREEN + "." + ChatColor.GOLD + resName + ChatColor.GREEN)); - } else { - player.sendMessage(ChatColor.RED + language.getPhrase("AreaNonExist")); - } return; - } else { + case 3: try { smanager.selectBySize(player, Integer.parseInt(args[0]), Integer.parseInt(args[1]), Integer.parseInt(args[2])); - return; } catch (final Exception ex) { player.sendMessage(ChatColor.RED + language.getPhrase("SelectionFail")); - return; } + return; + default: + if (args.length > 0) { + String resName; + String areaName; + ClaimedResidence res = null; + if (args.length > 1) { + res = rmanager.getByName(args[0]); + } else { + res = rmanager.getByLoc(player.getLocation()); + } + if (res == null) { + player.sendMessage(ChatColor.RED + language.getPhrase("InvalidResidence")); + return; + } + resName = res.getName(); + CuboidArea area = null; + if (args.length > 2) { + area = res.getArea(args[1]); + areaName = args[1]; + } else { + areaName = res.getAreaIDbyLoc(player.getLocation()); + area = res.getArea(areaName); + } + if (area != null) { + smanager.placeLoc1(player, area.getHighLoc()); + smanager.placeLoc2(player, area.getLowLoc()); + player.sendMessage(ChatColor.GREEN + language.getPhrase("SelectionArea", ChatColor.GOLD + areaName + ChatColor.GREEN + "." + ChatColor.GOLD + resName + ChatColor.GREEN)); + } else { + player.sendMessage(ChatColor.RED + language.getPhrase("AreaNonExist")); + } + } + return; } }