Returning to launcher via ScummVM popup menu would retain the values of _systemVars
This would cause relaunching the game (after returning back to launcher) to have wrong value for eg. pastIntro, thus allowing "Save" from the ScummVM popup menu during the intro sequence.
Slot 0 is reserved for autosave but ScummVM in-game would allow saving on it
This was causing segmentation fault (_selectedGame would overflow and also saveGameTexts would be indexed with a -1 index
There's still some specific code remaining to keep the way the
existing autosave is handled the same, even though it now saves
it to slot 0, rather than with a .asd extension
The engine ID identifies which engine should be used to launch the target.
Also remove the 'single ID' system. Different games from engines that used
that system now have different game IDs.
Also-By: Matthew Hoops <clone2727@gmail.com>
This commit adds a workaround to unlock existing fullscreen images in
the intro of Beneath a Steel Sky.
The original engine clips the whole intro to 320x192 (the common game
format) even though some images exist as 320x200 in the game data files.
This workaround whitelists all images which actually are 320x200px and
displays them as must have originally been intended.
Fixes Trac#7559.
This flag is removed for a few reasons:
* Engines universally set this flag to true for widths > 320,
which made it redundant everywhere;
* This flag functioned primarily as a "force 1x scaler" flag,
since its behaviour was almost completely undocumented and users
would need to figure out that they'd need an explicit non-default
scaler set to get a scaler to operate at widths > 320;
* (Most importantly) engines should not be in the business of
deciding how the backend may choose to render its virtual screen.
The choice of rendering behaviour belongs to the user, and the
backend, in that order.
A nearby future commit restores the default1x scaler behaviour in
the SDL backend code for the moment, but in the future it is my
hope that there will be a better configuration UI to allow users
to specify how they want scaling to work for high resolutions.
asm code.
Certain width attributes of the two objects being checked were flipped.
I guess this may render a couple of hacky workarounds not
necessary anymore.
Added it into hasFeature() of all engines which returned `true` in
simpleSaveNames() before.
As mentioned in #788, SCI is not always using simple names, so it
doesn't have such feature now.
Engines with "simple" savenames would support "Run in background" in
save/load dialog and gradual save slots unlocking. Other engines
save/load feature would be locked until save sync is over.
Recently we started to use this as new semantics, although in the past
we used simly <engine>_H. Now these guard defines are consistent with
rest of the files which are used in the engines.