Class BaseCommand

java.lang.Object
fr.luc.crcore.command.AbstractCommand
fr.luc.crcore.command.BaseCommand
All Implemented Interfaces:
Command, org.bukkit.command.CommandExecutor, org.bukkit.command.TabCompleter
Direct Known Subclasses:
CoreCommand

public abstract class BaseCommand extends AbstractCommand implements org.bukkit.command.CommandExecutor, org.bukkit.command.TabCompleter
Commande top-level branchée sur Bukkit. À utiliser comme racine de l'arbre :
PluginCommand cmd = plugin.getCommand("core");
cmd.setExecutor(new CoreCommand(...));
cmd.setTabCompleter((CoreCommand) cmd.getExecutor());

BaseCommand se contente de relayer onCommand et onTabComplete vers AbstractCommand.dispatch(CommandSender, String, String[]) et AbstractCommand.tabComplete(CommandSender, String[]). Toute la logique (routage récursif, permissions, player-only, parsing d'arguments) vit dans AbstractCommand.

  • Constructor Details

    • BaseCommand

      protected BaseCommand(String name, String... aliases)
  • Method Details

    • onCommand

      public final boolean onCommand(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String label, String[] args)
      Specified by:
      onCommand in interface org.bukkit.command.CommandExecutor
    • onTabComplete

      public final List<String> onTabComplete(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String alias, String[] args)
      Specified by:
      onTabComplete in interface org.bukkit.command.TabCompleter
    • handleResult

      protected void handleResult(org.bukkit.command.CommandSender sender, CommandResult result)
      Affiche le CommandResult à l'utilisateur. Override pour personnaliser le formatage (couleurs, locales, etc.).