package com.thebrokenrail.gulliverreloaded.mixin; import com.thebrokenrail.gulliverreloaded.ScaledEntity; import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.client.render.entity.LivingEntityRenderer; import net.minecraft.client.util.math.MatrixStack; import net.minecraft.entity.LivingEntity; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.ModifyArg; @SuppressWarnings("unused") @Environment(EnvType.CLIENT) @Mixin(LivingEntityRenderer.class) public class MixinLivingEntityRenderer { @ModifyArg(at = @At(value = "INVOKE", target = "Lnet/minecraft/client/render/entity/LivingEntityRenderer;scale(Lnet/minecraft/entity/LivingEntity;Lnet/minecraft/client/util/math/MatrixStack;F)V"), method = "render", index = 1) public MatrixStack adjustScale(LivingEntity livingEntity, MatrixStack matrices, float amount) { float scale = ((ScaledEntity) livingEntity).getScale(); matrices.scale(scale, scale, scale); return matrices; } }