diff --git a/Save/save b/Save/save
index 23f1fec..dfcb126 100644
--- a/Save/save
+++ b/Save/save
@@ -1,6 +1,7 @@
+
- Allanis
- 150
- 150
-
+ Allanis
+ 572
+ 364
+
diff --git a/Win32/Unuk/LibUnuk/LibUnuk.vcproj b/Win32/Unuk/LibUnuk/LibUnuk.vcproj
index 075a7c6..f5e4fc9 100644
--- a/Win32/Unuk/LibUnuk/LibUnuk.vcproj
+++ b/Win32/Unuk/LibUnuk/LibUnuk.vcproj
@@ -153,6 +153,14 @@
RelativePath="..\..\..\src\libUnuk\ApplySurface.h"
>
+
+
+
+
@@ -277,6 +285,10 @@
RelativePath="..\..\..\src\libUnuk\MemManager.h"
>
+
+
diff --git a/src/Unuk/Game.cpp b/src/Unuk/Game.cpp
index 9f86787..4ce5ad0 100644
--- a/src/Unuk/Game.cpp
+++ b/src/Unuk/Game.cpp
@@ -147,6 +147,7 @@ void Game::HandleInput(void) {
_ingameMenu.SetStatus(false);
break;
case ingameMenuSaveGame:
+ SaveSavegame();
break;
case ingameMenuLoadGame:
break;
@@ -247,8 +248,41 @@ void Game::LoadSavegame(const string savegameIDArg) {
void Game::SaveSavegame(void) {
string saveFilename = "../Save/" + _saveGameID;
- ofstream saveFile(saveFilename.c_str());
- assert(saveFile.is_open());
+ TiXmlDocument doc;
- // Write stuff.
+ TiXmlDeclaration* decl = new TiXmlDeclaration("1.0", "", "");
+
+ TiXmlElement* saveElement = new TiXmlElement("save");
+
+ TiXmlElement* nameElement = new TiXmlElement("name");
+ TiXmlText* nameText = new TiXmlText("Allanis"); //TODO: replace with _player->GetName() when it works. --konom
+ nameElement->LinkEndChild(nameText);
+
+ char xString[16];
+ itoa(_player->GetX(), xString, 10);
+
+ TiXmlElement* xElement = new TiXmlElement("x");
+ TiXmlText* xText = new TiXmlText(xString);
+ xElement->LinkEndChild(xText);
+
+ char yString[16];
+ itoa(_player->GetY(), yString, 10);
+
+ TiXmlElement* yElement = new TiXmlElement("y");
+ TiXmlText* yText = new TiXmlText(yString);
+ yElement->LinkEndChild(yText);
+
+ TiXmlElement* mapElement = new TiXmlElement("map");
+ TiXmlText* mapText = new TiXmlText("map"); //TODO: replace with actual map name.
+ mapElement->LinkEndChild(mapText);
+
+ saveElement->LinkEndChild(nameElement);
+ saveElement->LinkEndChild(xElement);
+ saveElement->LinkEndChild(yElement);
+ saveElement->LinkEndChild(mapElement);
+
+ doc.LinkEndChild(decl);
+ doc.LinkEndChild(saveElement);
+
+ doc.SaveFile(saveFilename.c_str());
}