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 LoadActiveAbilitiesFromNodes(XmlNodeList nodes) { if (nodes == null) { return; } foreach (XmlNode node in nodes) { ActiveAbl gameItem = new ActiveAbl(GetXmlAttributeAsDouble(node, "Defense"), GetXmlAttributeAsDouble(node, "Attack"), GetXmlAttributeAsDouble(node, "Initiative"), GetXmlAttributeAsDouble(node, "Damage"), GetXmlAttributeAsDouble(node, "Hp"), GetXmlAttributeAsDouble(node, "Heal"), GetXmlAttributeAsBool(node, "Friendly"), GetXmlAttributeAsBool(node, "Aoe"), GetXmlAttribute(node, "Name")); GameActiveAbl.Add(gameItem); } }