public virtual string ToXML()
{
StringBuilder output = new StringBuilder("");
XmlWriter xmlw = XmlWriter.Create(output);
xmlw.WriteStartDocument();
xmlw.WriteStartElement("GameMap");
xmlw.WriteAttributeString("width", _width.ToString());
xmlw.WriteAttributeString("height", _height.ToString());
xmlw.WriteAttributeString("name", _name);
xmlw.WriteAttributeString("level", _level.ToString());
xmlw.WriteAttributeString("dungeon", _dungeonname);
xmlw.WriteAttributeString("light", _light.ToString());
xmlw.WriteAttributeString("floor", _floorFile);
xmlw.WriteAttributeString("music", _music);
xmlw.WriteAttributeString("wall", _wallFile);
xmlw.WriteAttributeString("id", _id.ToString());
foreach (List<FloorTile> ltiles in _tiles)
{
foreach (FloorTile tile in ltiles)
{
if (tile.overlay.Count > 0)
tile.Save(xmlw);
}
}
xmlw.WriteEndElement();
xmlw.WriteEndDocument();
xmlw.Close();
string result = output.ToString();
result = result.Trim();
result = result.Replace(" ", " ");
result = result.Replace(Environment.NewLine, " ");
result = result.Replace('\0', ' ');
return result;
}