private object SaveGameFilesProcess(object parameter)
{
WriteConfigFile(Path.Combine(OUTPUT_DIRECTORY, DATA_OUTPUT_DIRECTORY));
SaveUserDataFile();
StringWriter sw = new StringWriter();
XmlTextWriter writer = new XmlTextWriter(sw);
writer.Formatting = Formatting.Indented;
writer.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"" + Encoding.Default.WebName + "\"");
writer.WriteComment("DO NOT EDIT THIS FILE. It is automatically generated by the AGS Editor, changing it manually could break your game");
writer.WriteStartElement(XML_ROOT_NODE_NAME);
writer.WriteAttributeString(XML_ATTRIBUTE_VERSION, LATEST_XML_VERSION);
writer.WriteAttributeString(XML_ATTRIBUTE_VERSION_INDEX, LATEST_XML_VERSION_INDEX.ToString());
writer.WriteAttributeString(XML_ATTRIBUTE_EDITOR_VERSION, AGS.Types.Version.AGS_EDITOR_FRIENDLY_VERSION);
_game.SavedXmlVersion = LATEST_XML_VERSION;
_game.SavedXmlVersionIndex = LATEST_XML_VERSION_INDEX;
_game.ToXml(writer);
Factory.Events.OnSavingGame(writer);
writer.WriteEndElement();
writer.Flush();
BackupCurrentGameFile();
string gameXml = sw.ToString();
writer.Close();
if (WriteMainGameFile(gameXml))
{
Factory.NativeProxy.SaveGame(_game);
}
else
{
return false;
}
DeleteObsoleteFilesFrom272();
_game.FilesAddedOrRemoved = false;
return true;
}