Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин [ECON/RPG] Griswold v0.079 – починка и зачарование вещей без команд! [1.6 - 1.12.X]

Aqel, хмммм... а пробовал после этого сделать /bs reload на всякий случай? У меня вроде все работает... Я знаю, что проблемы могут возникнуть, если неосторожно редактировать конфиг - в частности, секцию русификации. Если редактировал - удали файл конфига, перезапусти - сгенерируется новый (исправный) файл конфигурации, пересоздай кузнеца.

Только что попробовал на 1.7.2 и на 1.6.4 - кузнецы нормально создаются, адекватно реагируют... Кстати, ради эксперимента, попробуй сделать не-жителя кузнеца. Напиши, к примеру: /bs set Онуфрий enchanter irongolem и проверь, будет ли вообще реакция при клике по нему.

Создал другого чудило (Маркус) /bs set Маркус enchanter irongolem - работает, но ходит то же везде, меню обмена у него нет (ано и понятно).
Не хотят гаврики стоять на месте... Где то скипидар ты оставил в коде :)
На счёт параллельности - возможно несовместимость с каким то плагином (теоретически)
 
Последнее редактирование:
Короче, сегодня у меня нет сил на этот плагин. Потом буду ковырять.

Обнаружил такой баг (предупреждаю):
Если кликнуть на кузнеца броней, когда кузнец - не деревенский житель - то броня самонадевается на тебя (если на тебе не надет другой такой элемент брони). С чем связано - пока не разобрался. Плюс туда же - если сделать кузнеца - лошадь, то при попытке интерактива перс пытается на нее сесть.
Пока с этим багом не разберусь - не создавай кузнецов не-жителей. Или при ремонте/чарках брони имей на себе что-то уже надетое.
 
Короче, сегодня у меня нет сил на этот плагин. Потом буду ковырять.

Обнаружил такой баг (предупреждаю):
Если кликнуть на кузнеца броней, когда кузнец - не деревенский житель - то броня самонадевается на тебя (если на тебе не надет другой такой элемент брони). С чем связано - пока не разобрался. Плюс туда же - если сделать кузнеца - лошадь, то при попытке интерактива перс пытается на нее сесть.
Пока с этим багом не разберусь - не создавай кузнецов не-жителей. Или при ремонте/чарках брони имей на себе что-то уже надетое.
Это связано с тем, что с версии 1.6 была добавлена возможность надевания брони правым кликом, вот так все просто ;)
 
Последнее редактирование:
JustBlender, и...?
Aqel, гаврики никогда и не стояли на одном месте, кстати. Каждый из кузнецов имеет AI того моба, в котором он нами воплощен. Лично я кузнецов всегда огораживал забором. Если не огораживать - они разбредаются. Впрочем, это не большая проблема - они ведь бессмертны. Из этого можно даже извлечь некоторую выгоду в виде фана: сначала найди, а потом воспользуйся... Особенно это актуально, если кузнец - летучая мышь.
 
JustBlender, и...?
Aqel, гаврики никогда и не стояли на одном месте, кстати. Каждый из кузнецов имеет AI того моба, в котором он нами воплощен. Лично я кузнецов всегда огораживал забором. Если не огораживать - они разбредаются. Впрочем, это не большая проблема - они ведь бессмертны. Из этого можно даже извлечь некоторую выгоду в виде фана: сначала найди, а потом воспользуйся... Особенно это актуально, если кузнец - летучая мышь.
Так то ДА... НО в оригинальном плагине было реализовано "стояние на месте".
Вот старая инфа (да и я это ещё помню :)):
Да, спаунится NPC без всяких пометок, но он стоит себе (кхм) ровно и не убегает, его нельзя убить и он пристально смотрит на игрока. Если взять в руку поломанную вещь и нажать на него правой кнопкой – он скажет сколько хочет за ее починку. Если цена устраивает – нажимаешь еще раз и оп! Вещь починена. Круто?
 
Последнее редактирование:
Aqel, я не знал, спасибо. Это кое-что объясняет...

Переделал - не заработало. К вечеру постараюсь сделать и выложить.
В общем, не знаю, не получается пока.
Я в тупик зашел. В коде оригинального плагина был блок перезаписи AI. Позднее он у меня начал выдавать ошибки, а так как я не знал, зачем он нужен (лишь догадывался) - я его закомментировал. А сейчас ты сказал - и я понял, зачем он нужен.
Так вот, блок выглядит так (после исправлений классов):
Код:
    public void overwriteAI() {
        try {
            net.minecraft.server.v1_6_R3.EntityVillager villager = ((org.bukkit.craftbukkit.v1_6_R3.entity.CraftVillager)entity).getHandle();
            Field goalsField = net.minecraft.server.v1_6_R3.EntityLiving.class.getDeclaredField("goalSelector");
            goalsField.setAccessible(true);
            net.minecraft.server.v1_6_R3.PathfinderGoalSelector goals = (net.minecraft.server.v1_6_R3.PathfinderGoalSelector) goalsField.get(villager);
            Field listField = net.minecraft.server.v1_6_R3.PathfinderGoalSelector.class.getDeclaredField("a");
            listField.setAccessible(true);
           
            @SuppressWarnings("rawtypes")
            List list = (List)listField.get(goals);
            list.clear();
            goals.a(1, new net.minecraft.server.v1_6_R3.PathfinderGoalLookAtPlayer(villager, net.minecraft.server.v1_6_R3.EntityHuman.class, 12.0F, 1.0F));
            goals.a(2, new net.minecraft.server.v1_6_R3.PathfinderGoalRandomLookaround(villager));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
   
}

Здесь видно, что я уже подставил классы от версии 1.6, загвоздка сейчас в поле "goalSelector". Раньше такое поле было в классе EntityLiving. А теперь его нет. И я не знаю, на что его изменить. Я нашел там похожее - "g", но это не решило проблему. В общем, буду думать.
Нашел очень важный баг - в формуле расчета цены ремонта вещей была ошибка. Цена рассчитывалась неверно, если предмет был зачарованным. Выкладываю исправленное.
Исправлено:
Не снимал чары с ножниц, мотыг и зажигалки. Как все знают, в новых версиях на них стало возможным накладывать чары "прочность". Пришлось добавить в код новый LinkedList "Unchantables". :)

Не исправлено:
1. AI моба не редактируется, поэтому он не стоит на месте, а двигается "как обычно".
2. Если моб-кузнец не житель, то вещь, которую пытаешься зачаровать, при первом клике по кузнецу надевается на игрока. Этого можно избежать, если перед этим слот, в который надевается вещь, не пустой.
 

Вложения:

Последнее редактирование:
Воу-воу-воу, пацаны. Ничего себе вы тут уже приколюх наделали. Давайте может в гитхаб все засунем и тогда я с AI мобов помогу?..
 
Я не умею. Но могу скинуть исходник. А можешь сам декомпилировать. Извини, что всё переделал - мне так удобно было.
 
Я не умею. Но могу скинуть исходник. А можешь сам декомпилировать. Извини, что всё переделал - мне так удобно было.

Не скинете мне под 1.5.2 ? Я немного опоздал, на mail.ru Ваш файл похоже уже устарел.
 
HomeFox, не лучше ли подняться до (хотя бы) 1.6.4? Я не делал под 1.5.2, тестировать мне не на чем, на глаз отредактировал - возможно, будет работать без ошибок.
 

Вложения:

HomeFox, не лучше ли подняться до (хотя бы) 1.6.4? Я не делал под 1.5.2, тестировать мне не на чем, на глаз отредактировал - возможно, будет работать без ошибок.

Рад был бы полнятся и играть с лицензионного лаунчера, но там не оказалось народа на сервере, все сервера и сами игроки - в основном сидят на старой версии 1.5.2

Я честно говоря в шоке. Всегда ставил сервера на новые версии, как только выходили. Почему игроки не на самой новой версии - не понятно.

Спасибо за плагин, проверю.
 
Рад был бы полнятся и играть с лицензионного лаунчера, но там не оказалось народа на сервере, все сервера и сами игроки - в основном сидят на старой версии 1.5.2

Я честно говоря в шоке. Всегда ставил сервера на новые версии, как только выходили. Почему игроки не на самой новой версии - не понятно.

Ничего не понял. Где не оказалось народа? Какие сервера сидят на старой версии?
 

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

Назад
Верх