Скачать SelectionGUI Crafting - Continued — Minecraft Моды — MetaMods
SelectionGUI Crafting - Continued

SelectionGUI Crafting - Continued

Активный

Установок

0

Последнее обновление

9 месяцев назад
Клиент
Утилиты

SelectionGUI Crafting - Continued

Экран заголовка

Этот проект представляет собой существенную переработку мода Selection GUI Crafting, созданного Gliese_832_c. Изначально планировалось просто адаптировать существующее решение, но в процессе разработки стало понятно, что оригинальная система крафта слишком громоздкая и неудобная для пользователей.

Полная переработка системы

Новая версия предлагает совершенно переосмысленный подход к крафту через интерфейс выбора. Система стала значительно понятнее и удобнее в использовании. Разработчики сборок теперь могут настраивать её под свои нужды с гораздо большей гибкостью. Важным улучшением стала поддержка GroovyScript, а также обновлённая интеграция с CraftTweaker, полностью учитывающая новые возможности мода.

Как это работает?

SelectionGUI Crafting позволяет создателям модификаций добавлять специальные рецепты крафта, активируемые кликом правой кнопкой мыши с определёнными предметами в руках. Это открывает множество интересных возможностей.

Например, для работы с глиной: вместо стандартного расположения шариков глины на верстаке, достаточно взять в одну руку лопатку, в другую - глину, и выбрать нужный готовый предмет из появившегося списка. Другой сценарий - кузнечное дело: держите молот и слиток металла, затем выбирайте головку инструмента, которую хотите изготовить.

Интеграция со скриптами

Система поддерживает два популярных инструмента модификации игрового процесса. Рассмотрим примеры их использования.

CraftTweaker

val test = mods.selectionguicrafting.category.categoryBuilder();
test.id("test");
test.displayName("Test");
test.register();

val myRecipe = mods.selectionguicrafting.recipe.recipeBuilder();
myRecipe.category("test");
myRecipe.output(<minecraft:sand>  2);
myRecipe.tool(<minecraft:stick>  5);
myRecipe.input(<minecraft:snow>  3);
myRecipe.register();

mods.selectionguicrafting.recipe.recipeBuilder().category("test").output(<minecraft:sand>  5).tool(<minecraft:stick>  10).input(<minecraft:snow>  2).register();

GroovyScript

// Создание категории крафта:
// Все рецепты разделены по категориям. Каждая категория имеет свой набор текстур для фона, рамки, украшений и индикатора прогресса. Также можно настроить звуковые эффекты, частицы и способ получения готовых предметов.

mods.selectionguicrafting.category.removeByName('dummy_category_1')

mods.selectionguicrafting.category.categoryBuilder()
    .id('dummy_category')
    .displayName('Ваша первая категория')
    .background('selectionguicrafting:textures/gui/background/wood.png')
    .register()

// Создание рецепта:
// Каждый рецепт требует наличие входного предмета (вторая рука), инструмента (основная рука) и результата. Также можно указать необязательный катализатор (в инвентаре). Для рецепта настраивается время изготовления, потребление прочности инструмента, получение опыта и параметры звуков.

mods.selectionguicrafting.recipe.removeByInput(item('minecraft:cobblestone'))

mods.selectionguicrafting.recipe.recipeBuilder()
    .category('dummy_category')
    .input(item('minecraft:stone')  3)
    .output(item('minecraft:cobblestone')  2, 0.5f)
    .tool(item('minecraft:wooden_pickaxe'), 1.0f)
    .time(200)
    .xp(1)
    .sound('minecraft:block.anvil.land', 1.0f, 1.0f)
    .register()
Участники проекта
EnderDevelopment

EnderDevelopment

Создан: 27 янв 2025

ID: 81717