mirror of
https://github.com/MineLittlePony/MineLittlePony.git
synced 2025-02-13 16:24:23 +01:00
Fix for Traben-0/Entity_Model_Features#89 (because apparently we can't trust the context to give us the model we set)
This commit is contained in:
parent
262a39e1d8
commit
0aee3343f8
3 changed files with 15 additions and 5 deletions
|
@ -43,6 +43,11 @@ public abstract class AbstractPonyFeature<T extends LivingEntity, M extends Enti
|
|||
return (C)context;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final M getContextModel() {
|
||||
return context.getInternalRenderer().getModel();
|
||||
}
|
||||
|
||||
protected ModelWrapper<T, M> getModelWrapper() {
|
||||
return context.getInternalRenderer().getModelWrapper();
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.minelittlepony.client.render.entity.feature;
|
|||
|
||||
import com.minelittlepony.api.model.BodyPart;
|
||||
import com.minelittlepony.client.model.IPonyModel;
|
||||
import com.minelittlepony.client.render.IPonyRenderContext;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.entity.feature.FeatureRendererContext;
|
||||
|
@ -17,8 +18,12 @@ import net.minecraft.util.Arm;
|
|||
|
||||
public class HeldItemFeature<T extends LivingEntity, M extends EntityModel<T> & IPonyModel<T> & ModelWithArms> extends HeldItemFeatureRenderer<T, M> {
|
||||
|
||||
public HeldItemFeature(FeatureRendererContext<T, M> context, HeldItemRenderer renderer) {
|
||||
super(context, renderer);
|
||||
private final IPonyRenderContext<T, M> context;
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public HeldItemFeature(IPonyRenderContext<T, M> context, HeldItemRenderer renderer) {
|
||||
super((FeatureRendererContext<T, M>)context, renderer);
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
protected ItemStack getLeftItem(T entity) {
|
||||
|
@ -39,7 +44,7 @@ public class HeldItemFeature<T extends LivingEntity, M extends EntityModel<T> &
|
|||
ItemStack right = getRightItem(entity);
|
||||
|
||||
if (!left.isEmpty() || !right.isEmpty()) {
|
||||
M model = getContextModel();
|
||||
M model = context.getInternalRenderer().getModel();
|
||||
|
||||
stack.push();
|
||||
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
package com.minelittlepony.client.render.entity.feature;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
import net.minecraft.client.render.entity.feature.FeatureRendererContext;
|
||||
import net.minecraft.client.render.item.HeldItemRenderer;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.entity.mob.IllagerEntity;
|
||||
|
||||
import com.minelittlepony.client.model.entity.race.AlicornModel;
|
||||
import com.minelittlepony.client.render.IPonyRenderContext;
|
||||
|
||||
public class IllagerHeldItemFeature<T extends IllagerEntity, M extends AlicornModel<T>> extends HeldItemFeature<T, M> {
|
||||
|
||||
public IllagerHeldItemFeature(FeatureRendererContext<T,M> livingPony, HeldItemRenderer renderer) {
|
||||
public IllagerHeldItemFeature(IPonyRenderContext<T,M> livingPony, HeldItemRenderer renderer) {
|
||||
super(livingPony, renderer);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue