public ModelPlayerPony(ModelAdvancedPony in) {
   super(1, false);
   wrapped = in;
   this.bipedBody = in.bipedBody;
   this.bipedHead = in.bipedHead;
   this.bipedBodyWear = in.bipedHeadwear;
   this.bipedLeftArm = in.bipedLeftArm;
   this.bipedRightArm = in.bipedRightArm;
   this.bipedLeftLeg = in.bipedLeftLeg;
   this.bipedRightLeg = in.bipedRightLeg;
   this.boxList = in.boxList;
   super.setModelAttributes(in);
 }
 /**
  * Bend the models when the item in left hand is used And stop the right hand inappropriate
  * bending
  */
 @SubscribeEvent(priority = EventPriority.LOW)
 public void renderPlayerLeftItemUsage(RenderLivingEvent.Pre event) {
   if (event.entity instanceof EntityPlayer) {
     EntityPlayer entityPlayer = (EntityPlayer) event.entity;
     ItemStack offhand =
         ((InventoryPlayerBattle) entityPlayer.inventory).getCurrentOffhandWeapon();
     if (offhand != null && event.renderer instanceof RenderPlayer) {
       ModelPlayer renderer = ((RenderPlayer) event.renderer).getPlayerModel();
       renderer.heldItemLeft = 1;
       if (entityPlayer.getItemInUseCount() > 0 && entityPlayer.getItemInUse() == offhand) {
         EnumAction enumaction = offhand.getItemUseAction();
         if (enumaction == EnumAction.BLOCK) {
           renderer.heldItemLeft = 3;
         } else if (enumaction == EnumAction.BOW) {
           renderer.aimedBow = true;
         }
         ItemStack mainhand = entityPlayer.inventory.getCurrentItem();
         renderer.heldItemRight = mainhand != null ? 1 : 0;
       } else if (((IBattlePlayer) entityPlayer).isBlockingWithShield()) {
         renderer.heldItemLeft = 3;
       }
     }
   }
 }
 public void setModelAttributes(ModelBase model) {
   wrapped.setModelAttributes(model);
   super.setModelAttributes(model);
   this.swingProgress = wrapped.swingProgress = model.swingProgress;
 }