From e665d5fcbf24dc63f7c412d42a52edd62426f639 Mon Sep 17 00:00:00 2001 From: Steven Lawson Date: Tue, 9 Apr 2013 22:32:04 -0400 Subject: [PATCH] Add in standard usage message for commands that have improper syntax. --- appinfo.properties | 6 ++--- buildnumber.properties | 4 +-- .../Commands/TFM_CommandLoader.java | 27 ++++++++++++++++++- 3 files changed, 31 insertions(+), 6 deletions(-) diff --git a/appinfo.properties b/appinfo.properties index 1cbafb42..07c68ff6 100644 --- a/appinfo.properties +++ b/appinfo.properties @@ -1,5 +1,5 @@ -#Tue, 09 Apr 2013 22:12:33 -0400 +#Tue, 09 Apr 2013 22:30:34 -0400 program.VERSION=2.13 -program.BUILDNUM=155 -program.BUILDDATE=04/09/2013 10\:12 PM +program.BUILDNUM=157 +program.BUILDDATE=04/09/2013 10\:30 PM diff --git a/buildnumber.properties b/buildnumber.properties index 7f6c04f2..5dcf3529 100644 --- a/buildnumber.properties +++ b/buildnumber.properties @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Tue Apr 09 22:12:33 EDT 2013 -build.number=156 +#Tue Apr 09 22:30:34 EDT 2013 +build.number=158 diff --git a/src/me/StevenLawson/TotalFreedomMod/Commands/TFM_CommandLoader.java b/src/me/StevenLawson/TotalFreedomMod/Commands/TFM_CommandLoader.java index 890059bd..6ae21be7 100644 --- a/src/me/StevenLawson/TotalFreedomMod/Commands/TFM_CommandLoader.java +++ b/src/me/StevenLawson/TotalFreedomMod/Commands/TFM_CommandLoader.java @@ -14,6 +14,7 @@ import me.StevenLawson.TotalFreedomMod.TFM_Util; import me.StevenLawson.TotalFreedomMod.TotalFreedomMod; import org.bukkit.Bukkit; import org.bukkit.command.Command; +import org.bukkit.command.CommandException; import org.bukkit.command.CommandMap; import org.bukkit.command.CommandSender; import org.bukkit.command.PluginIdentifiableCommand; @@ -206,7 +207,31 @@ public class TFM_CommandLoader @Override public boolean execute(CommandSender sender, String commandLabel, String[] args) { - return getPlugin().onCommand(sender, this, commandLabel, args); + boolean success = false; + + if (!getPlugin().isEnabled()) + { + return false; + } + + try + { + success = getPlugin().onCommand(sender, this, commandLabel, args); + } + catch (Throwable ex) + { + throw new CommandException("Unhandled exception executing command '" + commandLabel + "' in plugin " + getPlugin().getDescription().getFullName(), ex); + } + + if (!success && getUsage().length() > 0) + { + for (String line : getUsage().replace("", commandLabel).split("\n")) + { + sender.sendMessage(line); + } + } + + return success; } @Override