diff --git a/src/cn/citycraft/SimpleEssential/command/BaseCommand.java b/src/cn/citycraft/SimpleEssential/command/BaseCommand.java index 5bd824b..04862ed 100644 --- a/src/cn/citycraft/SimpleEssential/command/BaseCommand.java +++ b/src/cn/citycraft/SimpleEssential/command/BaseCommand.java @@ -1,16 +1,16 @@ /** - * + * */ package cn.citycraft.SimpleEssential.command; +import org.bukkit.Bukkit; import org.bukkit.command.CommandException; import org.bukkit.command.CommandSender; /** * 基础命令类 - * - * @author 蒋天蓓 - * 2015年8月12日下午12:49:34 + * + * @author 蒋天蓓 2015年8月12日下午12:49:34 */ public abstract class BaseCommand { private String name; @@ -24,66 +24,12 @@ public abstract class BaseCommand { public BaseCommand(String name, String... aliases) { this.name = name; this.aliases = aliases; + Bukkit.getLogger().info("注册命令: " + name + aliases); } - /** - * 获取命令名称 - * - * @return 命令名称 - */ - public String getName() { - return name; - } - - /** - * 设置命令权限 - * - * @param permission - * - 命令权限 - */ - public void setPermission(String permission) { - this.permission = permission; - } - - /** - * 获得命令权限 - * - * @return 目录命令权限 - */ - public String getPermission() { - return permission; - } - - /** - * 检查Sender权限 - * - * @param sender - * - 命令发送者 - * @return 是否有权限执行命令 - */ - public final boolean hasPermission(CommandSender sender) { - if (permission == null) - return true; - return sender.hasPermission(permission); - } - - /** - * 获得可能的参数 - * - * @return - */ - public abstract String getPossibleArguments(); - - /** - * 获得最小参数个数 - * - * @return 最小参数个数 - */ - public abstract int getMinimumArguments(); - /** * 执行命令参数 - * + * * @param sender * - 命令发送者 * @param label @@ -95,32 +41,85 @@ public abstract class BaseCommand { */ public abstract void execute(CommandSender sender, String label, String[] args) throws CommandException; + /** + * 获得最小参数个数 + * + * @return 最小参数个数 + */ + public abstract int getMinimumArguments(); + + /** + * 获取命令名称 + * + * @return 命令名称 + */ + public String getName() { + return name; + } + + /** + * 获得命令权限 + * + * @return 目录命令权限 + */ + public String getPermission() { + return permission; + } + + /** + * 获得可能的参数 + * + * @return + */ + public abstract String getPossibleArguments(); + + /** + * 检查Sender权限 + * + * @param sender + * - 命令发送者 + * @return 是否有权限执行命令 + */ + public final boolean hasPermission(CommandSender sender) { + if (permission == null) + return true; + return sender.hasPermission(permission); + } + /** * 是否只有玩家才能执行此命令 - * + * * @return 是否为玩家命令 */ public abstract boolean isOnlyPlayerExecutable(); /** * 命令匹配检测 - * + * * @param name * - 命令 * @return 是否匹配 */ public final boolean isValidTrigger(String name) { - if (this.name.equalsIgnoreCase(name)) { + if (this.name.equalsIgnoreCase(name)) return true; - } if (aliases != null) { for (String alias : aliases) { - if (alias.equalsIgnoreCase(name)) { + if (alias.equalsIgnoreCase(name)) return true; - } } } return false; } + /** + * 设置命令权限 + * + * @param permission + * - 命令权限 + */ + public void setPermission(String permission) { + this.permission = permission; + } + }