public override void Parse(GameBitBuffer buffer)
 {
     Field0 = new RequiredMessageHeader();
     Field0.Parse(buffer);
     ActorID = buffer.ReadInt(32);
     tNPCInteraction = new NPCInteraction[buffer.ReadInt(5)];
     for(int i = 0;i < _tNPCInteraction.Length;i++)
     {
         _tNPCInteraction[i] = new NPCInteraction();
         _tNPCInteraction[i].Parse(buffer);
     }
     Type = buffer.ReadInt(2);
 }
 public void FileRead(MpqFileStream stream, long offset)
 {
     stream.Position = offset + 0;
     Field0 = new RequiredMessageHeader();
     Field0.FileRead(stream, stream.Position);
     stream.Position = offset + 8;
     ActorID = stream.ReadValueS32();
     stream.Position = offset + 12;
     tNPCInteraction = new NPCInteraction[20];
     for(int loop12=0; loop12 < 20; loop12++ )
     {
         NPCInteraction temp12_tNPCInteraction;
         temp12_tNPCInteraction = new NPCInteraction();
         temp12_tNPCInteraction.FileRead(stream, stream.Position);
         _tNPCInteraction[loop12] = temp12_tNPCInteraction;
     }
     stream.Position = offset + 336;
     _Type = stream.ReadValueS32();
 }