// 从XML中载入效果信息 public void LoadEffectFromXML() { // 为Effect类以及全部子类初始化静态变量 Effect InitEffect = new Effect(); InitEffect.SetMainGameController(MainGameController); string filePath = Application.dataPath + "/Resources/Effect.xml"; EffectLoader NewEffectLoader = new EffectLoader(); if (File.Exists(filePath)) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(filePath); XmlNodeList node = xmlDoc.SelectSingleNode("Effect").ChildNodes; foreach (XmlElement EffectInfo in node) { Effect NewEffect = null; foreach (XmlElement EffectInfoItem in EffectInfo.ChildNodes) { if (EffectInfoItem.Name == "EffectType") { NewEffect = NewEffectLoader.GetNewEffectByType(EffectInfoItem.InnerText); } else if (EffectInfoItem.Name == "EffectSubInfo") { NewEffect.LoadInfoFromXML(EffectInfoItem); } } AddEffect(NewEffect); } } }