@SubscribeEvent
public static void onRenderHand(RenderSpecificHandEvent ev)
{
EntityPlayer player = Minecraft.getMinecraft().player;
if (!player.isSneaking() && ev.getItemStack().getItem() instanceof ItemParchment)
{
float f = player.getSwingProgress(ev.getPartialTicks());
float f1 = player.prevRotationPitch
+ (player.rotationPitch - player.prevRotationPitch) * ev.getPartialTicks();
ItemRenderer itemrenderer = Minecraft.getMinecraft().getItemRenderer();
float prevEquipProgress = ev.getHand() == EnumHand.MAIN_HAND ? itemrenderer.prevEquippedProgressMainHand
: itemrenderer.prevEquippedProgressOffHand;
float equipProgress = ev.getHand() == EnumHand.MAIN_HAND ? itemrenderer.equippedProgressMainHand
: itemrenderer.equippedProgressOffHand;
float f5 = 1.0F - (prevEquipProgress + (equipProgress - prevEquipProgress) * ev.getPartialTicks());
GlStateManager.pushMatrix();
GlStateManager.pushAttrib();
if (ev.getHand() == EnumHand.MAIN_HAND && player.getHeldItemOffhand().isEmpty())
{
GLHelper.renderParchmentFirstPerson(f1, f5, f, ev.getItemStack());
} else
{
EnumHandSide enumhandside = ev.getHand() == EnumHand.MAIN_HAND ? player.getPrimaryHand()
: player.getPrimaryHand().opposite();
GLHelper.renderParchmentFirstPersonSide(f5, enumhandside, f, ev.getItemStack());
}
GlStateManager.popAttrib();
GlStateManager.popMatrix();
ev.setCanceled(true);
}
}
ClientEvents.java 文件源码
java
阅读 27
收藏 0
点赞 0
评论 0
项目:ArcaneMagic
作者:
评论列表
文章目录