Commit Graph

528 Commits

Author SHA1 Message Date
D G Turner
110a1e3df5 CGE2: Allow Triggering of Carpet Workaround from Debug Console.
This allows the recovery of saved games with the dead-end condition from
bug Trac #6842.
2018-10-09 18:10:40 +01:00
D G Turner
f39a9b5563 CGE2: Add Script Workaround for Clothes Horse Carpet Bug.
This now allows the Carpet to be placed and removed from the Clothes
Horse repeatedly, thus avoiding the dead-end when you do not beat the
Carpet with the Racket on first attempt.

This is bug Trac #6842.
2018-10-09 18:07:59 +01:00
Bastien Bouclet
cf1ebf2951 ENGINES: Add unknown game variants to the game detector results 2018-05-10 09:04:23 +02:00
Thierry Crozat
699532157a CGE2: Add detection entry for Polish v1.1 version 2018-05-05 23:18:45 +01:00
Adrian Frühwirth
03312fba61 CGE2: Add play time metadata to savegames 2018-05-05 22:19:03 +02:00
Bastien Bouclet
dc96d43717 CGE2: Push down the AD includes 2018-05-01 12:48:05 +02:00
Adrian Frühwirth
9bee9e1ba6 JANITORIAL: Fix whitespace 2018-04-19 12:08:31 +02:00
Adrian Frühwirth
00e59a3122 ALL: Load savegame thumbnail only when necessary
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.
2018-04-07 09:26:20 +02:00
Colin Snover
a5bc89102e ALL: Remove obsolete register keyword
The register keyword was deprecated from the C++11 standard,
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4193.html#809>,
and removed from the C++17 standard,
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4340>, so
cannot exist in a well-formed C++17 program.

It has never done anything in GCC
<https://gcc.gnu.org/ml/gcc/2010-05/msg00113.html>
and because of the way it is specified in the standard, it is “as
meaningful as whitespace”
<http://www.drdobbs.com/keywords-that-arent-or-comments-by-anoth/184403859>.

The one remaining use of the register keyword is in the DS backend,
where it is used to create a local register variable using the
non-standard GCC Extended Asm feature.

Closes gh-1079.
2017-12-03 20:27:42 -06:00
Colin Snover
432fd522d2 ENGINES: Remove default1x scaler flag
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.
2017-10-07 12:30:29 -05:00
Willem Jan Palenstijn
3108957812 CGE2: Clean up SearchMan after fallbackDetect 2017-09-20 20:53:14 +02:00
Torbjörn Andersson
462f1c9859 JANITORIAL: Silence more GCC 7 warnings
There were all flagged as intentional fall throughs. I simply changed
the comments to something GCC would recognize.
2017-08-06 12:26:05 +02:00
Eugene Sandulenko
fab199d37e JANITORIAL: Make GPL headers uniform 2016-09-03 12:46:38 +02:00
Alexander Tkachev
b665fc933d ALL: Make simpleSaveNames() a MetaEngineFeature
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.
2016-08-24 16:07:55 +06:00
Alexander Tkachev
ab1d160ec8 ALL: Add MetaEngine::simpleSaveNames()
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.
2016-08-24 16:07:55 +06:00
Hubert Maier
3a3cc647d7 Fix CGE2 copyright sign 2016-05-29 15:11:57 +03:00
Eugene Sandulenko
33abb6118f ALL: Change main engine header guard defines to <directory>_<engine>_H
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.
2016-05-17 18:21:30 +02:00
Eugene Sandulenko
31514f8164 CGE2: More portable way of getting max long value 2016-05-02 17:50:15 +02:00
Ori Avtalion
3564032330 JANITORIAL: Reduce audio header dependencies 2016-04-14 16:10:21 +03:00
Ori Avtalion
253e18c440 JANITORIAL: Reduce GUI header dependencies 2016-04-14 13:30:14 +03:00
Johannes Schickel
0b6befdcc5 ENGINES: Make variable names of AdvancedMetaEngine conform to our guidelines.
_singleid   -> _singleId
_gameids    -> _gameIds
_guioptions -> _guiOptions
2016-03-08 19:01:13 +01:00
Strangerke
83fcab050c CGE2: Fix a couple of boolean values 2016-02-25 22:15:32 +01:00
Johannes Schickel
8fce4b5f19 CGE2: Let listSaves return list sorted on slot numbers. 2016-02-25 21:39:45 +01:00
Thierry Crozat
849f4f2d49 CGE2: Add events.cpp to POTFILE 2016-02-20 21:24:49 +00:00
Thierry Crozat
369d23dc3f CGE2: Translate buttons in load and save dialogs. 2016-02-20 21:08:34 +00:00
Johannes Schickel
1e64b4dd53 CGE2: Only request actual save slots in listSaves. 2016-01-26 16:35:30 +01:00
Eugene Sandulenko
6e9fe0052c CGE2: Fix rounding error 2015-11-27 22:34:26 +01:00
Strangerke
751183a269 CGE2: Silent a CppCheck warning 2015-11-27 15:06:10 +01:00
Thierry Crozat
0433eda4de CGE2: Add detection for new English freeware version 2014-12-21 18:25:57 +00:00
uruk
0aba59b460 CGE2: Add support for Sfinx. 2014-12-01 14:45:18 +01:00
Filippos Karapetis
c76c72c799 CGE2: Remove trailing whitespace 2014-10-28 16:06:07 +02:00
Thierry Crozat
c4a829a7c6 CGE2: Add detection for English v1.0 version of the game 2014-10-14 21:44:14 +01:00
uruk
601918c917 CGE2: Fix bug #6733.
The problem was that the engine used the SFX volume for later parts of speeches longer than one sound file.
2014-10-10 15:02:29 +02:00
Thierry Crozat
7a431ecb2c CGE2: Add list of files that contain translatable strings 2014-10-04 01:01:13 +01:00
Strangerke
1fe9038918 CGE2: Initialize a variable 2014-09-29 00:35:09 +02:00
Strangerke
9a927d7fd1 CGE2: Initialize some variables 2014-09-29 00:23:42 +02:00
Willem Jan Palenstijn
2c61e80d7e CGE2: Constify strings 2014-09-28 23:57:26 +02:00
Strangerke
9ee78d1e4c CGE2: Fix the case of a couple of constants, remove a useless variable 2014-09-28 23:43:07 +02:00
Strangerke
cd86ccb73e CGE2: Remove unused constants 2014-09-28 23:39:18 +02:00
Matthew Hoops
cbfa8bfccd CGE2: Silence gcc warnings 2014-09-28 15:29:49 -04:00
Strangerke
b5ad4eedb3 CGE2: Fix a crash when detecting an empty set of VOL files 2014-09-26 23:41:31 +02:00
Strangerke
a78b2c867d CGE2: Add some comment concerning the fallback detection in CGE2 2014-09-18 21:54:35 +02:00
Strangerke
0b81ffedd4 CGE2: Reduce the scope of a variable 2014-09-17 23:10:25 +02:00
Strangerke
1769003a9b CGE2: Implement fallbackDetect 2014-09-17 23:10:03 +02:00
Peter Bozsó
a418481a3c CGE2: Remove fallback detection for English translation. 2014-09-15 15:02:01 +02:00
Strangerke
ccdb9c8d6b CGE2: Add detection for the freeware v0.3 English 2014-09-11 21:37:24 +02:00
unknown
5c8129a1dd CGE2: Refactor _startupMode. 2014-09-07 11:01:23 +02:00
Peter Bozsó
da1b76be4d Revert "CGE2: Make the intro skippable."
This reverts commit 5e099e90bc.
There's no need for this addition, since the intro was skippable before that too, by hitting the ESC key.
See System::touch().
2014-09-07 10:45:29 +02:00
Peter Bozsó
5e099e90bc CGE2: Make the intro skippable. 2014-09-06 22:52:24 +02:00
Peter Bozsó
6201ddf63e CGE2: Update English autodetection. 2014-09-06 22:26:39 +02:00