diff --git a/bclib.gradle b/bclib.gradle index 5a1d05c6..d949fbc9 100644 --- a/bclib.gradle +++ b/bclib.gradle @@ -61,8 +61,8 @@ dependencies { modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" modCompileOnly "com.terraformersmc:modmenu:${project.modmenu_version}" - modCompileOnly "dev.emi:emi:${emi_version}" - //modImplementation "dev.emi:emi:${emi_version}" + modCompileOnly "dev.emi:emi-fabric:${emi_version}:api" + modLocalRuntime "dev.emi:emi-fabric:${emi_version}" println "Using local WunderLib: ${local_wunderlib}" if (local_wunderlib) { diff --git a/gradle.properties b/gradle.properties index 9bd7d99b..a6243932 100644 --- a/gradle.properties +++ b/gradle.properties @@ -17,5 +17,5 @@ maven_group=org.betterx.bclib archives_base_name=bclib # Dependencies modmenu_version=6.1.0-rc.3 -emi_version=0.7.3+1.19.4 +emi_version=1.0.3+1.19.4 wunderlib_version=1.0.1 \ No newline at end of file diff --git a/src/main/java/org/betterx/bclib/integration/emi/EMIAbstractAlloyingRecipe.java b/src/main/java/org/betterx/bclib/integration/emi/EMIAbstractAlloyingRecipe.java index e365f57d..8d75c0cf 100644 --- a/src/main/java/org/betterx/bclib/integration/emi/EMIAbstractAlloyingRecipe.java +++ b/src/main/java/org/betterx/bclib/integration/emi/EMIAbstractAlloyingRecipe.java @@ -2,12 +2,12 @@ package org.betterx.bclib.integration.emi; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; +import net.minecraft.network.chat.Component; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.Container; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.Recipe; -import dev.emi.emi.EmiPort; import dev.emi.emi.api.recipe.EmiRecipe; import dev.emi.emi.api.recipe.EmiRecipeCategory; import dev.emi.emi.api.render.EmiTexture; @@ -82,12 +82,11 @@ public abstract class EMIAbstractAlloyingRecipe { - return List.of(ClientTooltipComponent.create(EmiPort.ordered(EmiPort.translatable( - "emi.cooking.time", - new Object[]{(float) getSmeltTime() / 20.0F} - )))); - }); + widgets.addFillingArrow(24 + getXOffset(), 5, 50 * getSmeltTime()) + .tooltip((mx, my) -> List.of(ClientTooltipComponent.create(Component.translatable( + "emi.cooking.time", + new Object[]{(float) getSmeltTime() / 20.0F} + ).getVisualOrderText()))); if (this.infiniBurn) { widgets.addTexture(EmiTexture.FULL_FLAME, 1, 24); @@ -100,14 +99,14 @@ public abstract class EMIAbstractAlloyingRecipe 1) ? input.get(1) : null, 20, 4); widgets.addText( - EmiPort.ordered(EmiPort.translatable("emi.cooking.experience", getExperience())), + Component.translatable("emi.cooking.experience", getExperience()).getVisualOrderText(), 24 + getXOffset(), 28, 0xFFFFFFFF, true ); // Adds an output slot on the right // Note that output slots need to call `recipeContext` to inform EMI about their recipe context // This includes being able to resolve recipe trees, favorite stacks with recipe context, and more - widgets.addSlot(output.get(0), 56 + getXOffset(), 0).output(true).recipeContext(this); + widgets.addSlot(output.get(0), 56 + getXOffset(), 0).large(true).recipeContext(this); } @Override diff --git a/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipe.java b/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipe.java index c8c32fa9..f76dda4b 100644 --- a/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipe.java +++ b/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipe.java @@ -96,7 +96,7 @@ public class EMIAnvilRecipe implements EmiRecipe { // Adds an output slot on the right // Note that output slots need to call `recipeContext` to inform EMI about their recipe context // This includes being able to resolve recipe trees, favorite stacks with recipe context, and more - widgetHolder.addSlot(output.get(0), 78, 0).output(true).recipeContext(this); + widgetHolder.addSlot(output.get(0), 78, 0).large(true).recipeContext(this); } @Override diff --git a/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipeCategory.java b/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipeCategory.java index 4886d43c..c47bbea0 100644 --- a/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipeCategory.java +++ b/src/main/java/org/betterx/bclib/integration/emi/EMIAnvilRecipeCategory.java @@ -5,7 +5,6 @@ import org.betterx.bclib.util.RomanNumeral; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.Tesselator; -import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.Font; import net.minecraft.client.gui.screens.inventory.tooltip.ClientTooltipComponent; @@ -14,8 +13,6 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FormattedCharSequence; import com.google.common.collect.Lists; -import dev.emi.emi.EmiPort; -import dev.emi.emi.EmiUtil; import dev.emi.emi.api.recipe.EmiRecipe; import dev.emi.emi.api.recipe.EmiRecipeCategory; import dev.emi.emi.api.render.EmiRenderable; @@ -168,24 +165,19 @@ public class EMIAnvilRecipeCategory extends EmiRecipeCategory { bufferSource.endBatch(); } + @Override public List getTooltip() { - List list = Lists.newArrayList(); - if (titleLines.isEmpty()) { - list.add(ClientTooltipComponent.create(EmiPort.ordered(EmiPort.translatable(EmiUtil.translateId( - "emi.category.", - this.getId() - ))))); - } else { + List list = super.getTooltip(); + if (!titleLines.isEmpty()) { + List newList = Lists.newArrayList(); for (var line : titleLines) - list.add(ClientTooltipComponent.create(line)); + newList.add(ClientTooltipComponent.create(line)); + + if (list.size() > 0) list.remove(0); + newList.addAll(list); + return newList; } - - list.add(ClientTooltipComponent.create(EmiPort.ordered(EmiPort.literal( - EmiUtil.getModName(this.getId() - .getNamespace()), - new ChatFormatting[]{ChatFormatting.BLUE, ChatFormatting.ITALIC} - )))); return list; } } diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index daee56a3..6acfde3a 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -54,7 +54,8 @@ "wunderlib": "1.0.x" }, "breaks": { - "wunderlib": "<1.0.1" + "wunderlib": "<1.0.1", + "emi": "<1.0.0" }, "custom": { "bclib": {