aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine/savegame.h
AgeCommit message (Collapse)Author
2015-04-26SCI: implement delayed restore via ScummVM menuMartin Kiewitz
will delay restoring a saved game until the next kGetEvent or kWait also implement aborting playback for kPortrait and kShowMovie
2015-02-15SCI: Use sound resource priority by default for songsWillem Jan Palenstijn
SCI1 sound resources can have an embedded priority. We now use that by default, unless an explicit DoSound/SetPriority call overrides it. Thanks waltervn. This fixes relative priority of songs in at least PQ3 room 29. Also increase savegame version to 33.
2015-02-14SCI: Register and save playBed option to PlaySoundWillem Jan Palenstijn
The playBed option is not handled yet, only stored. This increases the savegame format version.
2014-02-18SCI: Make GPL headers consistent in themselves.Johannes Schickel
2013-09-21SCI: sfx/music priority int16 fixes bug #3615038m-kiewitz
it seems that sound system up till SCI0_LATE uses int16, afterwards it seems they changed to byte main music object (conMusic) in Laura Bow 1 uses -1 as priority. This was truncated to 255 till now, which resulted in many sound effects not getting played, because those used priority 0
2011-06-20ALL: Remove trailing whitespacesMax Horn
This tries to make our code a bit more compliant with our code formatting conventions. For future use, this is the command I used: git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-02ENGINES: Change 2nd param of Engine::saveGameState to Common::StringMax Horn
2011-05-12GIT: Clean up: Suppress SVN tags, now uselessstrangerke
2010-12-24SCI: Now saving/loading the list of synonyms (set by kSetSynonyms), like ↵Filippos Karapetis
SSCI did This is a more correct way of fixing bug #3037618 than in rev #55017. - Changed replaceant/replacement to be uint16's (they're very small positive values, usually smaller than 4096) - Changed SynonymList to an Array (so that it can be saved/loaded) - Removed the PQ2 script patch to Game::replay() - Added savegame history svn-id: r55032
2010-12-07SCI: Bumped up the save game version for rev #54805Filippos Karapetis
Initially, I thought that older ScummVM versions will work with these saved games. However, they will probably crash when trying to load saved games after rev #54805, as the heap is reset when loading, and the system strings segment is no longer initialized (thanks wjp). svn-id: r54809
2010-11-08SCI: Some changes regarding the string heap in saved gamesFilippos Karapetis
- Maintain the state of the string heap space in saved games - Merged SegManager::reconstructScripts() inside SegManager::saveLoadWithSerializer() - Disabled a now unnecessary script patch for the cipher puzzle in Castle of Dr. Brain, and performed some cleanup for another disabled patch - Removed direct access to the _baseObj variable of objects svn-id: r54133
2010-11-01SCI: fixing lfMartin Kiewitz
(stupid msvc) svn-id: r54014
2010-11-01SCI: saving/restoring script created windows nowMartin Kiewitz
fixes "GfxPorts::kernelSetActive" error based on code by [md5] svn-id: r54012
2010-10-31SCI: Play time related changesFilippos Karapetis
- Added support for savegame play time - Removed obsolete variables for calculating the play time (EngineState::gameStartTime and Console::_enterTime) - Renamed some variables to camelCase svn-id: r53974
2010-09-24SCI: save/restore intensity of sysPaletteMartin Kiewitz
fixes bug #3072868 should be save for backporting svn-id: r52875
2010-07-23SCI: Dropped support for the very old savegame versions 12 and 13 ↵Filippos Karapetis
(hopefully, the last ones to be dropped) svn-id: r51197
2010-07-23SCI: Now saving the kPalVary state inside savegamesFilippos Karapetis
svn-id: r51194
2010-07-07SCI: Dropped support for the very old saved game versions 9 - 11. Rationale: ↵Filippos Karapetis
a lot has changed since then, we're still not stable, and this helps clean up the code, thus we're still in a position to drop support for old saved games svn-id: r50738
2010-06-22Stop saving the buffer, script and heap sizes of each script in saved gamesFilippos Karapetis
svn-id: r50137
2010-06-15- Swapped the return value of gamestate_save (false = failed, true = succeeded)Filippos Karapetis
- Removed some duplicate code inside Console::cmdSaveGame() svn-id: r49688
2010-06-15Added a signature of the game itself inside saved games (the size of script ↵Filippos Karapetis
0, as well as the offset of the game object, which are unique for each game), to prevent users from loading saved games across different versions of the same game. In the cases where we can't load a saved game, throw a nice GUI dialog instead of a console warning svn-id: r49687
2010-06-13The offset of script local variables is now calculated when the script is ↵Filippos Karapetis
loaded, thus we no longer need to save it. Merged scriptInitialiseLocals() with scriptInitialiseLocalsZero() svn-id: r49640
2010-05-30SCI: Script exports and synonyms are now initialized when a script is ↵Filippos Karapetis
loaded. Removed a sanity check inside script_instantiate_sci0 for a bug which no longer exists svn-id: r49336
2010-05-19Updated the save game format for the changes in #49093Filippos Karapetis
svn-id: r49094
2010-01-31Removed duplicate code. Some cleanupFilippos Karapetis
svn-id: r47735
2010-01-30Add support for saving/loading Arrays/Strings in SCI32. It's possible to ↵Matthew Hoops
save a game in GK1 now via the console, but not load (yet). svn-id: r47696
2010-01-01SCI: fixing saved game compatibilityMartin Kiewitz
svn-id: r46827
2010-01-01SCI/new music code:Filippos Karapetis
- Resolved a deadlock with the mixer, and added appropriate mutexes (a result of the fact that SCI mixes MIDI and digital audio in the same list) - Fixed sound playing when loading games, by properly resetting the MIDI driver - Reverted savegame version to 14 - the changes in versions 15 and 16 don't have any effect on the currently enabled old music code, and the new music code is disabled by default, and is still prone to changes - Now saving/loading signal, loop and hold for each sound, as well as reverb - Added stub code for setting reverb and channel hold - The signal, loop and hold values of each song are cached, like in SSCI and like what happens in Greg's SCI implementation. This allows a clear separation of the engine code from the rest of the engine. Reverted commits 46792 and 46797 - Removed duplicate song list accessing code - Song cues are now updated in kAnimate for SCI0, like the old music code does, to compensate for the fact that SCI0 didn't poll for music changes via cmdUpdateCues, like what SCI01 and newer do - Cleanup svn-id: r46812
2009-12-31SCI/new music code: The loop selector for each music score is no longer ↵Filippos Karapetis
cached, but read directly from the sound object svn-id: r46792
2009-12-27SCI/new music code:Filippos Karapetis
- Implemented sound muting - Now saving/loading the master music volume svn-id: r46643
2009-12-25SCI/new music code: Some initial code for saving/loading the sound stateFilippos Karapetis
svn-id: r46549
2009-12-08SCI: Saving picPort now (fixes loading saved games in castle of dr. brain)Martin Kiewitz
svn-id: r46292
2009-10-11Implemented some advanced savegame functionality - loading and deleting ↵Filippos Karapetis
savegames from the GMM is now possible, and new saved games will also have thumbnails. Saving from the GMM creates corrupted saved games, so it has been disabled for now svn-id: r44930
2009-09-25SCI: Remove EngineState::game_version, it was only used for saving anyway. ↵Max Horn
Also remove syncCStr() svn-id: r44358
2009-09-21SCI: Replace IntMapper Script::_objIndices and Common::Array ↵Max Horn
Script::_objects by a HashMap -- goodbye, class IntMapper svn-id: r44240
2009-09-06SCI: Replace "IntMapper *id_seg_map" in SegManager with a ↵Max Horn
Common::HashMap<int,int> This simplifies the code considerably. Also changed the savegame format accordingly, which required me to bump the format version to 10. Old saves should still load fine. svn-id: r43986
2009-08-25- Simplified the parameters of some functionsFilippos Karapetis
- Replaced some EngineState parameters - The SCI version is now obtained from the resource manager or the segment manager, thereby simplifying several functions - Plugged 2 leaks in the fallback detector - Renamed the segment manager and resource manager to "segmentManager" and "resourceManager" in all places, for consistency svn-id: r43722
2009-05-14- Replaced SCI_VERSION_FTU_LOFS_ABSOLUTE with the GF_SCI1_LOFSABSOLUTE game flagFilippos Karapetis
- Moved the version defines outside of versions.h svn-id: r40559
2009-03-12EngineState is a struct, not a classFilippos Karapetis
svn-id: r39355
2009-03-12SCI: Moved savegame specific stuff from state.h to a new header savegame.hMax Horn
svn-id: r39351