2017-01-09 2 views
1
public class commandImp extends JavaPlugin { 
    @Override 
    public void onEnable() { 
     this.getCommand("impersonate").setExecutor(new commandImp()); 
     this.getCommand("imp").setExecutor(new commandImp()); 
    } 
    @Override 
    public boolean onCommand(CommandSender sender, Command command, String alias, String[] args) { 
     Player player = (Player) sender; 
     if (sender instanceof Player) { 
      if (player.hasPermission("gate.imp")) { 
       if (alias.equalsIgnoreCase("imp") || alias.equalsIgnoreCase("impersonate")) { 
        if (args.length == 0) { 
         player.sendMessage(ChatColor.GRAY + "----- " + ChatColor.DARK_GREEN + "/impersonate" + ChatColor.GRAY + " -----"); 
... 

私のクラスファイルはcommandImp.classと呼ばれます。このコマンドはうまく動作しますが、方法onEnable()の下に表示されているように。私は2つのコマンド "impersonate"と "imp"(エイリアスとして短縮)を登録しました。私はゲーム内で入力/偽装して動作します。しかし、私が/ impを入力すると、動作しません。1に2つのコマンドを登録するには

どのようにして両者を動作させることができますか?

答えて

4

plugin.ymlファイルに登録されているコマンドにエイリアスセクションを使用すると、同じコマンド実行プログラムを起動する多くのコマンドを実行できます。これの形式は次のとおりです。

commands: 
    myCommand: 
     aliases: [command, aliases, here] 
関連する問題