mirror of
https://github.com/Sollace/Unicopia.git
synced 2024-11-23 13:37:58 +01:00
Fixed shields rendering on players in the inventory screen
This commit is contained in:
parent
e03fb016d5
commit
aa00b1a9b0
2 changed files with 15 additions and 1 deletions
|
@ -79,6 +79,10 @@ public class SpellEffectsRenderDispatcher implements SynchronousResourceReloader
|
|||
}
|
||||
|
||||
public void render(MatrixStack matrices, VertexConsumerProvider vertices, int light, Caster<?> caster, float limbAngle, float limbDistance, float tickDelta, float animationProgress, float headYaw, float headPitch) {
|
||||
if (!((RenderDispatcherAccessor)client.getEntityRenderDispatcher()).shouldRenderShadows()) {
|
||||
return;
|
||||
}
|
||||
|
||||
caster.getSpellSlot().forEach(spell -> {
|
||||
render(matrices, vertices, spell, caster, light, limbAngle, limbDistance, tickDelta, animationProgress, headYaw, headPitch);
|
||||
return Operation.SKIP;
|
||||
|
@ -156,4 +160,8 @@ public class SpellEffectsRenderDispatcher implements SynchronousResourceReloader
|
|||
matrices.pop();
|
||||
}
|
||||
}
|
||||
|
||||
public interface RenderDispatcherAccessor {
|
||||
boolean shouldRenderShadows();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
package com.minelittlepony.unicopia.mixin.client;
|
||||
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.gen.Accessor;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Inject;
|
||||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
|
||||
import com.minelittlepony.unicopia.client.render.WorldRenderDelegate;
|
||||
import com.minelittlepony.unicopia.client.render.spell.SpellEffectsRenderDispatcher;
|
||||
import com.minelittlepony.unicopia.entity.Equine;
|
||||
|
||||
import net.minecraft.client.render.VertexConsumerProvider;
|
||||
|
@ -14,7 +16,7 @@ import net.minecraft.client.util.math.MatrixStack;
|
|||
import net.minecraft.entity.Entity;
|
||||
|
||||
@Mixin(EntityRenderDispatcher.class)
|
||||
abstract class MixinEntityRenderDispatcher {
|
||||
abstract class MixinEntityRenderDispatcher implements SpellEffectsRenderDispatcher.RenderDispatcherAccessor {
|
||||
|
||||
private static final String RENDER = "render(Lnet/minecraft/entity/Entity;DDDFFLnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;I)V";
|
||||
|
||||
|
@ -29,4 +31,8 @@ abstract class MixinEntityRenderDispatcher {
|
|||
private <E extends Entity> void afterRender(E entity, double x, double y, double z, float yaw, float tickDelta, MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, CallbackInfo info) {
|
||||
Equine.of(entity).ifPresent(eq -> WorldRenderDelegate.INSTANCE.afterEntityRender(eq, matrices, vertexConsumers, light));
|
||||
}
|
||||
|
||||
@Accessor("renderShadows")
|
||||
@Override
|
||||
public abstract boolean shouldRenderShadows();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue