public void FileRead(MpqFileStream stream, long offset) { stream.Position = offset + 0; Field0 = stream.ReadString(128); stream.Position = offset + 128; serSOAs = new SerializeData(); serSOAs.FileRead(stream, stream.Position); stream.Position = offset + 136; //still checking variablearrays SOAs = new List<SubObjectAppearance>(); for(int i = 0; i < (int)(serSOAs.Field1 / 248); i++) { stream.Position = serSOAs.Field0 + 16 + (248*i) ; SubObjectAppearance temp12_SOAs; temp12_SOAs = new SubObjectAppearance(); temp12_SOAs.FileRead(stream, stream.Position); _SOAs.Add(temp12_SOAs); } }