private static void LoadUnitsFromNodes(XmlNodeList nodes) { if (nodes == null) { return; } foreach (XmlNode node in nodes) { string passive = GetXmlAttribute(node, "Ability"); string ablName = GetXmlAttribute(node, "ActiveAbl"); ActiveAbl uAbility = new ActiveAbl(); PassiveAbl uPassive = new PassiveAbl(); if (passive != "none") { foreach (var t in GamePassiveAbl) { if (t.Name != passive) { continue; } uPassive = t; break; } } if (ablName != "") { foreach (var t in GameActiveAbl) { if (t.Name != ablName) { continue; } uAbility = t; break; } } Unit u = new Unit(GetXmlAttribute(node, "Type"), uPassive, uAbility, GetXmlAttributeAsInt(node, "Health"), GetXmlAttributeAsInt(node, "Attack"), GetXmlAttributeAsInt(node, "Defense"), GetXmlAttributeAsInt(node, "MinDamage"), GetXmlAttributeAsInt(node, "MaxDamage"), GetXmlAttributeAsDouble(node, "Initiative"), GetXmlAttribute(node, "ImageName")); GameUnits.Add(u); } }
private static void LoadPassiveAbilitiesFromNodes(XmlNodeList nodes) { if (nodes == null) { return; } foreach (XmlNode node in nodes) { PassiveAbl gameItem = new PassiveAbl(GetXmlAttribute(node, "Name"), GetXmlAttributeAsBool(node, "Shooter"), GetXmlAttributeAsBool(node, "AccurateShot"), GetXmlAttributeAsBool(node, "Undead"), GetXmlAttributeAsBool(node, "NoResistance"), GetXmlAttributeAsBool(node, "GreatCleave"), GetXmlAttributeAsBool(node, "Reflection")); GamePassiveAbl.Add(gameItem); } }