@Override @SideOnly(Side.CLIENT) public ModelBiped getArmorModel( EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) { ModelBackBokken armorModel = null; if (itemStack != null) { if (itemStack.getItem() instanceof ItemArmourKatana) { int type = ((ItemArmor) itemStack.getItem()).armorType; if (type == 1) { armorModel = new ModelBackBokken(); DataWatcher dw = entityLiving.getDataWatcher(); armorModel.animationID = dw.getWatchableObjectString(20); armorModel.animationlastID = dw.getWatchableObjectString(26); armorModel.animationTick = dw.getWatchableObjectFloat(25); } } } if (entityLiving.getHeldItem() != null) { // armorModel.blade.isHidden = true; // armorModel.blade.isHidden = false; armorModel.handle.isHidden = entityLiving.getHeldItem().getItem() == NarutoItems.Katana; } else { // armorModel.blade.isHidden = false; armorModel.handle.isHidden = false; } if (armorModel != null) { armorModel.bipedBody.showModel = armorSlot == 1; armorModel.isSneak = entityLiving.isSneaking(); armorModel.isRiding = entityLiving.isRiding(); armorModel.isChild = entityLiving.isChild(); armorModel.heldItemRight = entityLiving.getEquipmentInSlot(0) != null ? 1 : 0; armorModel.isSprinting = entityLiving.isSprinting(); if (entityLiving instanceof EntityPlayer) { EntityPlayer entityPlayer = (EntityPlayer) entityLiving; if (itemStack != null && entityPlayer.getItemInUseCount() > 0) { EnumAction enumaction = itemStack.getItemUseAction(); if (enumaction == EnumAction.block) { armorModel.heldItemRight = 3; } else if (enumaction == EnumAction.bow) { armorModel.aimedBow = true; } else if (enumaction == NarutoItems.Throw) { if (FMLClientHandler.instance().getClient().thePlayer == entityPlayer) { armorModel.isClientThrowing = true; } else { armorModel.isThrowing = true; } } } } } return armorModel; }