public override void Parse(GameBitBuffer buffer)
 {
     HotBarButtons = new HotbarButtonData[6];
     for(int i = 0;i < _HotBarButtons.Length;i++)
     {
         _HotBarButtons[i] = new HotbarButtonData();
         _HotBarButtons[i].Parse(buffer);
     }
     Field1 = (byte)buffer.ReadInt(8);
     HotBarButton = new HotbarButtonData();
     HotBarButton.Parse(buffer);
     PlaytimeTotal = buffer.ReadInt(32);
     WaypointFlags = buffer.ReadInt(32);
     Field5 = new HirelingSavedData();
     Field5.Parse(buffer);
     Field6 = buffer.ReadInt(32);
     LearnedLore = new LearnedLore();
     LearnedLore.Parse(buffer);
     ActiveSkills = new ActiveSkillSavedData[6];
     for(int i = 0;i < _ActiveSkills.Length;i++)
     {
         _ActiveSkills[i] = new ActiveSkillSavedData();
         _ActiveSkills[i].Parse(buffer);
     }
     snoTraits = new int[3];
     for(int i = 0;i < _snoTraits.Length;i++) _snoTraits[i] = buffer.ReadInt(32);
     SavePointData = new SavePointData();
     SavePointData.Parse(buffer);
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     HotBarButtons = new HotbarButtonData[6];
     for(int loop12=0; loop12 < 6; loop12++ )
     {
         HotbarButtonData temp12_HotBarButtons;
         temp12_HotBarButtons = new HotbarButtonData();
         temp12_HotBarButtons.FileRead(stream, stream.Position);
         _HotBarButtons[loop12] = temp12_HotBarButtons;
     }
     stream.Position = offset + 84;
     Field1 = (byte)stream.ReadByte();
     stream.Position = offset + 72;
     HotBarButton = new HotbarButtonData();
     HotBarButton.FileRead(stream, stream.Position);
     stream.Position = offset + 88;
     PlaytimeTotal = stream.ReadValueS32();
     stream.Position = offset + 92;
     WaypointFlags = stream.ReadValueS32();
     stream.Position = offset + 96;
     Field5 = new HirelingSavedData();
     Field5.FileRead(stream, stream.Position);
     stream.Position = offset + 248;
     Field6 = stream.ReadValueS32();
     stream.Position = offset + 252;
     LearnedLore = new LearnedLore();
     LearnedLore.FileRead(stream, stream.Position);
     stream.Position = offset + 2340;
     ActiveSkills = new ActiveSkillSavedData[6];
     for(int loop12=0; loop12 < 6; loop12++ )
     {
         ActiveSkillSavedData temp12_ActiveSkills;
         temp12_ActiveSkills = new ActiveSkillSavedData();
         temp12_ActiveSkills.FileRead(stream, stream.Position);
         _ActiveSkills[loop12] = temp12_ActiveSkills;
     }
     stream.Position = offset + 2388;
     snoTraits = new int[3];
     for(int loop12=0; loop12 < 3; loop12++ )
     {
         int temp12_snoTraits;
         temp12_snoTraits = stream.ReadValueS32();
         _snoTraits[loop12] = temp12_snoTraits;
     }
     stream.Position = offset + 2400;
     SavePointData = new SavePointData();
     SavePointData.FileRead(stream, stream.Position);
 }