Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Как создать аргумент для команды

Тема в разделе "Разработка плагинов для новичков", создана пользователем VLnet, 8 авг 2015.

Статус темы:
Закрыта.
  1. Автор темы
    VLnet

    VLnet Участник Пользователь

    Баллы:
    36
    Skype:
    The_Vladimir_UA
    Не могу понять как создать команду с определённым аргументом, но так, чтоб когда вводится допустим /test - выполнялось одно, а когда /test arg arg2 arg3 к примеру - уже другое.

    То, что я знаю:
    Код:
    public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
        if(cmd.getName().equalsIgnoreCase("test")){ - аргумента нет
            выполняется что-то
        }
        return false;}
    }
     
  2. Хостинг MineCraft
    <
  3. Code

    Code Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    _Gizmo
    тебе передается args. проверяй args.length
     
  4. Автор темы
    VLnet

    VLnet Участник Пользователь

    Баллы:
    36
    Skype:
    The_Vladimir_UA
    а пример можно? не совсем понял как проверить...
     
  5. LomNar

    LomNar Активный участник Пользователь

    Баллы:
    78
    Skype:
    radius981
    Имя в Minecraft:
    LomNar
    Код:
        @Override
        public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
            if (cmd.getName().equals("test")) {
                if (args.length == 1) { //к примеру: /test test
                    sender.sendMessage("args: " + args[0]);
                }
            }
            return false;
        }
     
  6. Автор темы
    VLnet

    VLnet Участник Пользователь

    Баллы:
    36
    Skype:
    The_Vladimir_UA
    Код:
      @Override
      public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
      if (cmd.getName().equals("test")) {
      if (args.length == 1 && args[0] == "add") {
         sender.sendMessage("аргумент add");
         return true;
      }
      sender.sendMessage("Нет аргумента");
      return true;
      }
      return false;
      }
    
    Решил добавить проверку "какой именно аргумент", но по неведомым мне причинам if всегда выдает false
    не пинайте сильно, только учусь :)
     
  7. LomNar

    LomNar Активный участник Пользователь

    Баллы:
    78
    Skype:
    radius981
    Имя в Minecraft:
    LomNar
    Код:
    args[0].equals("add");
     
  8. Автор темы
    VLnet

    VLnet Участник Пользователь

    Баллы:
    36
    Skype:
    The_Vladimir_UA
    Cпасибо! Вопрос решен.
     
Статус темы:
Закрыта.

Поделиться этой страницей