diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-06-07 13:23:26 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-06-07 13:23:26 (GMT) |
| commit | 61ed6e0276d580515d0acf5ddb96b1db95b9b191 (patch) | |
| tree | 65d9ad219e0b0f6bb1a81813c1888888f2cbd7a4 /src/game/GameController.cpp | |
| parent | 2e48fc6115ebe0d294a2c7ff7fe8774217676f44 (diff) | |
| download | powder-61ed6e0276d580515d0acf5ddb96b1db95b9b191.zip powder-61ed6e0276d580515d0acf5ddb96b1db95b9b191.tar.gz | |
Rename Save class to SaveInfo, introduce SaveFile for hanlding of local data (stamps and local saves). Rename Stamps browser to LocalBrowser, ready for sharing code with the local save browser
Diffstat (limited to 'src/game/GameController.cpp')
| -rw-r--r-- | src/game/GameController.cpp | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp index dff6c18..01cf1de 100644 --- a/src/game/GameController.cpp +++ b/src/game/GameController.cpp @@ -4,7 +4,7 @@ #include "Config.h" #include "GameController.h" #include "GameModel.h" -#include "search/Save.h" +#include "client/SaveInfo.h" #include "search/SearchController.h" #include "render/RenderController.h" #include "login/LoginController.h" @@ -37,7 +37,7 @@ public: { try { - cc->gameModel->SetSave(new Save(*(cc->search->GetLoadedSave()))); + cc->gameModel->SetSave(new SaveInfo(*(cc->search->GetLoadedSave()))); } catch(GameModelException & ex) { @@ -79,7 +79,7 @@ public: { if(cc->ssave->GetSaveUploaded()) { - cc->gameModel->SetSave(new Save(*(cc->ssave->GetSave()))); + cc->gameModel->SetSave(new SaveInfo(*(cc->ssave->GetSave()))); } //cc->gameModel->SetUser(cc->loginWindow->GetUser()); @@ -93,7 +93,7 @@ public: TagsCallback(GameController * cc_) { cc = cc_; } virtual void ControllerExit() { - cc->gameModel->SetSave(new Save(*(cc->tagsWindow->GetSave()))); + cc->gameModel->SetSave(new SaveInfo(*(cc->tagsWindow->GetSave()))); } }; @@ -104,9 +104,9 @@ public: StampsCallback(GameController * cc_) { cc = cc_; } virtual void ControllerExit() { - if(cc->stamps->GetStamp()) + if(cc->localBrowser->GetSave()) { - cc->gameModel->SetStamp(cc->stamps->GetStamp()); + cc->gameModel->SetStamp(cc->localBrowser->GetSave()->GetGameSave()); } else cc->gameModel->SetStamp(NULL); @@ -501,8 +501,8 @@ void GameController::OpenTags() void GameController::OpenStamps() { - stamps = new StampsController(new StampsCallback(this)); - ui::Engine::Ref().ShowWindow(stamps->GetView()); + localBrowser = new LocalBrowserController(new StampsCallback(this)); + ui::Engine::Ref().ShowWindow(localBrowser->GetView()); } void GameController::OpenOptions() @@ -529,25 +529,23 @@ void GameController::OpenSaveWindow() { if(gameModel->GetUser().ID) { - GameSave * tempSave = gameModel->GetSimulation()->Save(); - if(!tempSave) + GameSave * gameSave = gameModel->GetSimulation()->Save(); + if(!gameSave) { new ErrorMessage("Error", "Unable to build save."); } else { - int dataSize; - unsigned char * tempData = (unsigned char*)tempSave->Serialise(dataSize); if(gameModel->GetSave()) { - Save tempSave(*gameModel->GetSave()); - tempSave.SetData(tempData, dataSize); + SaveInfo tempSave(*gameModel->GetSave()); + tempSave.SetGameSave(gameSave); ssave = new SSaveController(new SSaveCallback(this), tempSave); } else { - Save tempSave(0, 0, 0, 0, gameModel->GetUser().Username, ""); - tempSave.SetData(tempData, dataSize); + SaveInfo tempSave(0, 0, 0, 0, gameModel->GetUser().Username, ""); + tempSave.SetGameSave(gameSave); ssave = new SSaveController(new SSaveCallback(this), tempSave); } ui::Engine::Ref().ShowWindow(ssave->GetView()); @@ -584,10 +582,9 @@ void GameController::ClearSim() void GameController::ReloadSim() { - if(gameModel->GetSave() && gameModel->GetSave()->GetData()) + if(gameModel->GetSave() && gameModel->GetSave()->GetGameSave()) { - GameSave * newSave = new GameSave((char*)gameModel->GetSave()->GetData(), gameModel->GetSave()->GetDataLength()); - gameModel->GetSimulation()->Load(newSave); + gameModel->GetSimulation()->Load(gameModel->GetSave()->GetGameSave()); } } |
