Commit Graph
39 Commits
Author SHA1 Message Date
antoniou79 7c2d841d3d LASTEXPRESS: Early support for demo
Demo launches but the init state needs more work
2023-04-29 13:08:27 +02:00
antoniou79 9ddd5b5f74 LASTEXPRESS: Differentiate saved games per target
Saved games still maintain the suffix blue.egg, red.egg, etc but the prefix depends on the current game target

Also support listing of saves, loading from launcher and removal
2023-04-29 13:08:27 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh f8881f661b LASTEXPRESS: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
Paul Gilbert 005561d305 COMMON: Increase Stream pos, seek, size from int32 to int64 2021-07-08 18:24:28 -07:00
Evgeny Grechnikov af580eaa85 LASTEXPRESS: save/load sound state
Warning: breaks compatibility with previous savefiles.
They were mostly broken anyway, locking any NPC who
waited for kActionEndSound when savefile was created.
2018-10-20 16:35:23 +03:00
Evgeny Grechnikov 54562554f9 LASTEXPRESS: better names in sound code
Refactoring, no changes in behaviour.
2018-10-18 00:38:01 +03:00
Evgeny Grechnikov f771fa40ad LASTEXPRESS: multiple fixes in NPC logic
Checked the logic against the original game
(to be precise, DOS English version from GOG, although I think
AI logic has no significant differences with other versions).
Fixed a *lot* of errors with varying visibility for the user.

Also, save+exit+load sometimes resulted in memory corruption like
((EntityParametersSSII*)(new EntityParametersIIII))->param8 = 0;
load operation did not restore the correct type of NPC logic context,
the default one was used (which also has the smallest sizeof).
Should be fixed now. Save+load is still unusable because it locks
everybody waiting for kActionEndSound (the sound state is not restored),
but, at least, it should not corrupt the memory. Hopefully.
2018-08-26 12:09:43 +02:00
Eugene Sandulenko 866baf1d9a LASTEXPRESS: Removing excess check 2015-11-27 22:34:26 +01:00
Johannes Schickel 3d4f409572 LASTEXPRESS: Make GPL headers consistent in themselves. 2014-02-18 02:39:35 +01:00
Littleboy 6ab8db638e LASTEXPRESS: Implement more savegame loading
- Rename existing function to load the last saved game
 - Remove loadgame debugger command
2012-08-27 23:30:23 -04:00
Littleboy ee8581b778 LASTEXPRESS: Cleanup savegame
- Check for valid stream in readValue/writeValue functions
 - Properly initialize/clear members
2012-08-27 21:49:43 -04:00
Littleboy bc4e10dabc LASTEXPRESS: Remove some unreachable code 2012-08-27 21:49:39 -04:00
Littleboy eb6c60cec0 LASTEXPRESS: Implement savegame read compression 2012-08-01 02:39:51 -04:00
Littleboy acd4cf82e2 LASTEXPRESS: Implement savegame write compression 2012-07-31 01:19:05 -04:00
Littleboy 4728505db2 LASTEXPRESS: Switch savegame reading to use new read method
- Disable savegame compression
2012-07-30 18:36:26 -04:00
Littleboy c8df89e6b2 LASTEXPRESS: Reorganize savegame code to prepare for compressed savegames support 2012-07-29 21:09:34 -04:00
Littleboy 94e2ea10cd LASTEXPRESS: Add menu-related warnings and turn some warnings into errors 2012-07-27 13:42:06 -04:00
Littleboy 6aeda2638b LASTEXPRESS: More include re-organization 2012-07-27 00:54:24 -04:00
Littleboy 732a2c80dd LASTEXPRESS: Remove duplicated include statements 2012-07-14 13:23:54 -04:00
Johannes Schickel 31e5b96fae LASTEXPRESS: Fix read size parameter. 2011-11-03 02:27:26 +01:00
Eugene Sandulenko 3bd615ae9b LASTEXPRESS: Fix incorrect read() call 2011-11-02 23:54:48 +00:00
Littleboy e7e689450b LASTEXPRESS: Prefix savegame filenames with "lastexpress" 2011-07-08 22:03:32 -04:00
Littleboy b4ac4988cc LASTEXPRESS: Cleanup comments 2011-06-28 22:54:51 -04:00
Littleboy 6eace0ca75 LASTEXPRESS: Move sound queue related functions to a separate class
- Implement missing queue reset function
 - Cleanup SoundManager::playLoopingSound()
2011-06-28 22:13:40 -04:00
Littleboy f0cf72f431 LASTEXPRESS: Move Menu class to a separate folder 2011-06-23 06:58:21 -04:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Julien Templier 04f971370c LASTEXPRESS: Add some more error handling to Savegame and Sound classes
- Add some const modifiers where applicable
  - Add some missing casts

svn-id: r55541
2011-01-26 10:43:38 +00:00
Julien Templier 9e5b554dc3 LASTEXPRESS: Poll events when loading savegames to prevent freezing the application
svn-id: r54368
2010-11-19 10:55:56 +00:00
Julien Templier 3b66e53bbe LASTEXPRESS: Fix some memory leaks
- Reading past the end of file in SaveLoad::init
 - Missing deallocation of cache in SoundManager
 - Missing deallocation of coords in SceneHotspot
 - Missing deallocation of event handlers in LastExpressEngine::setEventHandlers
 - Missing deallocation of InSaveFile in SaveLoad::isSavegameValid
 - Missing deallocation of frames in Menu

as reported by digitall

svn-id: r54193
2010-11-11 03:25:35 +00:00
Julien Templier cdfcaa4d48 LASTEXPRESS: Implement game loading (last save entry only)
svn-id: r53883
2010-10-27 19:20:20 +00:00
Julien Templier d5e4ab6b20 LASTEXPRESS: Cleanup game saving
- Move loading of game stream to separate function
 - Add checks for NULL in functions using _savegame
 - Add expected saved size for sound & savepoints

svn-id: r53881
2010-10-27 19:19:38 +00:00
Willem Jan Palenstijn d3523a6040 LASTEXPRESS: Read savegame in blocks instead of bytes
svn-id: r53854
2010-10-26 20:14:17 +00:00
Julien Templier 6bc59c0bb0 LASTEXPRESS: Implement loading of savegame entry headers
svn-id: r53847
2010-10-26 12:10:38 +00:00
Julien Templier dc4a22ed7d LASTEXPRESS: More savegame work
- Implement SaveLoad::writeEntry
 - Implement missing saveLoadWithSerializer functions for all serialized classes & structs
 - Add stub for SaveLoad::computePadding

svn-id: r53845
2010-10-26 06:55:34 +00:00
Torbjörn Andersson f663a736dd LASTEXPRESS: Silence GCC warning
svn-id: r53843
2010-10-26 05:19:24 +00:00
Julien Templier ae2c4b7cd2 LASTEXPRESS: Savegame support update
- Implement Menu::startGame() properly
 - Add stubs functions for game restart
 - Made savegame headers serializable and moved validity checks inside struct definition
 - Implement create/init savegame functions
 - Add SavegameStream to be able to read/write to the same memory stream
 - Add stubs for setup, writeEntry & loadEntry functions

svn-id: r53841
2010-10-26 00:41:42 +00:00
Jordi Vilalta Prat 59c054938a LASTEXPRESS: Fix some space formatting.
svn-id: r53629
2010-10-19 22:34:26 +00:00
Eugene Sandulenko 86d650926f LASTEXPRESS: Merge in the engine.
svn-id: r53579
2010-10-18 19:17:38 +00:00