In some cases a mouse moved event could be handled between the moment
the xtakeit script was queued and the moment it is executed (on the same
frame), causing the mouse position no longer to be over a marble
rectangle.
Fixes#10647.
If the user enters in an invalid description for the save then it will be
simplified by the saved name cache process in Script::savegame.
I checked this with t7g, but not with the 11th guest or any other Groovie game.
The original in-game loading/saving can still only access the first 10 save
slots (0-9).
Its possible to saving via the GMM when the game is interactive.
Loading a game saved via the gui using the original in-game load menu
works fine.
Saving via the GMM with timestamp works, but only only saves the characters
up to the first non-alpha non-letter characer.
Also bumps the saved game format version to 3.
I changed the order of how the data is saved so that the playtime could
be read in without skipping as much data.
This is because querySaveMetaInfos only needs the metafields where as
saveload::DoRestore() needs more of the header.
A crash was happening when trying to delete a saved game from the launcher.
It is because the engine is not initalized. I assign a dummy value to
resolve the issue.
Loading saved games from previous versions works.
When an old version saved game is loaded it will start with zero playtime.
Old saved games are shown as not having playtime data.
This changes the convention back to skipping the thumbnail loading
for readSaveGameHeader. querySaveMetaInfos is the only place it
shouldn't be skipped.
This uses the one in Common.
The engine now contains a 10-bit cosine and sine table.
It used mostly for vector math.
This also allows two vector functions to be removed from vector.h.
It was possible to render the game unplayable simply by looking at
Jack's cigar box while waiting for him to return to examine the
lamp. Note that this bug is only present in the DVD version. For
whatever reason, it adds a dummy location for playing the cutscene.
Applying the bugfix in the CD version actually breaks the game.
This has no functional change, but improves the consistency with the
renamed stopSound() function.
Also, minor fixes for formatting, removal of redundant comments and code
in sound class.