CraftLoader
Активный0.0
Установок
Последнее обновление
CraftLoader
CraftLoader представляет собой компактный фреймворк-мод, который предоставляет разработчикам модификаций возможность регистрировать собственные "загрузчики" для различных систем крафта, включая механизмы и устройства. Эти загрузчики могут получать данные из ресурс-паков, сохранений игр и самих модов.
Принцип работы и использование
Фабрики рецептов регистрируются аналогично стандартным рецептам верстака Minecraft. Для модов и ресурс-паков они располагаются по пути: assets/<ID мода владельца рецепта>/crafting/<ID мода владельца загрузчика>/<название>_factories.json. Для сохранений игр используется путь: data/crafting/<ID мода владельца рецепта>/<ID мода владельца загрузчика>/<название>_factories.json.
Сами рецепты определяются в файлах assets/<ID мода владельца рецепта>/crafting/<ID мода владельца загрузчика>/<название>.json для модов и ресурс-паков, и data/crafting/<ID мода владельца рецепта>/<ID мода владельца загрузчика>/<название>.json для сохранений.
Трансформеры для оптимизации
Трансформеры представляют собой карты строковых типов к картам строковых ключей со списками заменяемых значений. Они позволяют значительно сократить количество необходимых рецептов. Трансформеры определяются в файлах assets/<ID мода владельца рецепта>/transformers.json и data/crafting/<ID мода владельца рецепта>/transformers.json.
Название рецепта формируется как <ID мода владельца рецепта>:<ключевое имя рецепта из JSON после применения трансформеров>. Загрузчики других модов могут требовать дополнительных данных из определения рецепта для создания более специфичного ключа.
Управление рецептами
Рецепт можно отключить, добавив параметр "disabled":true в JSON. Если другой файл JSON повторно объявляет этот рецепт с "disabled":false, рецепт становится активным.
Для применения трансформеров к рецепту укажите их в строковом массиве под ключом "transformers", например: "transformers": [ "vanilla_metals" ].
Для использования трансформеров других модов добавьте префикс с ID мода к названию трансформера.
Рецепты могут использовать константы из JSON-файла констант мода-владельца рецепта как для входных данных, так и для выходных. В случае выхода используется первый подходящий стек.
Примеры использования можно найти в папке examples исходного кода.
Для регистрации собственного загрузчика используйте методы класса CraftLoaderAPI.