package ru.betterend.mixin.client; import net.minecraft.client.model.HumanoidModel; import net.minecraft.client.renderer.entity.EntityRendererProvider; import net.minecraft.client.renderer.entity.HumanoidMobRenderer; import net.minecraft.client.renderer.entity.MobRenderer; import net.minecraft.world.entity.Mob; 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.CallbackInfo; import ru.betterend.client.render.ArmoredElytraLayer; @Mixin(HumanoidMobRenderer.class) public abstract class HumanoidMobRendererMixin> extends MobRenderer { public HumanoidMobRendererMixin(EntityRendererProvider.Context context, M entityModel, float f) { super(context, entityModel, f); } @Inject(method = "(Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HumanoidModel;FFFF)V", at = @At("TAIL")) public void be_addCustomLayer(EntityRendererProvider.Context context, M humanoidModel, float f, float g, float h, float i, CallbackInfo ci) { addLayer(new ArmoredElytraLayer<>(this, context.getModelSet())); } }