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

Помогите Ввод команды только для ника

Discussion in 'Разработка плагинов для новичков' started by oleg57zls, Nov 20, 2013.

  1. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Нужен код, который позволит прописывать команду только определенному игроку (По нику)
    Остальным же, из игры нельзя будет писать эту команду. Так-же чтобы можно было от имени сервера (Консоль)
     
  2. Хостинг MineCraft
    <
  3. elektro3000

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

    Trophy Points:
    103
    Имя в Minecraft:
    elektro
    Пермишен не помогает?:)
     
  4. StealerSlain

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

    Trophy Points:
    88
    Имя в Minecraft:
    StealerSlain
    Попробуй if(sender.getDisplayName() == "nickname" && //тут команда)

    Ну лучше конечно взять ответ снизу :)

    сам только учусь
     
    Last edited: Nov 20, 2013
  5. BeYkeR

    BeYkeR Старожил Девелопер Пользователь

    Trophy Points:
    173
    Code:
    if(sender.getName().equals("PlayerName"){
    //Код
    }
    
     
  6. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Ещё нужна проверка, что это игрок вообще
    Code:
    if(!(sender instanceof Player)) {
    // Команду ввел не игрок
    return true;
    }
     
  7. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Я так понимаю sender - это класс файл?
    И еще, у меня вот это место: ){ ошибкой подчеркивается в if(sender.getName().equals("PlayerName"){
     
  8. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    sender это переменная типа CommandSender, имеется в аргументах метода onCommand(...), если она по другому названо, то будет подчёркивать.
     
  9. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Так должно быть?
    Code:
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            if(sender.getName().equals("PlayerName")){
                //Код
                if(!(sender instanceof Player)) {
                    // Команду ввел не игрок
                    return true;
                    }
                }
            return true;
        }
     
  10. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Сначала сделай проверку, что это игрок, а потом имени.
     
    I-Am-Black-Overlord likes this.
  11. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    И еще, мне нужно создать команду внутри для запрета ее?
    или код уже существующей? и где его можно посмотреть?[DOUBLEPOST=1385127671,1385127641][/DOUBLEPOST]
    Проверку имени внутри проверки игрока?[DOUBLEPOST=1385128353][/DOUBLEPOST]И что нужно написать в: if(sender.getName().equals("PlayerName")){
    Чтобы вместо одного игрока, было два?
     
  12. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Через или(||)
     
  13. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    Без скобок?
     
  14. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Code:
    sender.getName().equalsIgnoreCase("Вася Пупков") || sender.getName().equalsIgnoreCase("Иван Грозный")
    Да и вообще, почитай про синтаксис java уже.
     
  15. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    А как сделать так, чтобы команда была запрещена всем, кроме... (Код выше)
     
  16. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Ты же итак сделал проверку на ник, она ни у кого больше не исполнится.
     
  17. Автор темы
    oleg57zls

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

    Trophy Points:
    173
    Skype:
    BlayzerQ
    Имя в Minecraft:
    Blayzer
    А другие плагины этому могут мешать?
     
  18. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Нет
     
  19. smilesdc

    smilesdc Няша Модератор

    Trophy Points:
    153
    Имя в Minecraft:
    smilesdc
    Den_Abr, сочувствую xD
     
  20. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Trophy Points:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    В чём?
     
  21. smilesdc

    smilesdc Няша Модератор

    Trophy Points:
    153
    Имя в Minecraft:
    smilesdc
    Люди даже синтаксиса не знают, а ты учишь)
     
    Den_Abr likes this.

Share This Page