/// <summary> /// use information about the provided class to create an XML node for this object /// </summary> /// <param name="iModel"></param> /// <returns></returns> public static XmlNode PackXmlNode(InfinityModel iModel) { // create an xml node for this object XmlNode xnode = new XmlNode(iModel.GetType().ToString()); //attach TroopType description xnode.Attach(new XmlNode(nameof(iModel.TroopType), iModel.TroopType.ToString())); //attach all contributions foreach (InfinityOrder.Types t in iModel.OrderContribution) { xnode.Attach(new XmlNode(nameof(iModel.OrderContribution), t.ToString())); } //attach all factions foreach (FactionTypes f in iModel.UsableFactions) { xnode.Attach(new XmlNode(nameof(iModel.UsableFactions), f.ToString())); } return(xnode); }
/// <summary> /// Constructor to be used by infinity classes only, since models are the primary order generators /// </summary> /// <param name="contributor"></param> /// <param name="T"></param> protected InfinityOrder(InfinityModel contributor, Types T) : base(true) { this.Contributor = contributor; this.OrderType = T; }