вовращаем меканизм + бамп версии неофбабрика + рецепты покраски для красителя из меканизма #203
This commit is contained in:
parent
3cbc7b417f
commit
9689153910
@ -171,6 +171,7 @@ dependencies {
|
|||||||
val prism_lib_id: String by project
|
val prism_lib_id: String by project
|
||||||
val cloth_config_version: String by project
|
val cloth_config_version: String by project
|
||||||
val condensed_creative_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}")
|
compileOnly("top.theillusivec4.curios:curios-neoforge:${curios_version}+${curios_mc_version}")
|
||||||
implementation("curse.maven:cosmetic-armor-reworked-237307:$cosmetic_armor_reworked_id")
|
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:integrated-terminals-295910:4400924")
|
||||||
// runtimeOnly("curse.maven:common-capabilities-247007:4391468")
|
// runtimeOnly("curse.maven:common-capabilities-247007:4391468")
|
||||||
// runtimeOnly("curse.maven:integrated-tunnels-251389:4344632")
|
// runtimeOnly("curse.maven:integrated-tunnels-251389:4344632")
|
||||||
|
|
||||||
|
implementation("mekanism:Mekanism:${mc_version}-${mekanism_version}")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -276,7 +279,6 @@ repositories {
|
|||||||
|
|
||||||
content {
|
content {
|
||||||
includeGroup("yalter.mousetweaks")
|
includeGroup("yalter.mousetweaks")
|
||||||
includeGroup("mekanism")
|
|
||||||
includeGroup("lain.mods.cos")
|
includeGroup("lain.mods.cos")
|
||||||
includeGroup("at.ridgo8.moreoverlays")
|
includeGroup("at.ridgo8.moreoverlays")
|
||||||
includeGroup("ru.dbotthepony")
|
includeGroup("ru.dbotthepony")
|
||||||
@ -338,6 +340,14 @@ repositories {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
maven {
|
||||||
|
url = uri("https://modmaven.dev/")
|
||||||
|
|
||||||
|
content {
|
||||||
|
includeGroup("mekanism")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// mavenCentral()
|
// mavenCentral()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ jei_mc_version=1.21.1
|
|||||||
curios_mc_version=1.21
|
curios_mc_version=1.21
|
||||||
|
|
||||||
forge_gradle_version=7.0.153
|
forge_gradle_version=7.0.153
|
||||||
forge_version=21.1.1
|
forge_version=21.1.21
|
||||||
mixingradle_version=0.7.33
|
mixingradle_version=0.7.33
|
||||||
mixin_version=0.8.5
|
mixin_version=0.8.5
|
||||||
|
|
||||||
@ -37,6 +37,7 @@ iceberg_id=5750025
|
|||||||
prism_lib_id=5625115
|
prism_lib_id=5625115
|
||||||
cloth_config_version=15.0.130
|
cloth_config_version=15.0.130
|
||||||
condensed_creative_version=3.4.1+1.21
|
condensed_creative_version=3.4.1+1.21
|
||||||
|
mekanism_version=10.7.7.64
|
||||||
|
|
||||||
kotlin_for_forge_version=5.5.0
|
kotlin_for_forge_version=5.5.0
|
||||||
kotlin_version=2.0.10
|
kotlin_version=2.0.10
|
||||||
|
@ -1,11 +1,17 @@
|
|||||||
package ru.dbotthepony.mc.otm.datagen.recipes
|
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.data.recipes.RecipeOutput
|
||||||
|
import net.minecraft.resources.ResourceLocation
|
||||||
import net.minecraft.world.item.DyeColor
|
import net.minecraft.world.item.DyeColor
|
||||||
import net.minecraft.world.item.Item
|
import net.minecraft.world.item.Item
|
||||||
import net.minecraft.world.item.ItemStack
|
import net.minecraft.world.item.ItemStack
|
||||||
import net.minecraft.world.item.Items
|
import net.minecraft.world.item.Items
|
||||||
import net.minecraft.world.item.crafting.Ingredient
|
import net.minecraft.world.item.crafting.Ingredient
|
||||||
|
import net.neoforged.fml.ModList
|
||||||
import ru.dbotthepony.mc.otm.core.registryName
|
import ru.dbotthepony.mc.otm.core.registryName
|
||||||
import ru.dbotthepony.mc.otm.datagen.modLocation
|
import ru.dbotthepony.mc.otm.datagen.modLocation
|
||||||
import ru.dbotthepony.mc.otm.recipe.PainterArmorDyeRecipe
|
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 Item.recipeName get() = registryName!!.namespace + "/" + registryName!!.path
|
||||||
|
|
||||||
|
private val isMekanismLoaded by lazy {
|
||||||
|
ModList.get().isLoaded("mekanism")
|
||||||
|
}
|
||||||
|
|
||||||
private fun generate(consumer: RecipeOutput, items: Map<out DyeColor?, Item>, amount: Int = 1) {
|
private fun generate(consumer: RecipeOutput, items: Map<out DyeColor?, Item>, amount: Int = 1) {
|
||||||
for ((targetColor, targetItem) in items) {
|
for ((targetColor, targetItem) in items) {
|
||||||
if (targetColor == null) continue
|
if (targetColor == null) continue
|
||||||
@ -24,6 +34,16 @@ private fun generate(consumer: RecipeOutput, items: Map<out DyeColor?, Item>, am
|
|||||||
ItemStack(targetItem),
|
ItemStack(targetItem),
|
||||||
mapOf(targetColor to amount, null to 15)
|
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<out DyeCo
|
|||||||
ItemStack(v1),
|
ItemStack(v1),
|
||||||
mapOf(k1 to amount)
|
mapOf(k1 to amount)
|
||||||
))
|
))
|
||||||
|
|
||||||
|
if (isMekanismLoaded) {
|
||||||
|
addMekanismPaintRecipe(consumer,
|
||||||
|
modLocation("mekanism/painter/" + default.recipeName + "/" + v1.recipeName),
|
||||||
|
Ingredient.of(default),
|
||||||
|
ItemStack(v1),
|
||||||
|
k1,
|
||||||
|
amount
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -65,9 +95,32 @@ private fun striped(consumer: RecipeOutput, name: String, items: List<Pair<Item,
|
|||||||
ItemStack(stripeItem),
|
ItemStack(stripeItem),
|
||||||
setOf(stripe)
|
setOf(stripe)
|
||||||
))
|
))
|
||||||
|
|
||||||
|
if (isMekanismLoaded) {
|
||||||
|
addMekanismPaintRecipe(consumer,
|
||||||
|
modLocation("mekanism/painter/stripes_$name/${baseColor.getName()}/${stripe.getName()}"),
|
||||||
|
Ingredient.of(base[baseColor]),
|
||||||
|
ItemStack(stripeItem),
|
||||||
|
stripe
|
||||||
|
)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun addMekanismPaintRecipe(consumer: RecipeOutput, location: ResourceLocation, input: Ingredient, output: ItemStack, dye: DyeColor, amount: Int = 1, dyeMul: Float = 0.125F) {
|
||||||
|
if (output.item.registryName?.namespace == "minecraft") return // mekanism already has painting recipes for vanilla
|
||||||
|
|
||||||
|
val color = EnumColor.entries.find{it.dyeColor == dye} ?: return
|
||||||
|
val pigment = MekanismChemicals.PIGMENT_COLOR_LOOKUP.get(color) ?: return
|
||||||
|
|
||||||
|
consumer.accept(location, BasicPaintingRecipe(
|
||||||
|
IngredientCreatorAccess.item().from(input),
|
||||||
|
IngredientCreatorAccess.chemicalStack().from(pigment, (256L * amount * dyeMul).toLong()),
|
||||||
|
output.copy(),
|
||||||
|
false
|
||||||
|
))
|
||||||
|
}
|
||||||
|
|
||||||
fun addPainterRecipes(consumer: RecipeOutput) {
|
fun addPainterRecipes(consumer: RecipeOutput) {
|
||||||
generate(consumer, mapOf(
|
generate(consumer, mapOf(
|
||||||
DyeColor.WHITE to Items.WHITE_WOOL,
|
DyeColor.WHITE to Items.WHITE_WOOL,
|
||||||
|
Loading…
Reference in New Issue
Block a user