Fixed the Proxy renderer not including layers. (Guardians can have arrows now! :D)

This commit is contained in:
Sollace 2018-08-14 19:06:46 +02:00
parent bf8025bdaf
commit 36015ba384
2 changed files with 9 additions and 3 deletions

View file

@ -15,11 +15,14 @@ import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.entity.RenderLiving;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.entity.layers.LayerArrow;
import net.minecraft.client.renderer.entity.layers.LayerRenderer;
import net.minecraft.entity.EntityLiving;
import net.minecraft.util.ResourceLocation;
import javax.annotation.Nonnull;
import java.util.List;
// TODO: A lot of this duplicates RenderPonyPlayer
// and is the whole reason we had this scaling bug in the first place.
public abstract class RenderPonyMob<T extends EntityLiving> extends RenderLiving<T> implements IRenderPony<T> {
@ -86,13 +89,16 @@ public abstract class RenderPonyMob<T extends EntityLiving> extends RenderLiving
public abstract static class Proxy<T extends EntityLiving> extends RenderPonyMob<T> {
public Proxy(RenderManager manager, ModelWrapper model) {
public Proxy(List<LayerRenderer<T>> exportedLayers, RenderManager manager, ModelWrapper model) {
super(manager, model);
exportedLayers.addAll(layerRenderers);
}
@Override
protected void addLayers() {
layerRenderers.clear();
super.addLayers();
}
public final ResourceLocation getTextureFor(T entity) {

View file

@ -22,7 +22,7 @@ public class RenderPonyGuardian extends RenderGuardian {
super(manager);
mainModel = PMAPI.seapony.getBody();
ponyRenderer = new RenderPonyMob.Proxy<EntityGuardian>(manager, PMAPI.seapony) {
ponyRenderer = new RenderPonyMob.Proxy<EntityGuardian>(layerRenderers, manager, PMAPI.seapony) {
@Override
protected ResourceLocation getTexture(EntityGuardian entity) {
return RenderPonyGuardian.this.getTexture(entity);