Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
− | + | <div class="mw-parser-output"><div class="mw-parser-output"><div class="b-pageLayout b-pageLayout__xs" data-layout="xs" id="pageLayout"><div class="b-pageContent m-pageContent__withoutLeft m-pageContent__withoutRight" id="pageContent"> | |
Добавление рецептов крафта и переплавки - то, без чего не обойдется никакой мод. | Добавление рецептов крафта и переплавки - то, без чего не обойдется никакой мод. | ||
Строка 6: | Строка 6: | ||
=== Рецепты верстака === | === Рецепты верстака === | ||
− | Рецепты верстака бывают 2х типов: | + | Рецепты верстака бывают 2х типов: |
+ | *форменные - предмет должен быть выложен на верстаке в определенной форме. Если меньше, чем 3х3, то он может быть выложен в любой области верстака для его выполнения. | ||
+ | *бесформенные - требует лишь соблюдения присутсвия и кол-ва предметов в сетке крафта, но не требует порядка | ||
+ | | ||
+ | Для добавления форменных рецептов используется функция Recipes.addShaped({id: id, count: кол-во, data: data}, [форма рецепта], [ингридиенты], функция выполнения function(api, field, result){}, префикс) - в обычном рецепте последние 2 параметра можно и нужно опустить, о них будет рассказано позже. | ||
+ | *api - содержит объект апи содержащий следущие параметры: | ||
+ | **contatiner, getClass, wait, isPrevented, notifyAll, decreaseFieldSlot, notify, prevent, fieldSlot, getFieldSlot, hashCode, equals, toString, class, prevented. | ||
+ | *field - массив идентификаторов слотов 0-8, содержащие: id, count, data, extra. для получения содержания слота используется field[slotID].parameter | ||
+ | *result - содержит сам предмет который возвращается в инвентарь при удачном крафте. Параметры result содержат: id, count, data, extra. | ||
+ | | ||
− | + | Форма рецепта задается массивом строк, которые соответсвуют строкам в форме рецепта, где каждый символ означает предмет, а пробел - отсутсвие предмета. | |
− | + | | |
− | |||
− | | ||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Ингридиенты это массив, в котором данные идут в порядке ['символ1', id1, data1, 'символ2', id2, data2, ...], и так для всех символов, которые использовались в форме рецепта, кроме пробела. Если data предмета не важна (к примеру вы хотите, чтобы в рецепте использовались доски любого типа), то вместо нее напишите -1. | ||
| | ||
− | + | Кол-ва строк может быть меньше 3, если столько не нужно. | |
− | + | Пример рецепта: | |
− | |||
− | |||
− | Кол-ва строк может быть меньше 3, если столько не нужно. Пример рецепта: | ||
<syntaxhighlight lang="javascript">Recipes.addShaped({id: 264, count: 1, data: 0}, /* Результат крафта */ | <syntaxhighlight lang="javascript">Recipes.addShaped({id: 264, count: 1, data: 0}, /* Результат крафта */ | ||
["ax", "xa", "ax"], /* Форма рецепта */ | ["ax", "xa", "ax"], /* Форма рецепта */ | ||
Строка 45: | Строка 45: | ||
);</syntaxhighlight> | );</syntaxhighlight> | ||
− | *Recipes.addShapeless({id: id, count: кол-во, data: data}, [{id: id1, data: data1}, {id: id2, data: data2}, ...], функция выполнения, префикс) - добавление бесформенных рецептов. | + | *Recipes.addShapeless({id: id, count: кол-во, data: data}, [{id: id1, data: data1}, {id: id2, data: data2}, ...], функция выполнения, префикс) - добавление бесформенных рецептов. |
*Recipes.deleteRecipe({id: id, count: кол-во, data: data}) - удаляет все рецепты для данного предмета. | *Recipes.deleteRecipe({id: id, count: кол-во, data: data}) - удаляет все рецепты для данного предмета. | ||
*Recipes.replaceWithShaped({id: id, count: кол-во, data: data}, форма рецепта, определение предметов, функция выполнения, префикс) - аналогична Recipes.addShaped, заменяет все остальные рецепты для этого предмета. | *Recipes.replaceWithShaped({id: id, count: кол-во, data: data}, форма рецепта, определение предметов, функция выполнения, префикс) - аналогична Recipes.addShaped, заменяет все остальные рецепты для этого предмета. | ||
− | *Recipes.replaceWithShapeless({id: id, count: кол-во, data: data}, форма рецепта, определение предметов, функция выполнения, префикс) - аналогична Recipes.addShapeless, заменяет все остальные рецепты для этого предмета. | + | *Recipes.replaceWithShapeless({id: id, count: кол-во, data: data}, форма рецепта, определение предметов, функция выполнения, префикс) - аналогична Recipes.addShapeless, заменяет все остальные рецепты для этого предмета. |
=== Функция крафта === | === Функция крафта === | ||
Строка 68: | Строка 68: | ||
| | ||
− | + | </div> </div> </div> </div> </div> | |
− | <div | ||
− | <div | ||
− | <div | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |