static XmlElement encodeRuntimeMap(XmlDocument doc, RuntimeMap rmap) { #if TODO XmlElement e = null; if (rmap != null) { e = doc.CreateElement("map"); e.SetAttribute("name", rmap.getName()); if (rmap.getTerrain() != null) { e.SetAttribute("terrain", rmap.getTerrain().getName()); } foreach (RuntimeMapLayer it in rmap.getMapLayers()) { e.AppendChild(encodeRuntimeMapLayer(doc, it)); } } return(e); #endif throw new NotImplementedException(); }
static RuntimeMap decodeRuntimeMap(XmlElement e, Project proj) { RuntimeMap map = null; if (e != null) { map = new RuntimeMap(); map.setName(e.GetAttribute("name")); map.setTerrain(proj.getTerrain(e.GetAttribute("terrain"))); XmlNodeList map_layers = e.GetElementsByTagName("maplayer"); foreach (XmlNode i in map_layers) { XmlElement e2 = (XmlElement)i; RuntimeMapLayer map_layer = decodeRuntimeMapLayer(e2, proj); if (map_layer != null) { map.getMapLayers().Add(map_layer); } } } return(map); }