public override void WriteXML(XElement ele, ElderScrollsPlugin master) { XElement subEle; if (Header != null) { ele.TryPathTo("Header", true, out subEle); Header.WriteXML(subEle, master); } if (EffectData != null) { ele.TryPathTo("EffectData", true, out subEle); EffectData.WriteXML(subEle, master); } if (Conditions != null) { ele.TryPathTo("Conditions", true, out subEle); foreach (var entry in Conditions) { XElement newEle = new XElement("Condition"); entry.WriteXML(newEle, master); subEle.Add(newEle); } } if (EntryPointFunctionType != null) { ele.TryPathTo("EntryPoint/FunctionType", true, out subEle); EntryPointFunctionType.WriteXML(subEle, master); } if (EntryPointFunctionData != null) { ele.TryPathTo("EntryPoint/FunctionData", true, out subEle); EntryPointFunctionData.WriteXML(subEle, master); } if (ButtonLabel != null) { ele.TryPathTo("ButtonLabel", true, out subEle); ButtonLabel.WriteXML(subEle, master); } if (RunImmediately != null) { ele.TryPathTo("RunImmediately", true, out subEle); RunImmediately.WriteXML(subEle, master); } if (Script != null) { ele.TryPathTo("Script", true, out subEle); Script.WriteXML(subEle, master); } if (EndMarker != null) { ele.TryPathTo("EndMarker", true, out subEle); EndMarker.WriteXML(subEle, master); } }