This reduces the code duplication in all client code, which formerly duplicated
the querying of the plugin, game id etc. and now simply calls the newly added
method runModalWithCurrentTarget() on a SaveLoadChooser object.
We already pass the title and process button name to the constructor of
SaveLoadChooser and then do not offer any way of changing it, thus changing
the edit mode of the chooser is kind of pointless and was never actually used.
Instead we pass the mode on SaveLoadChooser construction now.
This change should have no functional change, but makes the sound code
more decoupled, modular and readable, prior to attempting a fix for
bug #3528164 - "DREAMWEB: missing sound effects/music cues during main
title".
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g'
This seems to have caught some params as well which is not undesirable IMO.
It also caught some strings containing this which is undesirable so I
excluded them manually. (engines/sci/engine/kernel_tables.h)
I read it as "this is how the original code expects save slots to
be initialized", but I guess it could be read as "the original
engine had 21 save slots". Which it didn't.
At Filippos's and wjp's suggestion. I don't really understand what
it does (other than printing the mouse over text), so I had simply
copied and pasted from another function.
This has been done by an automated search/replace, culling unused
variables in the process. The remaining variables in data are all stored
in savegames.
Also moves checkCoords to DreamBase, adding a nasty cast to it. This is a
temporary HACK, which allows moving functions that use checkCoords to
DreamBase one at a time, instead of all at once (and at the same time as
checkCoords). This can be undone once everything using checkCoords has been
moved to DreamBase.
This information includes savegame versioning and the saved game's
date/time, played time and game thumbnail. This information is stored
into an unused data block of the original save format, so the
generated ScummVM saves are (hopefully) fully compatible with the
original ones and can be loaded in the original interpreter