# 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` | Текстовий фільтр для визначення предметів, для яких має відображатися ця інформаційна сторінка.
Можна використовувати `modname:itemname`, метадані, теги OreDictionary та регулярні вирази. Повний формат можна переглянути у `config/NEI/collapsibleitems.cfg`. | | `page` / `pages` | `String` / `String NBTTagList` | Безпосередньо текст для відображення. Різницю між одно- та багатосторінковими повідомленнями див. нижче.
Обидва формати підтримують автоматичний переклад наданих рядків. | #### Односторінковий формат Використовуйте текстовий тег `"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.