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

.

Тема в разделе "Разработка плагинов для новичков", создана пользователем Mr_RoboMan, 2 май 2016.

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

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

    Баллы:
    123
    .
     
    Последнее редактирование: 27 янв 2020
  2. Rfg0

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

    Баллы:
    76
    Имя в Minecraft:
    Rfg0
    Кинь дебаг сюда
     
  3. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    используй

    Код:
            Bukkit.getScheduler().runTask(this, new Runnable() {
                @Override
                public void run() {
                    // код
                }
            });
     
  4. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Вы плохо делаете( Не делайте так
     
  5. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Кто именно? Я или ТС?
     
  6. ql_Nik_lp

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

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    ТС.
     
  7. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Кинь весь код
     
  8. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Попробуй так в onEnable
    Код:
            for (World w : Bukkit.getWorlds()) {
                if (w.getName().equalsIgnoreCase("World")) {
                    int X = 100;
                    int Z = 100;
                    w.loadChunk(X,Z);
                    for (LivingEntity ent : Bukkit.getWorld("World").getLivingEntities()) {
                        if (ent.getCustomName() != null && ent.getCustomName().equalsIgnoreCase("testmob")) {
                            ent.remove();
                            //Твой метод для спавнв мобов
                            spawnmob();
                    }
                }
            }

    И сделай загрузку плагина после загрузки мира в plugin.yml
     
  9. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Как я понял, то loadChunk должен загружать чанк на координатах в указанных коде. После этого ищи моба с нужым именем, и добавляй его в HashMap
     
  10. Rfg0

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

    Баллы:
    76
    Имя в Minecraft:
    Rfg0
    Скорее всего через базу нпс брали их, а потом спавнили.
     
  11. Rfg0

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

    Баллы:
    76
    Имя в Minecraft:
    Rfg0
  12. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    кинь полностью исходник. папку src, plugin.yml, config.yml
     
  13. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Чёто все сложно для меня. Не могу врубится откуда берётся имя, корды бота.
     
  14. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Всёравно не понял. Может ты забыл добавить файл с самим ботов в исходники?

    Код:
        @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
        public void testPlant2(ChunkUnloadEvent event) {
          // Тут типо корды моба.
            if (event.getWorld().getChunkAt(0,0).isLoaded()) {
                event.setCancelled(true);
            }
        }
    
        public static void LoadAllBots() {
            for (ServerFile bF : ServerFile.allSF.get(ServerFile.ServerFileType.BOT)) {
                for (World w : Bukkit.getWorlds()) {
                    World world = Bukkit.getWorld("world");
                    Chunk c = world.getChunkAt(0, 0);
                    c.load();
                    // тут ищи моба и добавляй его в свой лист, если нету, создавай.
                }
                if (IsAllParamsSet(bF)) {
                    Main.bot.spawn(bF.name);
                }
            }
        }

    Если добавить не получается, то тупо убивай моба, и создавай нового.
     
  15. Mafia888

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

    Баллы:
    61
    Имя в Minecraft:
    NyashMyash99
    Есть такой чудесный плагин,называется Citizens, скачай его и радуйся :)
     
  16. MrTrojan

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

    Баллы:
    98
    Имя в Minecraft:
    BlackTrojan
    Своё всегда лучше.
     
  17. slavik123123123

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

    Баллы:
    143
    Имя в Minecraft:
    Leymooo
    Ну я хз. Токо не юзай мой метод где отменяется анлоад чанков. А то у тебя чанки выгружаться вообще не будут.
     
  18. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Было бы интересно тоже пописать своих ботов, да...
    ТС, куда дел свой репозиторий?
     
  19. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
  20. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Либо много и внятно, либо мало и сам догадывайся, о чём речь :)
    Я не сказать, чтобы вообще смотрел твой код, но если не отвлекусь, то сейчас почитаю его.
     
Статус темы:
Закрыта.

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