Age | Commit message (Collapse) | Author |
|
|
|
Cut off long save slot descriptions from the GMM save dialogue when they're displayed in the original load menu.
|
|
|
|
(EGA dithering, 16bit mode, Japanese font rendering)
|
|
|
|
- low res font drawing for intro and outro texts
- fat print mode for ingame texts
|
|
|
|
(rename some variables in Screen::drawShape for better readability)
|
|
|
|
This bug would occur when casting dispel magic while the weapon slots were temporarily disabled (from using a weapon etc.). This could lead to permanently disabled slots.
|
|
- added print_map command which prints a map of the current level
- fixed open_door/close_door commands
|
|
This is a workaround for a premature sfx (original code/script bug) in a specific sequence in catacombs level 2.
|
|
Catacombs level 3 doors were not drawn completely.
|
|
regression from 00e59a31 - savegames without thumbnails (like the quickstart party) would raise an error message.
|
|
displayed overlapping)
It seems that I broke this after 1.5.0 in 2013 when adding support for the FM-Towns version.
|
|
|
|
This is a followup to the fix for bug #10665 (Urbish mines lobster having an invalid sound track number and causing invalid memory access).
|
|
This occurs because of an out of buffer access when trying to play the
monster sound effect.
This is bug Trac #10665.
|
|
|
|
|
|
|
|
|
|
This commit introduces the following changes:
1. Graphics::loadThumbnail()
Now returns a boolean and takes a new argument skipThumbnail which
defaults to false. In case of true, loadThumbnail() reads past the
thumbnail data in the input stream instead of actually loading the
thumbnail. This simplifies savegame handling where, up until now,
many engines always read the whole savegame metadata (including
the thumbnail) and then threw away the thumbnail when not needed
(which is in almost all cases, the most common exception being
MetaEngine::querySaveMetaInfos() which is responsible for loading
savegame metadata for displaying it in the GUI launcher.
2. readSavegameHeader()
Engines which already implement such a method (name varies) now take
a new argument skipThumbnail (default: true) which is passed
through to loadThumbnail(). This means that the default case for
readSavegameHeader() is now _not_ loading the thumbnail from a
savegame and just reading past it. In those cases, e.g.
querySaveMetaInfos(), where we actually are interested in loading
the thumbnail readSavegameHeader() needs to explicitely be called
with skipThumbnail == false.
Engines whose readSavegameHeader() (name varies) already takes an
argument loadThumbnail have been adapted to have a similar
prototype and semantics.
I.e. readSaveHeader(in, loadThumbnail, header) now is
readSaveHeader(in, header, skipThumbnail).
3. Error handling
Engines which previously did not check the return value of
readSavegameHeader() (name varies) now do so ensuring that possibly
broken savegames (be it a broken thumbnail or something else) don't
make it into the GUI launcher list in the first place.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix undefined behaviour in variadic functions
|
|
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.
|
|
Passing a type that undergoes default argument promotion as last
argument of a variadic function results in undefined behaviour.
|
|
All these fall through were marked as deliberate, so again I've only
changed the comment to silence GCC.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I've not fixed this one, maybe it's on purpose:
RELASE -> RELEASE
engines/mads/staticres.cpp:const char *const kGameReleaseTitleStr =
"GAME RELASE VERSION INFO";
|
|
It was storing filenames of length 12 in a char[12] buffer.
Fixes bug #9627.
|
|
|
|
ALL: Add Cloud storage support
|
|
looking/picking item)
|
|
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.
|
|
|
|
It had to become a proxy class in order to do that.
finalize() starts the saves sync.
|
|
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.
|
|
|
|
item variable value is less than 33, that is, 32 max. item+1 is never > 33.
Thus, the clapping code is redundant.
|