1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Стартап Помощь новичкам и тем, кто мало писал плагины. (+ LifeHack'и)

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

  1. SantaClaus228

    SantaClaus228 Новичок

    Баллы:
    6
    Имя в Minecraft:
    SantaClaus228
    Можно написать плагин Memescase на 1.12.2Ю,а то у ютубера качал, а он не работает! Выдаю ключи открываю и нечё не вертиться, и также с картами не чё не раскрывается!
     
  2. d1anjke

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

    Баллы:
    76
    Имя в Minecraft:
    LuYM
    тема другая
     
  3. Hamsster

    Hamsster Активный участник

    Баллы:
    61
    Имя в Minecraft:
    Vesnushka
    подскажите, где изменить предмет, которым можно добыть руду? хочу, чтобы моя руда добывалась только определенным предметом
     
  4. MyP3iK

    MyP3iK Ньюби

    Баллы:
    1
    Имя в Minecraft:
    MyP3iK
    Народ хелп, мне нужно чтобы выводился список игроков онлайн в уже созданную мной менюшку. Т.е если на сервере 2 игрока(А и Б), то в менюшке добавляеются 2 головы с никами А и Б, нажав на которые выполняются разные действия.
     
  5. php5master

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

    Баллы:
    66
    Может уже и поздно, но отвечу. Перебираешь Bukkit.getOnlinePlayers() в onEnable, и при playerJoinEvent добавляешь в инвентарь бошку.
    Бошка по нику достаётся так(до 1,13):
    PHP:
    public Skull getPlayerHead(Player p) {
      
    ItemStack skull = new ItemStack(Material.SKULL1);
      
    SkullMeta skullMeta skull.getMetadata();
      
    skullMeta.setDisplayName(p.getName()); //подписывает бошку именем игрока
      
    skullMeta.setOwner(p); // ставит скин головы игрока
      
    skull.setItemMeta(skullMeta);
      return 
    skull;
    }
    Элементарно, Ватсон.
     
  6. ilyatemirov123

    ilyatemirov123 Новичок

    Баллы:
    6
    Имя в Minecraft:
    123
    Привет мне нужен перевод плагина
    Вот плагин ссылка: https://dev.bukkit.org/projects/mwparkour2
    Название:
    mwParkour2
    Версия: 1.12
    Очень нужно пожалуйста кстати его нужно переводить в самом плагине а не в конфиге
     
  7. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Добрэ, товарищи!
    Имею небольшой опыт написания плагинов. Более-менее разобрался с тем, как работать с эвентами и командами.
    Сейчас разрабатываю плагин на ЖД-тематику. Хочу сделать плавные кривые, что бы поезд заезжая в поворот не поворачивался из стороны в сторону на поворотах, а красиво плавно поворачивал.
    Смотрю, соответственно, класс Vehicle. Так же параллельно изучаю класс Vector. И пока что не могу найти встроенного способа задать для vehicle круговую скорость.
    Подскажите, есть ли встроенный в Бакит способ заставить вагонетку (или любой другой транспорт (ТС)) обращаться вокруг заданной точки с заданной же скоростью, кроме как двигать ТС по предрасчитанным координатам?
     
  8. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Смотрел видео этого плагина, https://www.spigotmc.org/resources/traincarts.39592/
    по нему создалось ощущение, что плавность ~ размеру вагонетки.
     
  9. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Спасибо. Проверю, что за зверь такой.
     
  10. alexandrage

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

    Баллы:
    173
    Через вот такую либу все делается https://www.spigotmc.org/resources/bkcommonlib.39590/
     
  11. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Очередное "Здрасте".
    Пишу плагин "Sit", что бы по правому клику игрок мог садиться на ступеньку. Для того, что бы удалять неиспользуемые арморстенды использую Metadata:

    armorStand.setMetadata("volkAlexSit_value", new FixedMetadataValue(player.getServer().getPluginManager().getPlugin("Sit"), true));

    Все работает, но мне кажется, что мету можно задать проще. Можно ли?
     
  12. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Доброго!
    Я хочу в теле листнера команд ожидать эвент. Как я понял, можно это сделать, если при исполнении команды зарегестрировать эвентлистнер. Но я не хочу ><
    Можно как-нибудь избежать создания нового класса с подгрузкой в него горы библиотек?
     
  13. alexandrage

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

    Баллы:
    173
    Нет. Сперва идут ивенты, потом уже компндексекутор.
     
  14. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Спасибо
     
  15. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Пытаюсь сравнить строку из args (аргументы команды) и другую строку.
    Код:
    Bukkit.broadcastMessage("."+args[0]+"."+"."+"new"+".");
    Bukkit.broadcastMessage(String.valueOf(args[0] == "new"));
    
    Это он выдает:
    Код:
    [10:59:04 INFO]: volk_alex issued server command: /ftm new
    [10:59:05 INFO]: .new..new.
    [10:59:05 INFO]: false
    
    Что я делаю не так?
    З.Ы. Про equalsIgnoreCase() я знаю. Хочу использовать args в switch/case
     
  16. Exception_Prototype

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

    Баллы:
    96
    PHP:
    @Override
    public boolean onCommand(CommandSender senderCommand commandString labelString[] args) {

        if (
    sender instanceof Player) {

            if (
    args.length == 0) {
                
    help(sender);
                return 
    true;
            }

            switch (
    args[0].toLowerCase(Locale.ENGLISH)) {
                case 
    "?":
                case 
    "h":
                case 
    "help":
                    
    help(sender);
                    return 
    true;
                case 
    "sc":
                case 
    "subcommand":
                    
    subcommand(sender);
                    return 
    true;
                default:
                    return 
    false;
            }

        }

        
    sender.sendMessage("Sorry, but you aren't a player.");
        return 
    true;

    }

    private 
    void help(CommandSender sender) {
        
    sender.sendMessage("/command [help/h/?] - помощь");
        
    sender.sendMessage("/command [subcommand/sb] - подкомандам");
    }

    private 
    void subcommand(CommandSender sender) {
        
    //todo
    }
     
  17. volk_alex

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

    Баллы:
    61
    Имя в Minecraft:
    volk_alex
    Спасибо, работает
     
  18. alexandrage

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

    Баллы:
    173
    Врать не хорошо.
     
  19. Deawilld

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

    Баллы:
    36
    Имя в Minecraft:
    Deawilld
    а разве не так?
     
  20. alexandrage

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

    Баллы:
    173
    Нет конечно. Ты это сам придумал из своего воображения.
     

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