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

Помогите Изменение функциональности копированного предмета

Статус
Закрыто для дальнейших ответов.

lolifrag

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
meow
Доброе время суток.
Сразу говорю, я нупик в данной теме, поэтому если вопрос будет банальным, просьба не подкалывать.
Я пишу плагин, в котором добавляю новый сундук на основе ванильного id54. Мне нужно, что бы он не складывался с таким же и с обычным в двойной, но подключался как и обычный к трубам из технических модов со всех сторон. Как такое реализовать? (1 копирование, 2 изменение свойств)
Спасибо за внимание.

пс. чуть не забыл, он должен ещё открываться, даже если он заблокирован блоком сверху (обычный не открывается в такой ситуации)
 
Последнее редактирование:
Доброе время суток.
Сразу говорю, я нупик в данной теме, поэтому если вопрос будет банальным, просьба не подкалывать.
Я пишу плагин, в котором добавляю новый сундук на основе ванильного id54. Мне нужно, что бы он не складывался с таким же и с обычным в двойной, но подключался как и обычный к трубам из технических модов со всех сторон. Как такое реализовать? (1 копирование, 2 изменение свойств)
Спасибо за внимание.

пс. чуть не забыл, он должен ещё открываться, даже если он заблокирован блоком сверху (обычный не открывается в такой ситуации)
О, наконец-то интересные вопросы.

Итак начнем:
1) Открывать сундук даже если он "накрыт"
Ну.. Тут у меня вариантов не много:

Что делаем:
1. Получаем блок сундука при интеракции
2. Получаем объект сундука из State блока
3. Получаем инвентарь
4. Открываем инвентарь

Код: (Click image for pastebin)


2) Сундук не объединяется с соседями
Увы такого сделать плагин не позволит, но у нас есть варианты
а) Не давать ставить сундук рядом с необычным сундуком
б) Использовать Trapped Chest.
Их можно ставить рядом
Пример:
35d5a69082.jpg


3) Изменение свойств.
Самый простой и универсальный способ отлова "не стандартности" - задать сундуку спец. имя, да такое чтоб нельзя было задать наковальней (Например использовать спец-символы или цвет)
Или же запретить ренейминг сундуков на сервере.
Можно придумать еще что, но это самый простой и надежный способ

Надеюсь помог
 
О, наконец-то интересные вопросы.

Итак начнем:
1) Открывать сундук даже если он "накрыт"
Ну.. Тут у меня вариантов не много:

Что делаем:
1. Получаем блок сундука при интеракции
2. Получаем объект сундука из State блока
3. Получаем инвентарь
4. Открываем инвентарь

Код: (Click image for pastebin)


2) Сундук не объединяется с соседями
Увы такого сделать плагин не позволит, но у нас есть варианты
а) Не давать ставить сундук рядом с необычным сундуком
б) Использовать Trapped Chest.
Их можно ставить рядом
Пример:
35d5a69082.jpg


3) Изменение свойств.
Самый простой и универсальный способ отлова "не стандартности" - задать сундуку спец. имя, да такое чтоб нельзя было задать наковальней (Например использовать спец-символы или цвет)
Или же запретить ренейминг сундуков на сервере.
Можно придумать еще что, но это самый простой и надежный способ

Надеюсь помог
О, да, ещё как помог. Дельные советы всегда на вес золота, спасибо.
Побуду немного наглым и немного уточню пару деталей:3
То что я делаю - некое подобие декрафтора, пишу как вспомогательный плагин для технических модов (да-да, я не шучу, только начал и сразу такое.. просто полегче идей нет, а пытаться что-то понять в коде других плагинов немножко проблематично - по крайней мере с мкммо я вожусь уже неделю пытаясь его осознать). Ложишь в сундук предмет X (или загружаешь трубами с любой стороны кроме нижней), который задаётся в конфиге и рандомные скрафченные (не первичные и не поломанные предметы). Далее идёт проверка на первичность и поломанность и проверка, не знаю как сформулировать кратко, скажу на примере - факел: 1 уголь+1 палка = 4 факела
идёт проверка, что бы факелов было 4m+n. Если все условия удовлетворены, то расходуя материал Х в соотношении указанном в конфиге (каждый рецепт состоит из k ингредиентов, а соотношение - сколько материала Х понадобится на каждый ингредиент), в сундук ниже этого автоматически переносятся разобранные предметы (разбирает на 1 уровень, то есть из факелов уж никак не получится угля и древесины, а уголь и палки). Каждый автораскрафт длится N секунд (задаётся конфигом). К сундуку можно подключить двигатели forestry или bc что бы значительно уменьшить это время.
Вопрос вот в чём, это реализуемо плагином? (я не прошу готовый код, мне только нужно узнать, можно ли такое делать.. я не совсем понимаю ограничения плагинов)
Я подумывал о моддинге, но если тут (плагины) я хоть что-то понимаю, то в модах совсем ничего не понятно .т.
 
Последнее редактирование:
О, да, ещё как помог. Дельные советы всегда на вес золота, спасибо.
Побуду немного наглым и немного уточню пару деталей:3
То что я делаю - некое подобие декрафтора, пишу как вспомогательный плагин для технических модов (да-да, я не шучу, только начал и сразу такое.. просто полегче идей нет, а пытаться что-то понять в коде других плагинов немножко проблематично - по крайней мере с мкммо я вожусь уже неделю пытаясь его осознать). Ложишь в сундук предмет X (или загружаешь трубами с любой стороны кроме нижней), который задаётся в конфиге и рандомные скрафченные (не первичные и не поломанные предметы). Далее идёт проверка на первичность и поломанность и проверка, не знаю как сформулировать кратко, скажу на примере - факел: 1 уголь+1 палка = 4 факела
идёт проверка, что бы факелов было 4m+n. Если все условия удовлетворены, то расходуя материал Х в соотношении указанном в конфиге (каждый рецепт состоит из k ингредиентов, а соотношение - сколько материала Х понадобится на каждый ингредиент), в сундук ниже этого автоматически переносятся разобранные предметы (разбирает на 1 уровень, то есть из факелов уж никак не получится угля и древесины, а уголь и палки). Каждый автораскрафт длится N секунд (задаётся конфигом). К сундуку можно подключить двигатели forestry или bc что бы значительно уменьшить это время.
Вопрос вот в чём, это реализуемо плагином? (я не прошу готовый код, мне только нужно узнать, можно ли такое делать.. я не совсем понимаю ограничения плагинов)
Я подумывал о моддинге, но если тут (плагины) я хоть что-то понимаю, то в модах совсем ничего не понятно .т.
Скайп под аватаркой
Пиши туда.
 
NBT, lore, любое значение которое отличит предметы друг от друга
 
Статус
Закрыто для дальнейших ответов.

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

Назад
Верх