Added some more writes to make sure renderingNpc and renderingPlayer static vars are never both not null at the same time.

This commit is contained in:
Luis C.M. committed 2025-03-31 22:52:08 -05:00
1 parent d504164905
commit d95733cb6b
2 files changed
+13 -4

No files matched your search

@@ -106,6 +106,7 @@ public class ClientEventHandler {
@SubscribeEvent
public void onRenderEntity(RenderLivingEvent.Pre event) {
if (event.entity instanceof EntityNPCInterface) {
ClientEventHandler.renderingPlayer = null;
ClientEventHandler.renderingNpc = (EntityNPCInterface) event.entity;
}
ClientEventHandler.renderer = event.renderer;
@@ -170,6 +171,7 @@ public class ClientEventHandler {
@SubscribeEvent
public void onRenderPlayer(RenderPlayerEvent.Pre event) {
ClientEventHandler.renderingNpc = null;
ClientEventHandler.renderingPlayer = event.entityPlayer;
}
@@ -20,6 +20,11 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(ItemRenderer.class)
public abstract class MixinItemRenderer {
@Shadow
private RenderBlocks renderBlocksIr;
@Shadow
private static ResourceLocation RES_ITEM_GLINT;
@Inject(method = "renderItemInFirstPerson", at = @At(value = "HEAD"), cancellable = true)
public void renderItemInFirstPerson(float p_78440_1_, CallbackInfo callbackInfo) {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
@@ -32,6 +37,7 @@ public abstract class MixinItemRenderer {
ClientEventHandler.partialRenderTick = Minecraft.getMinecraft().timer.renderPartialTicks;
ClientEventHandler.partialHandTicks = p_78440_1_;
ClientEventHandler.renderingNpc = null;
ClientEventHandler.renderingPlayer = player;
ClientEventHandler.firstPersonAnimation = true;
ClientEventHandler.firstPersonModel = (ModelBiped) ((RendererLivingEntity) renderer).mainModel;
@@ -43,8 +49,9 @@ public abstract class MixinItemRenderer {
}
}
@Shadow
private RenderBlocks renderBlocksIr;
@Shadow
private static ResourceLocation RES_ITEM_GLINT;
@Inject(method = "renderItemInFirstPerson", at = @At(value = "TAIL"))
public void renderItemInFirstPerson_tail(float p_78440_1_, CallbackInfo callbackInfo) {
ClientEventHandler.firstPersonAnimation = false;
ClientEventHandler.renderingPlayer = null;
}
}