Better display of BadCommandUsage message on paper server
This commit is contained in:
parent
7795d94dfb
commit
2393352770
@ -0,0 +1,29 @@
|
|||||||
|
package fr.pandacube.lib.commands;
|
||||||
|
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Throw an instance of this exception to indicate to the plugin command handler that the user has missused the command.
|
||||||
|
* The message, if provided, must indicate the reason of the mussusage of the command. It will be displayed on the
|
||||||
|
* screen with eventual indications of how to use the command (help command for example).
|
||||||
|
* If a {@link Throwable} cause is provided, it will be relayed to the plugin {@link Logger}.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class BadCommandUsage extends RuntimeException {
|
||||||
|
|
||||||
|
public BadCommandUsage() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public BadCommandUsage(Throwable cause) {
|
||||||
|
super(cause);
|
||||||
|
}
|
||||||
|
|
||||||
|
public BadCommandUsage(String message) {
|
||||||
|
super(message);
|
||||||
|
}
|
||||||
|
|
||||||
|
public BadCommandUsage(String message, Throwable cause) {
|
||||||
|
super(message, cause);
|
||||||
|
}
|
||||||
|
}
|
@ -10,6 +10,7 @@ import com.mojang.brigadier.tree.CommandNode;
|
|||||||
import com.mojang.brigadier.tree.LiteralCommandNode;
|
import com.mojang.brigadier.tree.LiteralCommandNode;
|
||||||
import com.mojang.brigadier.tree.RootCommandNode;
|
import com.mojang.brigadier.tree.RootCommandNode;
|
||||||
import fr.pandacube.lib.chat.Chat;
|
import fr.pandacube.lib.chat.Chat;
|
||||||
|
import fr.pandacube.lib.commands.BadCommandUsage;
|
||||||
import fr.pandacube.lib.commands.BrigadierCommand;
|
import fr.pandacube.lib.commands.BrigadierCommand;
|
||||||
import fr.pandacube.lib.commands.SuggestionsSupplier;
|
import fr.pandacube.lib.commands.SuggestionsSupplier;
|
||||||
import fr.pandacube.lib.paper.permissions.PandalibPaperPermissions;
|
import fr.pandacube.lib.paper.permissions.PandalibPaperPermissions;
|
||||||
@ -461,6 +462,9 @@ public abstract class PaperBrigadierCommand extends BrigadierCommand<BukkitBriga
|
|||||||
return cmd.run(context);
|
return cmd.run(context);
|
||||||
} catch(CommandSyntaxException e) {
|
} catch(CommandSyntaxException e) {
|
||||||
throw e;
|
throw e;
|
||||||
|
} catch (BadCommandUsage e) {
|
||||||
|
getCommandSender(context).sendMessage(Chat.failureText("Error while using the command: " + e.getMessage()));
|
||||||
|
return 0;
|
||||||
} catch (Throwable t) {
|
} catch (Throwable t) {
|
||||||
Log.severe(t);
|
Log.severe(t);
|
||||||
getCommandSender(context).sendMessage(Chat.failureText("Error while executing the command: " + t));
|
getCommandSender(context).sendMessage(Chat.failureText("Error while executing the command: " + t));
|
||||||
|
Loading…
Reference in New Issue
Block a user