Fixed magic effect not rendering for shields (and tridents)

This commit is contained in:
Sollace 2020-04-03 21:41:33 +02:00
parent 9567dc474d
commit 005ee385c8
2 changed files with 30 additions and 0 deletions

View file

@ -0,0 +1,29 @@
package com.minelittlepony.client.mixin;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
import com.minelittlepony.client.render.LevitatingItemRenderer;
import net.minecraft.client.render.RenderLayer;
import net.minecraft.client.render.VertexConsumer;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.render.item.ItemRenderer;
@Mixin(ItemRenderer.class)
abstract class MixinItemRenderer {
private static final String VertexConsumerProvider = "Lnet/minecraft/client/render/VertexConsumerProvider;";
private static final String VertexConsumer = "Lnet/minecraft/client/render/VertexConsumer;";
private static final String RenderLayer = "Lnet/minecraft/client/render/RenderLayer;";
private static final String Boolean = "Z";
@Inject(method = "getArmorVertexConsumer(" + VertexConsumerProvider + RenderLayer + Boolean + Boolean + ")" + VertexConsumer, at = @At("HEAD"), cancellable = true)
private static void onGetArmorVertexConsumer(VertexConsumerProvider provider, RenderLayer layer, boolean solid, boolean glint, CallbackInfoReturnable<VertexConsumer> info) {
if (LevitatingItemRenderer.usesTransparency()) {
info.setReturnValue(provider.getBuffer(LevitatingItemRenderer.getRenderLayer()));
}
}
}

View file

@ -11,6 +11,7 @@
"MixinEntityRenderDispatcher", "MixinEntityRenderDispatcher",
"MixinSkullBlockEntityRenderer", "MixinSkullBlockEntityRenderer",
"MixinFirstPersonRenderer", "MixinFirstPersonRenderer",
"MixinItemRenderer",
"MixinTexturedRenderLayers", "MixinTexturedRenderLayers",
"MixinSpriteIdentifier", "MixinSpriteIdentifier",
"MixinClientPlayerEntity", "MixinClientPlayerEntity",