From 88f1017b543db4c28cf58abde331cb8ca553ee0c Mon Sep 17 00:00:00 2001 From: alongstringofnumbers Date: Mon, 8 Jan 2024 18:27:45 -0700 Subject: [PATCH] Fix CTM mixin --- .../mixins/ctm/AbstractCTMBakedModelMixin.java | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/java/gregtech/mixins/ctm/AbstractCTMBakedModelMixin.java b/src/main/java/gregtech/mixins/ctm/AbstractCTMBakedModelMixin.java index b1c614244e3..739de1b6acf 100644 --- a/src/main/java/gregtech/mixins/ctm/AbstractCTMBakedModelMixin.java +++ b/src/main/java/gregtech/mixins/ctm/AbstractCTMBakedModelMixin.java @@ -8,23 +8,20 @@ import net.minecraft.util.BlockRenderLayer; import net.minecraft.util.EnumFacing; +import com.llamalad7.mixinextras.injector.ModifyReturnValue; import com.llamalad7.mixinextras.sugar.Local; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import team.chisel.ctm.client.model.AbstractCTMBakedModel; import java.util.List; -//TODO, I don't think this works. Might need to wrap the return for the list of quads @Mixin(AbstractCTMBakedModel.class) public class AbstractCTMBakedModelMixin { - @Inject(method = "getQuads", at = @At(value = "TAIL"), remap = false) - public void getQuadsWithOptifine(IBlockState state, EnumFacing side, long rand, - CallbackInfoReturnable> cir, @Local BlockRenderLayer layer, - @Local Object ret) { - CTMHooks.getQuadsWithOptiFine((List) ret, layer, (IBakedModel) this, state, side, rand); + @ModifyReturnValue(method = "getQuads", at = @At("RETURN")) + private List getQuadsWithOptifine(List original, @Local BlockRenderLayer layer, + @Local IBlockState state, @Local EnumFacing side, @Local long rand) { + return CTMHooks.getQuadsWithOptiFine(original, layer, (IBakedModel) this, state, side, rand); } }