м |
|||
| (не показано 18 промежуточных версий 9 участников) | |||
| Строка 1: | Строка 1: | ||
| − | + | '''BackpackAPI''' - библиотека, позволяющая создавать рюкзаки. | |
| − | '''BackpackAPI | ||
== Загрузка == | == Загрузка == | ||
| + | {| border="1" cellpadding="1" cellspacing="1" style="width: 579px" | ||
| + | |- | ||
| + | | style="text-align: center" | Версия | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | Ссылка | ||
| + | | style="white-space: nowrap; width: 294px; text-align: center;" | Список изменений | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | Дата релиза | ||
| + | |- | ||
| + | | style="text-align: center" | '''LATEST''' | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | [https://github.com/DDCompany/ICLibraries/releases/tag/backpack-api-v9 Скачать] | ||
| + | | style="white-space: nowrap; width: 294px;" | | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | - | ||
| + | |- | ||
| + | | style="text-align: center" | '''8''' | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | [https://github.com/DDCompany/ICLibraries/releases/tag/backpack-api-v8 Скачать] | ||
| + | | style="white-space: nowrap; width: 294px;" | | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | 15.05.20 | ||
| + | |- | ||
| + | | style="text-align: center" | '''7''' | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | [https://github.com/DDCompany/ICLibraries/releases/tag/backpack-api-v7 Скачать] | ||
| + | | style="white-space: nowrap; width: 294px;" | | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | 24.04.20 | ||
| + | |- | ||
| + | | style="text-align: center" | '''6''' | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | [https://yadi.sk/d/J94TU-NAg0DfaQ Скачать] | ||
| + | | style="white-space: nowrap; width: 294px;" | Добавлена поддержка сохранения id контейнера в extra data | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | 21.04.20 | ||
| + | |- | ||
| + | | style="text-align: center" | '''5''' | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | [https://yadi.sk/d/3UwUF1QpD7-T5g Скачать] | ||
| + | | style="white-space: nowrap; width: 294px;" | Исправлены баги, оптимизация кода | ||
| + | | style="white-space: nowrap; width: 153px; text-align: center;" | 16.10.19 | ||
| + | |- | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | '''4''' | ||
| + | | style="text-align: center" | [https://yadi.sk/d/fGqQqOp9UmF_qQ Скачать] | ||
| + | | style="width: 294px;" | Исправлены баги | ||
| + | | style="width: 153px; text-align: center;" | 11.09.19 | ||
| + | |- | ||
| + | | style="white-space: nowrap; width: 200px; text-align: center" | '''3''' | ||
| + | | style="text-align: center" | [https://yadi.sk/d/zNFKHFwWtygALw Скачать] | ||
| + | | style="width: 294px;" | | ||
| + | Новые свойства - items, title | ||
| − | + | | style="width: 153px; text-align: center;" | 10.09.19 | |
| − | |||
| − | |||
| − | |||
| − | | style=" | ||
|- | |- | ||
| − | | style="white-space: nowrap; width: 200px; text-align: center | + | | style="white-space: nowrap; width: 200px; text-align: center" | '''1''' |
| − | | style="text-align: center | + | | style="text-align: center" | [https://vk.com/forestry_pe?w=wall-149493963_1420/all Скачать] |
| − | | Первая версия | + | | style="width: 294px;" | Первая версия |
| + | | style="width: 153px; text-align: center;" | 09.03.18 | ||
|} | |} | ||
== Условия использования == | == Условия использования == | ||
| + | *Запрещено распространение на сторонних источниках без указания ссылки на официальное сообщество | ||
| + | *Запрещено изменение кода библиотеки | ||
| + | *Запрещено явное копирование кода в другие библиотеки или моды | ||
| − | + | Используя данный продукт вы автоматически соглашаетесь с этими правилами | |
| − | |||
| − | |||
| − | |||
| − | Используя данный продукт | ||
| − | |||
| − | |||
== Документация == | == Документация == | ||
| − | + | Для регистрации рюкзака необходимо использовать метод '''''register''''' из объекта '''''BackpackRegistry''''', импортируемый из библиотеки | |
| − | Для регистрации рюкзака необходимо использовать метод '''''register | ||
<syntaxhighlight lang="JavaScript">IMPORT("BackpackAPI"); | <syntaxhighlight lang="JavaScript">IMPORT("BackpackAPI"); | ||
| Строка 48: | Строка 81: | ||
Первым аргумент - айди предмета, при клике которым будет открываться интерфейс рюкзака. Второй - объект, который может содержать следующие поля: | Первым аргумент - айди предмета, при клике которым будет открываться интерфейс рюкзака. Второй - объект, который может содержать следующие поля: | ||
| − | *<u>''title''</u> - заголовок окна | + | *<u>''title''</u> - заголовок окна |
| − | *''<u>slots | + | *''<u>slots</u>'' - количество слотов в рюкзаки |
| − | *''<u>inRow | + | *''<u>inRow</u>'' - количество слотов в ряду |
| − | *''<u>slotsCenter | + | *''<u>slotsCenter</u>'' - центрировать ли слоты по ширине |
| − | *<u>''items''</u>- массив предметов, которые | + | *''<u>kind</u>'' - определяет способ хранения уникального айди рюкзака. Может иметь значения BackpackKind.EXTRA и BackpackKind.META. Если установить первое значение, айди будет находиться в поле "__backpack_id" экстры, второе - в метаданных предмета |
| + | *<u>''items''</u>- массив предметов, которые можно положить в рюкзак. Описывается регулярными выражениями, айди или объектом с айди и датой (причем оба свойства могут быть заданы регуляркой) | ||
| − | В объекте можно объявить метод '''''isValidItem(id, data, count)''''', если он возвращает истину предмет перемещается в слот. Если его нет, будет задан стандартный, который разрешает перемещение всех предметов, описанных в массиве | + | В объекте можно объявить метод '''''isValidItem(id, data, count)''''', если он возвращает истину предмет перемещается в слот. Если его нет, будет задан стандартный, который разрешает перемещение всех предметов, описанных в массиве '''''items''''', кроме других рюкзаков. В данном примере можно положить только камень: |
<syntaxhighlight lang="Javascript">BackpackRegistry.register(ItemID.backpackTest, { | <syntaxhighlight lang="Javascript">BackpackRegistry.register(ItemID.backpackTest, { | ||
slots: 20, | slots: 20, | ||
| Строка 64: | Строка 98: | ||
Рюкзакам можно задавать кастомные интерфейсы, но в таком случае все поля описанные выше будут игнорироваться. | Рюкзакам можно задавать кастомные интерфейсы, но в таком случае все поля описанные выше будут игнорироваться. | ||
| − | <syntaxhighlight lang=" | + | <syntaxhighlight lang="javascript">let gui = new UI.StandartWindow({ |
standart: { | standart: { | ||
header: { | header: { | ||
| Строка 88: | Строка 122: | ||
gui: gui | gui: gui | ||
});</syntaxhighlight> | });</syntaxhighlight> | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
BackpackAPI - библиотека, позволяющая создавать рюкзаки.
| Версия | Ссылка | Список изменений | Дата релиза |
| LATEST | Скачать | - | |
| 8 | Скачать | 15.05.20 | |
| 7 | Скачать | 24.04.20 | |
| 6 | Скачать | Добавлена поддержка сохранения id контейнера в extra data | 21.04.20 |
| 5 | Скачать | Исправлены баги, оптимизация кода | 16.10.19 |
| 4 | Скачать | Исправлены баги | 11.09.19 |
| 3 | Скачать |
Новые свойства - items, title |
10.09.19 |
| 1 | Скачать | Первая версия | 09.03.18 |
Используя данный продукт вы автоматически соглашаетесь с этими правилами
Для регистрации рюкзака необходимо использовать метод register из объекта BackpackRegistry, импортируемый из библиотеки
IMPORT("BackpackAPI");
IDRegistry.genItemID("backpackTest");
Item.createItem("backpackTest", "Test Backpack", {name: "backpackMiners", meta: 0}, {stack: 1});
BackpackRegistry.register(ItemID.backpackTest, {
title: "My Backpack",
slots: 80,
slotsCenter: true,
inRow: 10,
items: [
"^ore.+",
"^ingot.+",
1
{id: 345, data: "^[1-3]$"}
]
});
Первым аргумент - айди предмета, при клике которым будет открываться интерфейс рюкзака. Второй - объект, который может содержать следующие поля:
В объекте можно объявить метод isValidItem(id, data, count), если он возвращает истину предмет перемещается в слот. Если его нет, будет задан стандартный, который разрешает перемещение всех предметов, описанных в массиве items, кроме других рюкзаков. В данном примере можно положить только камень:
BackpackRegistry.register(ItemID.backpackTest, {
slots: 20,
isValidItem: function (id, data, count) {
return id === 1;
}
});
Рюкзакам можно задавать кастомные интерфейсы, но в таком случае все поля описанные выше будут игнорироваться.
let gui = new UI.StandartWindow({
standart: {
header: {
text: {
text: "Custom Gui"
}
},
inventory: {
standart: true
},
background: {
standart: true
}
},
drawing: [],
elements: {}
});
IDRegistry.genItemID("backpackTest");
Item.createItem("backpackTest", "Test Backpack", {name: "backpackMiners", meta: 0}, {stack: 1});
BackpackRegistry.register(ItemID.backpackTest, {
gui: gui
});