public override void WriteDataXML(XElement ele, ElderScrollsPlugin master) { XElement subEle; if (EditorID != null) { ele.TryPathTo("EditorID", true, out subEle); EditorID.WriteXML(subEle, master); } if (ImageSpaceModifierSunrise != null) { ele.TryPathTo("ImageSpaceModifier/Sunrise", true, out subEle); ImageSpaceModifierSunrise.WriteXML(subEle, master); } if (ImageSpaceModifierDay != null) { ele.TryPathTo("ImageSpaceModifier/Day", true, out subEle); ImageSpaceModifierDay.WriteXML(subEle, master); } if (ImageSpaceModifierSunset != null) { ele.TryPathTo("ImageSpaceModifier/Sunset", true, out subEle); ImageSpaceModifierSunset.WriteXML(subEle, master); } if (ImageSpaceModifierNight != null) { ele.TryPathTo("ImageSpaceModifier/Night", true, out subEle); ImageSpaceModifierNight.WriteXML(subEle, master); } if (ImageSpaceModifierHighNoon != null) { ele.TryPathTo("ImageSpaceModifier/HighNoon", true, out subEle); ImageSpaceModifierHighNoon.WriteXML(subEle, master); } if (ImageSpaceModifierMidnight != null) { ele.TryPathTo("ImageSpaceModifier/Midnight", true, out subEle); ImageSpaceModifierMidnight.WriteXML(subEle, master); } if (CloudTextureLayer0 != null) { ele.TryPathTo("CloudTexture/Layer0", true, out subEle); CloudTextureLayer0.WriteXML(subEle, master); } if (CloudTextureLayer1 != null) { ele.TryPathTo("CloudTexture/Layer1", true, out subEle); CloudTextureLayer1.WriteXML(subEle, master); } if (CloudTextureLayer2 != null) { ele.TryPathTo("CloudTexture/Layer2", true, out subEle); CloudTextureLayer2.WriteXML(subEle, master); } if (CloudTextureLayer3 != null) { ele.TryPathTo("CloudTexture/Layer3", true, out subEle); CloudTextureLayer3.WriteXML(subEle, master); } if (Model != null) { ele.TryPathTo("Model", true, out subEle); Model.WriteXML(subEle, master); } if (Unknown != null) { ele.TryPathTo("Unknown", true, out subEle); Unknown.WriteXML(subEle, master); } if (CloudLayerSpeed != null) { ele.TryPathTo("CloudLayerSpeed", true, out subEle); CloudLayerSpeed.WriteXML(subEle, master); } if (CloudLayerColors != null) { ele.TryPathTo("CloudLayerColors", true, out subEle); CloudLayerColors.WriteXML(subEle, master); } if (EnvironmentalColors != null) { ele.TryPathTo("EnvironmentalColors", true, out subEle); EnvironmentalColors.WriteXML(subEle, master); } if (WeatherFogDistance != null) { ele.TryPathTo("WeatherFogDistance", true, out subEle); WeatherFogDistance.WriteXML(subEle, master); } if (Unused != null) { ele.TryPathTo("Unused", true, out subEle); Unused.WriteXML(subEle, master); } if (Data != null) { ele.TryPathTo("Data", true, out subEle); Data.WriteXML(subEle, master); } if (Sounds != null) { ele.TryPathTo("Sounds", true, out subEle); List <string> xmlNames = new List <string> { "Sound" }; int i = 0; foreach (var entry in Sounds) { i = i % xmlNames.Count(); XElement newEle = new XElement(xmlNames[i]); entry.WriteXML(newEle, master); subEle.Add(newEle); i++; } } }