Split MixinGameRenderer into multiple mixins
This commit is contained in:
@@ -2,8 +2,6 @@
|
|||||||
package com.replaymod.core.mixin;
|
package com.replaymod.core.mixin;
|
||||||
|
|
||||||
import com.replaymod.core.events.PostRenderWorldCallback;
|
import com.replaymod.core.events.PostRenderWorldCallback;
|
||||||
import com.replaymod.core.events.PreRenderHandCallback;
|
|
||||||
import net.minecraft.client.render.Camera;
|
|
||||||
import net.minecraft.client.render.GameRenderer;
|
import net.minecraft.client.render.GameRenderer;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
@@ -12,7 +10,7 @@ import org.spongepowered.asm.mixin.injection.Inject;
|
|||||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
|
|
||||||
@Mixin(GameRenderer.class)
|
@Mixin(GameRenderer.class)
|
||||||
public class MixinGameRenderer {
|
public class Mixin_PostRenderWorldCalback {
|
||||||
@Inject(
|
@Inject(
|
||||||
method = "renderWorld",
|
method = "renderWorld",
|
||||||
at = @At(
|
at = @At(
|
||||||
@@ -32,18 +30,5 @@ public class MixinGameRenderer {
|
|||||||
//#endif
|
//#endif
|
||||||
PostRenderWorldCallback.EVENT.invoker().postRenderWorld(matrixStack);
|
PostRenderWorldCallback.EVENT.invoker().postRenderWorld(matrixStack);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Inject(method = "renderHand", at = @At("HEAD"), cancellable = true)
|
|
||||||
private void preRenderHand(
|
|
||||||
//#if MC>=11500
|
|
||||||
MatrixStack matrixStack,
|
|
||||||
//#endif
|
|
||||||
Camera camera,
|
|
||||||
float partialTicks,
|
|
||||||
CallbackInfo ci) {
|
|
||||||
if (PreRenderHandCallback.EVENT.invoker().preRenderHand()) {
|
|
||||||
ci.cancel();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//#endif
|
//#endif
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
//#if MC>=11400
|
||||||
|
package com.replaymod.core.mixin;
|
||||||
|
|
||||||
|
import com.replaymod.core.events.PreRenderHandCallback;
|
||||||
|
import net.minecraft.client.render.Camera;
|
||||||
|
import net.minecraft.client.render.GameRenderer;
|
||||||
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
|
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.CallbackInfo;
|
||||||
|
|
||||||
|
@Mixin(GameRenderer.class)
|
||||||
|
public class Mixin_PreRenderHandCallback {
|
||||||
|
@Inject(method = "renderHand", at = @At("HEAD"), cancellable = true)
|
||||||
|
private void preRenderHand(
|
||||||
|
//#if MC>=11500
|
||||||
|
MatrixStack matrixStack,
|
||||||
|
//#endif
|
||||||
|
Camera camera,
|
||||||
|
float partialTicks,
|
||||||
|
CallbackInfo ci) {
|
||||||
|
if (PreRenderHandCallback.EVENT.invoker().preRenderHand()) {
|
||||||
|
ci.cancel();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//#endif
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
// 1.20.6 and above
|
||||||
@@ -7,7 +7,8 @@
|
|||||||
"Mixin_ContextualKeyBindings",
|
"Mixin_ContextualKeyBindings",
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
"AbstractButtonWidgetAccessor",
|
"AbstractButtonWidgetAccessor",
|
||||||
"MixinGameRenderer",
|
"Mixin_PostRenderWorldCalback",
|
||||||
|
"Mixin_PreRenderHandCallback",
|
||||||
"Mixin_InjectDynamicResourcePacks",
|
"Mixin_InjectDynamicResourcePacks",
|
||||||
//#endif
|
//#endif
|
||||||
//#if MC>=11400
|
//#if MC>=11400
|
||||||
|
|||||||
Reference in New Issue
Block a user