public override void ReadData(ESPReader reader, long dataEnd) { while (reader.BaseStream.Position < dataEnd) { string subTag = reader.PeekTag(); switch (subTag) { case "EDID": if (EditorID == null) { EditorID = new SimpleSubrecord <String>(); } EditorID.ReadBinary(reader); break; case "OBND": if (ObjectBounds == null) { ObjectBounds = new ObjectBounds(); } ObjectBounds.ReadBinary(reader); break; case "FULL": if (Name == null) { Name = new SimpleSubrecord <String>(); } Name.ReadBinary(reader); break; case "MODL": if (Model == null) { Model = new Model(); } Model.ReadBinary(reader); break; case "SCRI": if (Script == null) { Script = new RecordReference(); } Script.ReadBinary(reader); break; case "DEST": if (Destructable == null) { Destructable = new Destructable(); } Destructable.ReadBinary(reader); break; case "SNAM": if (OpenSound == null) { OpenSound = new RecordReference(); } OpenSound.ReadBinary(reader); break; case "ANAM": if (CloseSound == null) { CloseSound = new RecordReference(); } CloseSound.ReadBinary(reader); break; case "BNAM": if (LoopingSound == null) { LoopingSound = new RecordReference(); } LoopingSound.ReadBinary(reader); break; case "FNAM": if (DoorFlags == null) { DoorFlags = new SimpleSubrecord <DoorFlags>(); } DoorFlags.ReadBinary(reader); break; default: throw new Exception(); } } }
public override void ReadData(ESPReader reader, long dataEnd) { while (reader.BaseStream.Position < dataEnd) { string subTag = reader.PeekTag(); switch (subTag) { case "EDID": if (EditorID == null) { EditorID = new SimpleSubrecord <String>(); } EditorID.ReadBinary(reader); break; case "OBND": if (ObjectBounds == null) { ObjectBounds = new ObjectBounds(); } ObjectBounds.ReadBinary(reader); break; case "FULL": if (Name == null) { Name = new SimpleSubrecord <String>(); } Name.ReadBinary(reader); break; case "MODL": if (Model == null) { Model = new Model(); } Model.ReadBinary(reader); break; case "SCRI": if (Script == null) { Script = new RecordReference(); } Script.ReadBinary(reader); break; case "CNTO": if (Contents == null) { Contents = new List <InventoryItem>(); } InventoryItem tempCNTO = new InventoryItem(); tempCNTO.ReadBinary(reader); Contents.Add(tempCNTO); break; case "DEST": if (Destructable == null) { Destructable = new Destructable(); } Destructable.ReadBinary(reader); break; case "DATA": if (Data == null) { Data = new ContainerData(); } Data.ReadBinary(reader); break; case "SNAM": if (OpenSound == null) { OpenSound = new RecordReference(); } OpenSound.ReadBinary(reader); break; case "QNAM": if (CloseSound == null) { CloseSound = new RecordReference(); } CloseSound.ReadBinary(reader); break; case "RNAM": if (Random_LoopingSound == null) { Random_LoopingSound = new RecordReference(); } Random_LoopingSound.ReadBinary(reader); break; default: throw new Exception(); } } }