public override void WriteData(ESPWriter writer) { if (EditorID != null) { EditorID.WriteBinary(writer); } if (ObjectBounds != null) { ObjectBounds.WriteBinary(writer); } if (Name != null) { Name.WriteBinary(writer); } if (Model != null) { Model.WriteBinary(writer); } if (Effect != null) { Effect.WriteBinary(writer); } if (ImageSpaceModifier != null) { ImageSpaceModifier.WriteBinary(writer); } if (Data != null) { Data.WriteBinary(writer); } if (ImpactObject != null) { ImpactObject.WriteBinary(writer); } }
public override void WriteDataXML(XElement ele, ElderScrollsPlugin master) { XElement subEle; if (EditorID != null) { ele.TryPathTo("EditorID", true, out subEle); EditorID.WriteXML(subEle, master); } if (ObjectBounds != null) { ele.TryPathTo("ObjectBounds", true, out subEle); ObjectBounds.WriteXML(subEle, master); } if (Name != null) { ele.TryPathTo("Name", true, out subEle); Name.WriteXML(subEle, master); } if (Model != null) { ele.TryPathTo("Model", true, out subEle); Model.WriteXML(subEle, master); } if (Effect != null) { ele.TryPathTo("Effect", true, out subEle); Effect.WriteXML(subEle, master); } if (ImageSpaceModifier != null) { ele.TryPathTo("ImageSpaceModifier", true, out subEle); ImageSpaceModifier.WriteXML(subEle, master); } if (Data != null) { ele.TryPathTo("Data", true, out subEle); Data.WriteXML(subEle, master); } if (ImpactObject != null) { ele.TryPathTo("ImpactObject", true, out subEle); ImpactObject.WriteXML(subEle, master); } }
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 "EITM": if (Effect == null) { Effect = new RecordReference(); } Effect.ReadBinary(reader); break; case "MNAM": if (ImageSpaceModifier == null) { ImageSpaceModifier = new RecordReference(); } ImageSpaceModifier.ReadBinary(reader); break; case "DATA": if (Data == null) { Data = new ExplosionData(); } Data.ReadBinary(reader); break; case "INAM": if (ImpactObject == null) { ImpactObject = new RecordReference(); } ImpactObject.ReadBinary(reader); break; default: throw new Exception(); } } }
public override void ReadDataXML(XElement ele, ElderScrollsPlugin master) { XElement subEle; if (ele.TryPathTo("EditorID", false, out subEle)) { if (EditorID == null) { EditorID = new SimpleSubrecord <String>(); } EditorID.ReadXML(subEle, master); } if (ele.TryPathTo("ObjectBounds", false, out subEle)) { if (ObjectBounds == null) { ObjectBounds = new ObjectBounds(); } ObjectBounds.ReadXML(subEle, master); } if (ele.TryPathTo("Name", false, out subEle)) { if (Name == null) { Name = new SimpleSubrecord <String>(); } Name.ReadXML(subEle, master); } if (ele.TryPathTo("Model", false, out subEle)) { if (Model == null) { Model = new Model(); } Model.ReadXML(subEle, master); } if (ele.TryPathTo("Effect", false, out subEle)) { if (Effect == null) { Effect = new RecordReference(); } Effect.ReadXML(subEle, master); } if (ele.TryPathTo("ImageSpaceModifier", false, out subEle)) { if (ImageSpaceModifier == null) { ImageSpaceModifier = new RecordReference(); } ImageSpaceModifier.ReadXML(subEle, master); } if (ele.TryPathTo("Data", false, out subEle)) { if (Data == null) { Data = new ExplosionData(); } Data.ReadXML(subEle, master); } if (ele.TryPathTo("ImpactObject", false, out subEle)) { if (ImpactObject == null) { ImpactObject = new RecordReference(); } ImpactObject.ReadXML(subEle, master); } }