Commit Graph

19 Commits

Author SHA1 Message Date
Cameron Cawley
a020300701 ENGINES: Remove use of getEngineId() in MetaEngine subclasses 2022-07-20 11:54:19 +02:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh
fe104cc337 ENGINES: Use MetaEngine consistently for getting autosave slot
The autosave refactoring that was done in
7adad5aaf5 used g_engine for identifying the
autosave slot. This worked for in-game save/load, but doesn't fit when
called from the launcher.

Fix by passing MetaEngine to SaveStateDescriptor ctor and using it for this
query.

Amends 7adad5aaf5.
2021-10-24 16:46:06 +02:00
Thierry Crozat
2224ab4d17 AGS: Fix missing savegame description in querySaveMetaInfos
This caused the description to be missing in the Grid View of the
ScummVM saveload dialog for example.
2021-09-07 01:08:27 +01:00
Thierry Crozat
cabb818543 AGS: Fix deleting savegames
The MetaEngine claimed to support kSupportsDeleteSave, but
removeSaveState() was not implemented, so deleting savegames
was not doing anything.

This fixes bug #12896 (AGS: Can't delete savegames)
2021-09-04 14:49:13 +01:00
Orgad Shaneh
7adad5aaf5 ENGINES: Streamline auto-save write/delete protection
Some engines call setAutosave and some don't. isAutosave is used to
determine if a saved game is an autosave, but in fact, on most cases it
just falls back to comparing the name to "Autosave".

This is wrong for several reasons:
* Older versions of ScummVM used Autosave 0.
* The name "Autosave" is translated, so if you change the language, it
  won't be detected.

Instead of relying on the name, use the well-known getAutosaveSlot() from
Engine/MetaEngine.

Fixes #12735.
2021-08-23 13:34:35 +02:00
Paul Gilbert
f0e7771eba AGS: Handle displaying thumbnails other than 160x100 in GMM 2021-06-28 19:12:42 -07:00
Martin Gerhardy
dfd6b6a9a4 COMMON: moved AchievementDescriptionList into Common namespace
getAchievementsInfo is also moved into the MetaEngine to reduce code duplication
2021-06-16 00:25:14 +03:00
Paul Gilbert
701396361c AGS: Import of fresh codebase 2021-06-13 21:08:44 -07:00
lb_ii
cd0a225394 AGS: Remove data string from achivements_tables 2021-06-10 01:56:23 +03:00
lb_ii
b6fddd9148 AGS: Add stats descriptions to AchievementsInfo 2021-06-01 02:20:53 +03:00
Thierry Crozat
19ef15177b AGS: Fix various issues with savegames
One of the issue was that we were listing the restart point
savegame (in slot 999), and it should not have been listed.
This caused a crash in the ags savegamedialog as it tried
to use the next slot, 1000, which is out of bound.
Changing this fixes bug #12386.

Another issue is that we could do out of bound writes due
to the AGS engine having to MAXSAVEGAMES define, one set to 20
and the other to 50. And in one place we were using the wrong
one.

Also specify a maximum save slot of 99. This is what the
original uses as it reserves higher slots for special purposes.

And finally do not use slot 999 for autosaves as it conflicts
with the slot used bu AGS for the restart point.
2021-04-09 00:14:56 +01:00
Eugene Sandulenko
f5e2d4445c JANITORIAL: Fix code formatting 2021-02-19 15:11:13 +01:00
Oliver Pahl
aeb3c00e76 AGS: Implemented achievement system for GOG Galaxy and Steam. 2021-02-17 17:44:26 -08:00
Paul Gilbert
f41fdec782 AGS: Implement GMM saving & loading 2021-02-06 16:37:31 -08:00
Paul Gilbert
e2878645b5 AGS: Added savegame thumbnails
At the moment, savegames made using the in-game save dialogs
show the dialog in the thumbnail. Not sure if it will be possible
to work around in the future, since the display of any save
dialog is controlled by game scripts, and so it would be difficult
to figure out a point to get a screenshot ready before the dialog
has been shown
2021-02-06 16:37:31 -08:00
Paul Gilbert
2447e8b06f AGS: Corrections to saving games 2021-02-06 16:37:31 -08:00
Paul Gilbert
0cf3a48ae4 AGS: Saves now has dummy path for clarity, added MetaEngine listSaves 2021-02-06 16:37:31 -08:00
Paul Gilbert
0faeeb8087 AGS: Skeleton engine
Based on AGS 3.5.0.27
2021-02-06 16:37:31 -08:00