From 9689153910760e613586b49a91d08bb43990c9bc Mon Sep 17 00:00:00 2001 From: YuRaNnNzZZ Date: Thu, 12 Dec 2024 07:58:55 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B2=D0=BE=D0=B2=D1=80=D0=B0=D1=89=D0=B0?= =?UTF-8?q?=D0=B5=D0=BC=20=D0=BC=D0=B5=D0=BA=D0=B0=D0=BD=D0=B8=D0=B7=D0=BC?= =?UTF-8?q?=20+=20=D0=B1=D0=B0=D0=BC=D0=BF=20=D0=B2=D0=B5=D1=80=D1=81?= =?UTF-8?q?=D0=B8=D0=B8=20=D0=BD=D0=B5=D0=BE=D1=84=D0=B1=D0=B0=D0=B1=D1=80?= =?UTF-8?q?=D0=B8=D0=BA=D0=B0=20+=20=D1=80=D0=B5=D1=86=D0=B5=D0=BF=D1=82?= =?UTF-8?q?=D1=8B=20=D0=BF=D0=BE=D0=BA=D1=80=D0=B0=D1=81=D0=BA=D0=B8=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20=D0=BA=D1=80=D0=B0=D1=81=D0=B8=D1=82=D0=B5?= =?UTF-8?q?=D0=BB=D1=8F=20=D0=B8=D0=B7=20=D0=BC=D0=B5=D0=BA=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B7=D0=BC=D0=B0=20#203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 12 ++++- gradle.properties | 3 +- .../mc/otm/datagen/recipes/PainterRecipes.kt | 53 +++++++++++++++++++ 3 files changed, 66 insertions(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 09960a4b0..5789fec33 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -171,6 +171,7 @@ dependencies { val prism_lib_id: String by project val cloth_config_version: String by project val condensed_creative_version: String by project + val mekanism_version: String by project compileOnly("top.theillusivec4.curios:curios-neoforge:${curios_version}+${curios_mc_version}") implementation("curse.maven:cosmetic-armor-reworked-237307:$cosmetic_armor_reworked_id") @@ -207,6 +208,8 @@ dependencies { // runtimeOnly("curse.maven:integrated-terminals-295910:4400924") // runtimeOnly("curse.maven:common-capabilities-247007:4391468") // runtimeOnly("curse.maven:integrated-tunnels-251389:4344632") + + implementation("mekanism:Mekanism:${mc_version}-${mekanism_version}") } } @@ -276,7 +279,6 @@ repositories { content { includeGroup("yalter.mousetweaks") - includeGroup("mekanism") includeGroup("lain.mods.cos") includeGroup("at.ridgo8.moreoverlays") includeGroup("ru.dbotthepony") @@ -338,6 +340,14 @@ repositories { } } + maven { + url = uri("https://modmaven.dev/") + + content { + includeGroup("mekanism") + } + } + // mavenCentral() } diff --git a/gradle.properties b/gradle.properties index 22114a8e4..c7a457f8f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -15,7 +15,7 @@ jei_mc_version=1.21.1 curios_mc_version=1.21 forge_gradle_version=7.0.153 -forge_version=21.1.1 +forge_version=21.1.21 mixingradle_version=0.7.33 mixin_version=0.8.5 @@ -37,6 +37,7 @@ iceberg_id=5750025 prism_lib_id=5625115 cloth_config_version=15.0.130 condensed_creative_version=3.4.1+1.21 +mekanism_version=10.7.7.64 kotlin_for_forge_version=5.5.0 kotlin_version=2.0.10 diff --git a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt index 59a20c85b..f60fed4c5 100644 --- a/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt +++ b/src/data/kotlin/ru/dbotthepony/mc/otm/datagen/recipes/PainterRecipes.kt @@ -1,11 +1,17 @@ package ru.dbotthepony.mc.otm.datagen.recipes +import mekanism.api.recipes.basic.BasicPaintingRecipe +import mekanism.api.recipes.ingredients.creator.IngredientCreatorAccess +import mekanism.api.text.EnumColor +import mekanism.common.registries.MekanismChemicals import net.minecraft.data.recipes.RecipeOutput +import net.minecraft.resources.ResourceLocation import net.minecraft.world.item.DyeColor import net.minecraft.world.item.Item import net.minecraft.world.item.ItemStack import net.minecraft.world.item.Items import net.minecraft.world.item.crafting.Ingredient +import net.neoforged.fml.ModList import ru.dbotthepony.mc.otm.core.registryName import ru.dbotthepony.mc.otm.datagen.modLocation import ru.dbotthepony.mc.otm.recipe.PainterArmorDyeRecipe @@ -15,6 +21,10 @@ import ru.dbotthepony.mc.otm.registry.MRegistry private val Item.recipeName get() = registryName!!.namespace + "/" + registryName!!.path +private val isMekanismLoaded by lazy { + ModList.get().isLoaded("mekanism") +} + private fun generate(consumer: RecipeOutput, items: Map, amount: Int = 1) { for ((targetColor, targetItem) in items) { if (targetColor == null) continue @@ -24,6 +34,16 @@ private fun generate(consumer: RecipeOutput, items: Map, am ItemStack(targetItem), mapOf(targetColor to amount, null to 15) )) + + if (isMekanismLoaded) { + addMekanismPaintRecipe(consumer, + modLocation("mekanism/painter/" + targetItem.recipeName), + Ingredient.of(items.entries.stream().filter { it.key != null && it.key != targetColor }.map { ItemStack(it.value) }), + ItemStack(targetItem), + targetColor, + amount + ) + } } } @@ -41,6 +61,16 @@ private fun generate(consumer: RecipeOutput, default: Item, items: Map