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

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

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

Thread Status:
Not open for further replies.
  1. Автор темы
    lolifrag

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

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

    пс. чуть не забыл, он должен ещё открываться, даже если он заблокирован блоком сверху (обычный не открывается в такой ситуации)
     
    Last edited: Nov 13, 2014
  2. Хостинг MineCraft
    <
  3. ql_Nik_lp

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

    Trophy Points:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    О, наконец-то интересные вопросы.

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

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

    Код: (Click image for pastebin)
    [​IMG]

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

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

    Надеюсь помог
     
  4. Автор темы
    lolifrag

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

    Trophy Points:
    66
    Skype:
    frosti.village
    Имя в Minecraft:
    meow
    О, да, ещё как помог. Дельные советы всегда на вес золота, спасибо.
    Побуду немного наглым и немного уточню пару деталей:3
    То что я делаю - некое подобие декрафтора, пишу как вспомогательный плагин для технических модов (да-да, я не шучу, только начал и сразу такое.. просто полегче идей нет, а пытаться что-то понять в коде других плагинов немножко проблематично - по крайней мере с мкммо я вожусь уже неделю пытаясь его осознать). Ложишь в сундук предмет X (или загружаешь трубами с любой стороны кроме нижней), который задаётся в конфиге и рандомные скрафченные (не первичные и не поломанные предметы). Далее идёт проверка на первичность и поломанность и проверка, не знаю как сформулировать кратко, скажу на примере - факел: 1 уголь+1 палка = 4 факела
    идёт проверка, что бы факелов было 4m+n. Если все условия удовлетворены, то расходуя материал Х в соотношении указанном в конфиге (каждый рецепт состоит из k ингредиентов, а соотношение - сколько материала Х понадобится на каждый ингредиент), в сундук ниже этого автоматически переносятся разобранные предметы (разбирает на 1 уровень, то есть из факелов уж никак не получится угля и древесины, а уголь и палки). Каждый автораскрафт длится N секунд (задаётся конфигом). К сундуку можно подключить двигатели forestry или bc что бы значительно уменьшить это время.
    Вопрос вот в чём, это реализуемо плагином? (я не прошу готовый код, мне только нужно узнать, можно ли такое делать.. я не совсем понимаю ограничения плагинов)
    Я подумывал о моддинге, но если тут (плагины) я хоть что-то понимаю, то в модах совсем ничего не понятно .т.
     
    Last edited: Nov 15, 2014
  5. ql_Nik_lp

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

    Trophy Points:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Скайп под аватаркой
    Пиши туда.
     
  6. Hilgert

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

    Trophy Points:
    123
    Skype:
    mixa2258
    Имя в Minecraft:
    Hilgert
    NBT, lore, любое значение которое отличит предметы друг от друга
     
Thread Status:
Not open for further replies.

Share This Page