mirror of
https://github.com/GTNewHorizons/NotEnoughItems.git
synced 2026-11-12 08:27:37 +00:00
Co-authored-by: Mykhailo Balaker <83900885+Angry3vilbot@users.noreply.github.com>
94 lines
9.3 KiB
Markdown
94 lines
9.3 KiB
Markdown
# NotEnoughItems Unofficial — від команди GTNH
|
|
|
|
🌐 **Мови:** [English](README.md) | [Українська](README_uk.md)
|
|
|
|
Продовження модифікації NotEnoughItems для 1.7.10 від розробників збірки GregTech: New Horizons із функціями, натхненними та/або бекпортованими з JustEnoughItems.
|
|
|
|
Ми протестували цю версію з усіма модами, що входять до GTNH, а також із обмеженим набором інших модів (як-от моди від Reika). Було докладено всіх зусиль для збереження зворотної сумісності, однак основну увагу приділено модам зі збірки GTNH.
|
|
|
|
Якщо у вас виникли проблеми з NEI за межами збірки GTNH, ви можете повідомити про них у [GitHub-репозиторії GTNH NEI](https://github.com/GTNewHorizons/NotEnoughItems).
|
|
|
|
## Нові можливості:
|
|
|
|
* Швидкодія
|
|
- Використовує паралельний потік для пошуку у списку предметів на кількох ядрах процесора, що в середньому пришвидшує пошук у 2–6 разів.
|
|
- Завантажує обробники рецептів паралельно.
|
|
* Текстове поле пошуку з більшістю очікуваних функцій — переміщення курсора вперед/назад, виділення тексту тощо.
|
|
* Закладки! Перебуваєте у процесі крафту? Додайте потрібний рецепт до закладок за допомогою клавіші «A» або налаштуйте власну клавішу.
|
|
* Перемикання видимості панелі закладок. Гаряча клавіша за замовчуванням — `B`. Меню «Підгрупи предметів» доступне лише тоді, коли панель закладок прихована.
|
|
* Кнопки утиліт та читів вирівнюються в ряд та переносяться на новий рядок залежно від розміру графічного інтерфейсу.
|
|
* Список предметів (`ItemList`) більше не генерується повторно з `ItemRegistry` під час кожного відкриття інвентарю.
|
|
* Вкладки у стилі JEI (або творчого режиму) [За бажанням]. Примітка: вимагає явної підтримки для рендерингу `ItemStack`, інакше використовуються перші дві літери назви обробника.
|
|
* Вкладки/обробники завантажуються з конфігураційного CSV-файлу в JAR-архіві (або за бажанням з папки `config`). Для авторів модів доступні IMC-повідомлення з NBT-даними `registerHandlerInfo` та `removeHandlerInfo` для додавання інформації про обробники з використанням тих самих полів, що й у CSV-файлі.
|
|
* Пошук за допомогою синтаксису `@[Мод]->[предмет]`. Наприклад: `@Mod.gregtech->iron ingot`.
|
|
* Перемикання між режимами рецептів, утиліт та читів за допомогою CTRL + ЛКМ по іконці гайкового ключа.
|
|
* Інструменти/предмети з GT5u та інструменти з GT6 тепер мають коректно працювати з функцією накладення та перенесення рецепта.
|
|
|
|
### Обробник інформаційних сторінок
|
|
Хочете додати інформацію про блок чи предмет, не створюючи для нього величезну підказку? Ви можете додати інформацію про будь-який блок чи предмет, зареєструвавши його в обробнику інформації.
|
|
|
|
Інформаційні сторінки відображаються під час пошуку рецептів або способів використання відповідного предмета. Усі відповідні предмети будуть циклічно змінюватися у верхній частині інформаційної сторінки.
|
|
|
|
Ваш мод може викликати:
|
|
```java
|
|
FMLInterModComms.sendMessage("NotEnoughItems", "addItemInfo", nbt);
|
|
```
|
|
Де `nbt` — це `NBTTagCompound`, відформатований, як описано нижче.
|
|
|
|
| Тег | Тип | Опис |
|
|
|------------------|--------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
| `filter` | `String` | Текстовий фільтр для визначення предметів, для яких має відображатися ця інформаційна сторінка.<br/>Можна використовувати `modname:itemname`, метадані, теги OreDictionary та регулярні вирази. Повний формат можна переглянути у `config/NEI/collapsibleitems.cfg`. |
|
|
| `page` / `pages` | `String` / `String NBTTagList` | Безпосередньо текст для відображення. Різницю між одно- та багатосторінковими повідомленнями див. нижче.<br/>Обидва формати підтримують автоматичний переклад наданих рядків. |
|
|
|
|
#### Односторінковий формат
|
|
|
|
Використовуйте текстовий тег `"page"`, якщо хочете додати лише одну сторінку інформації:
|
|
```java
|
|
NBTTagCompound tag = new NBTTagCompound();
|
|
tag.setString("filter", "minecraft:log 3");
|
|
tag.setString("page", "Exotic wood found in tropical climates.");
|
|
|
|
FMLInterModComms.sendMessage("NotEnoughItems", "addItemInfo", tag);
|
|
```
|
|
|
|
#### Багатосторінковий формат
|
|
|
|
Використовуйте тег `"pages"` як `NBTTagList` із рядків, якщо потрібно додати понад одну сторінку:
|
|
```java
|
|
NBTTagCompound tag = new NBTTagCompound();
|
|
tag.setString("filter", "minecraft:diamond_sword");
|
|
|
|
NBTTagList pages = new NBTTagList();
|
|
pages.appendTag(new NBTTagString("A powerful melee weapon."));
|
|
pages.appendTag(new NBTTagString("Can be enchanted for extra effects."));
|
|
|
|
tag.setTag("pages", pages);
|
|
|
|
FMLInterModComms.sendMessage("NotEnoughItems", "addItemInfo", tag);
|
|
```
|
|
* Кожен елемент списку — це одна сторінка.
|
|
* Сторінки з’являтимуться в NEI з кнопками для їх гортання.
|
|
|
|
#### Відповідність предметів
|
|
|
|
Усі предмети, що відповідають фільтру `filter`, відображатимуть вашу інформаційну сторінку. Повний формат фільтра див. у `config/NEI/collapsibleitems.cfg`.
|
|
|
|
#### Файл конфігурації інформації про предмети
|
|
|
|
Якщо ви творець збірки модів і хочете створити власні інформаційні сторінки для предметів, їх можна легко додати у файлі `config/NEI/informationpages.cfg`, де також наведено ще кілька прикладів.
|
|
|
|
## Інші примітки:
|
|
|
|
* Вилучено стиль TMI
|
|
* Вилучено збереження/завантаження стану інвентарю
|
|
|
|
## Ліцензія
|
|
|
|
Авторські права на модифікації від команди GTNH (c) 2019-2024 належать mitchej123 та команді GTNH.
|
|
|
|
Поширюється за ліцензією LGPL-3.0 або новішої версії — використовуйте цей код на власний розсуд, але, будь ласка, діліться з розробниками будь-якими внесеними вами змінами.
|
|
|
|
Окремі частини коду натхненні, запозичені або бекпортовані з [JEI](https://github.com/mezz/JustEnoughItems/tree/1.12) за ліцензією MIT.
|
|
|
|
Авторські права на оригінальний код (c) 2014-2015 належать mezz; код поширювався за ліцензією MIT.
|