From 15878af658d5d203af1f4ea7d84bbc4c9bfeba30 Mon Sep 17 00:00:00 2001 From: Sara Freimer Date: Tue, 27 Jun 2023 06:54:41 -0500 Subject: [PATCH] Expose EntityRendererProvider.Context to AddLayers event (#9562) --- .../entity/EntityRenderDispatcher.java.patch | 2 +- .../client/event/EntityRenderersEvent.java | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/patches/minecraft/net/minecraft/client/renderer/entity/EntityRenderDispatcher.java.patch b/patches/minecraft/net/minecraft/client/renderer/entity/EntityRenderDispatcher.java.patch index 27553fa4d3..9d1ed7dd7a 100644 --- a/patches/minecraft/net/minecraft/client/renderer/entity/EntityRenderDispatcher.java.patch +++ b/patches/minecraft/net/minecraft/client/renderer/entity/EntityRenderDispatcher.java.patch @@ -27,6 +27,6 @@ EntityRendererProvider.Context entityrendererprovider$context = new EntityRendererProvider.Context(this, this.f_173995_, this.f_234576_, this.f_234577_, p_174004_, this.f_173996_, this.f_114365_); this.f_114362_ = EntityRenderers.m_174049_(entityrendererprovider$context); this.f_114363_ = EntityRenderers.m_174051_(entityrendererprovider$context); -+ net.minecraftforge.fml.ModLoader.get().postEvent(new net.minecraftforge.client.event.EntityRenderersEvent.AddLayers(f_114362_, f_114363_)); ++ net.minecraftforge.fml.ModLoader.get().postEvent(new net.minecraftforge.client.event.EntityRenderersEvent.AddLayers(f_114362_, f_114363_, entityrendererprovider$context)); } } diff --git a/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java b/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java index 4a1d74dbff..1d05344889 100644 --- a/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java +++ b/src/main/java/net/minecraftforge/client/event/EntityRenderersEvent.java @@ -6,7 +6,6 @@ package net.minecraftforge.client.event; import com.google.common.collect.ImmutableMap; -import net.minecraft.client.Minecraft; import net.minecraft.client.model.EntityModel; import net.minecraft.client.model.SkullModel; import net.minecraft.client.model.SkullModelBase; @@ -143,13 +142,14 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent { private final Map, EntityRenderer> renderers; private final Map> skinMap; - private final EntityModelSet entityModels = Minecraft.getInstance().getEntityModels(); + private final EntityRendererProvider.Context context; @ApiStatus.Internal - public AddLayers(Map, EntityRenderer> renderers, Map> playerRenderers) + public AddLayers(Map, EntityRenderer> renderers, Map> playerRenderers, EntityRendererProvider.Context context) { this.renderers = renderers; this.skinMap = playerRenderers; + this.context = context; } /** @@ -199,7 +199,15 @@ public abstract class EntityRenderersEvent extends Event implements IModBusEvent */ public EntityModelSet getEntityModels() { - return entityModels; + return this.context.getModelSet(); + } + + /** + * {@return the context for the entity renderer provider} + */ + public EntityRendererProvider.Context getContext() + { + return context; } }