From 210a57c4c07733edb31733a1c81a53b01fb6eb7a Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sat, 17 Sep 2016 01:10:49 +0200 Subject: FULLPIPE: Implement inventory saving --- engines/fullpipe/gameloader.cpp | 2 +- engines/fullpipe/inventory.cpp | 10 ++++++++-- engines/fullpipe/inventory.h | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) (limited to 'engines/fullpipe') diff --git a/engines/fullpipe/gameloader.cpp b/engines/fullpipe/gameloader.cpp index 7a862eec19..83da25dbf3 100644 --- a/engines/fullpipe/gameloader.cpp +++ b/engines/fullpipe/gameloader.cpp @@ -659,7 +659,7 @@ void GameLoader::writeSavegame(Scene *sc, const char *fname) { v->_prevVarObj = prv; } - getGameLoaderInventory()->writePartial(saveFile); + getGameLoaderInventory()->savePartial(saveFile); saveFile->writeUint32LE(_sc2array.size()); diff --git a/engines/fullpipe/inventory.cpp b/engines/fullpipe/inventory.cpp index 10a584782b..335635c6e8 100644 --- a/engines/fullpipe/inventory.cpp +++ b/engines/fullpipe/inventory.cpp @@ -106,8 +106,14 @@ bool Inventory2::loadPartial(MfcArchive &file) { // Inventory2_SerializePartiall return true; } -bool Inventory2::writePartial(Common::WriteStream *file) { - warning("STUB: nventory2::writePartial()"); +bool Inventory2::savePartial(Common::WriteStream *saveFile) { + saveFile->writeUint32LE(_inventoryItems.size()); + + for (uint i = 0; i < _inventoryItems.size(); i++) { + saveFile->writeUint16LE(_inventoryItems[i]->itemId); + saveFile->writeUint16LE(_inventoryItems[i]->count); + } + return true; } diff --git a/engines/fullpipe/inventory.h b/engines/fullpipe/inventory.h index 6f6e349eea..e619f7d0e1 100644 --- a/engines/fullpipe/inventory.h +++ b/engines/fullpipe/inventory.h @@ -101,7 +101,7 @@ class Inventory2 : public Inventory { virtual ~Inventory2(); bool loadPartial(MfcArchive &file); - bool writePartial(Common::WriteStream *file); + bool savePartial(Common::WriteStream *file); void addItem(int itemId, int count); void addItem2(StaticANIObject *obj); void removeItem(int itemId, int count); -- cgit v1.2.3