From 39e860974a20d2a449a4c90c51106913b33a6447 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9a=20Gris?= Date: Wed, 14 Jan 2026 15:09:18 +0100 Subject: [PATCH] fix(render): adapt hodgepodge fixBottomFaceUV HodgePodge mixin fixBottomFaceUV options fixes the bottom face texture UV. See: GTNewHorizons/Hodgepodge#676 When unflipped, the bottom face of v-type connected textures blocks like the large hexplating or the Industrial Technical Block's massive big fan, needs a new unflipped order to correctly connect. Consequently, when `fixBottomFaceUV=true`, the bottom fan animation rotates the same way as other faces, instead of backward without the hodgepodge fix. --- .../com/cricketcraft/chisel/api/rendering/TextureType.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java b/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java index ca0114e0f..e71c5e41d 100644 --- a/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java +++ b/src/main/java/com/cricketcraft/chisel/api/rendering/TextureType.java @@ -6,6 +6,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.launchwrapper.Launch; import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; import net.minecraft.world.IBlockAccess; @@ -271,6 +272,8 @@ protected IIcon getIcon(ICarvingVariation variation, Object cachedObject, IBlock CUSTOM; /* Some util stuff for shared code between v* and r* */ + public static final boolean fixedBottomFaceUV = (boolean) Launch.blackboard + .getOrDefault("hodgepodge.FixesConfig.fixBottomFaceUV", Boolean.FALSE); public static IIcon getVIcon(TextureType type, TextureSubmap map, int x, int y, int z, int side) { int variationSize = (type == TextureType.V9) ? 3 : 2; @@ -291,6 +294,9 @@ public static IIcon getVIcon(TextureType type, TextureSubmap map, int x, int y, //For DOWN, reverse the indexes for only Z textureZ = (variationSize - textureZ - 1); }*/ + else if (side == 0 && fixedBottomFaceUV) { + textureX = variationSize - textureX - 1; + } int index; if (side == 0 || side == 1) {