private static void read_map_corporation(XmlReader Input_XmlReader, Map_Info mapInfo) { if (Input_XmlReader.MoveToAttribute("id")) { try { long corpid = Convert.ToInt64(Input_XmlReader.Value.Replace("COR", "").Replace("P", "")); string type = String.Empty; string primary_name = String.Empty; List<string> alternate_names = new List<string>(); while (Input_XmlReader.Read()) { if ((Input_XmlReader.NodeType == XmlNodeType.EndElement) && (Input_XmlReader.Name == "map:corporation")) { if ((corpid > 0) && (primary_name.Length > 0)) { Map_Corporation thisCorp = mapInfo.New_Corporation(corpid, primary_name); foreach (string altName in alternate_names) thisCorp.Add_Alt_Name(altName); } return; } if ((Input_XmlReader.NodeType == XmlNodeType.Element) && (Input_XmlReader.Name == "map:corpname") && (!Input_XmlReader.IsEmptyElement)) { if (Input_XmlReader.MoveToAttribute("type")) type = Input_XmlReader.Value; else type = String.Empty; Input_XmlReader.Read(); if (Input_XmlReader.NodeType == XmlNodeType.Text) { if ((type.Length == 0) || (type == "primary")) primary_name = Input_XmlReader.Value; else alternate_names.Add(Input_XmlReader.Value); } } } } catch { } } }