Commit graph

146 commits

Author SHA1 Message Date
Paul Gilbert
af6034efcd ACCESS: MM: Implement proper game data and fonts in access.dat 2018-07-20 19:05:56 -07: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
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
Eugene Sandulenko
49ee8d82d1 ACCESS: Move debug channel registration where they belong 2016-07-28 11:32:54 +03:00
Paul Gilbert
ac8adb07c8 ACCESS: Refactor ASurface and Screen to not use virtual inheritance 2016-05-26 21:21:03 -04:00
Paul Gilbert
9c7569b74b ACCESS: Changed engine to use Graphics::ManagedSurface 2016-03-14 20:56:25 -04:00
Paul Gilbert
a6150f9308 ACCESS: Creation of access.dat for holding Access games engine data 2015-11-27 12:12:32 -05:00
Max Horn
0822181361 ACCESS: Fix initialisation of AccessEngine::_ask 2015-08-03 10:44:36 +02:00
Filippos Karapetis
8be83948b1 ACCESS: Use our formatting conventions for variable and function names 2015-07-24 23:03:22 +03:00
Willem Jan Palenstijn
6ec9c81b57 Merge branch 'master' into mm
Conflicts:
	engines/access/access.cpp
	engines/access/asurface.h
	engines/access/bubble_box.cpp
	engines/access/bubble_box.h
	engines/access/martian/martian_game.cpp
	engines/access/player.cpp
	engines/access/player.h
	engines/access/resources.cpp
	engines/access/screen.cpp
	engines/access/screen.h
	engines/access/sound.cpp
	engines/access/sound.h
2015-07-22 22:43:42 +02:00
Strangerke
a81fbda3da ACCESS: MM - Start implementing PRINTCHR and SPRINTCHR 2015-02-06 08:25:22 +01:00
Strangerke
a05e8625cc ACCESS: Remove an unused function 2015-02-05 07:36:17 +01:00
Strangerke
452c5e59c5 ACCESS: Tex2 - Start implementing takePicture() 2015-02-04 22:22:50 +01:00
Strangerke
77302c406f ACCESS: Initialize some variables 2015-01-27 07:04:18 +01:00
Strangerke
c4e8460ba2 ACCESS: MM - Fix a bug related to the down arrow, some refactoring and renaming 2015-01-17 14:26:56 +01:00
Strangerke
0c14e42bd2 ACCESS: MM - Implement up and down arrows in BubbleBox 2015-01-15 08:23:55 +01:00
Strangerke
f1aa191f8c ACCESS: MM - Implement getList 2015-01-15 00:40:43 +01:00
Strangerke
3a57f20816 ACCESS: MM - Implement displayBoxData 2015-01-14 23:44:24 +01:00
Strangerke
93e8b47e13 ACCESS: MM - Some more work on BubbleBox class 2015-01-13 21:52:40 +01:00
Strangerke
6a288bc476 ACCESS: MM - Work some more on doBox_v1 2015-01-13 00:46:45 +01:00
Strangerke
eacc0e085a ACCESS: MM - Add resource _byte1EEB5[] 2015-01-12 00:23:28 +01:00
Strangerke
ec381ae364 ACCESS: MM - Start implementing MM dialog box, split cmdConverse in two (WIP) 2015-01-12 00:04:38 +01:00
Strangerke
8249de3d44 ACCESS: MM - Make Bubble Box variable, add MM bubble boxes 2015-01-09 08:20:59 +01:00
Strangerke
cc75fb5fe0 ACCESS: MM - Fix TRAVEL array size 2015-01-06 00:40:13 +01:00
Strangerke
e1ded539ea ACCESS: MM - Implement some game specific opcodes 2015-01-05 22:43:21 +01:00
Strangerke
76f681efdf ACCESS: Make opcodes dependant to game versions 2015-01-05 18:15:12 +01:00
Strangerke
a33a9ae2e8 ACCESS: Split a bit more Player class, add some MM specific code 2014-12-29 07:22:51 +01:00
Strangerke
576bab349c ACCESS: Use loadSoundTable instead of push_back in several places 2014-12-27 17:21:04 +01:00
Strangerke
6fe9bdf6c6 ACCESS: Fix speech 2014-12-27 16:06:32 +01:00
Strangerke
4a1ddd5d0c ACCESS: Remove unused variable 2014-12-21 22:49:18 +01:00
Paul Gilbert
18df28f74d ACCESS: Extra initialization for various classes 2014-12-19 23:36:53 -05:00
Paul Gilbert
95aa9a13a6 ACCESS: Refactor most of ASurface statics to instance variables 2014-12-18 21:45:55 -05:00
Strangerke
9daf9a30c0 ACCESS: Modify the indentation of constructor when it's multiline 2014-12-17 19:13:23 +01:00
Strangerke
82dfe2a5bc ACCESS: Use writeString in writeSavegameHeader 2014-12-17 18:25:24 +01:00
Strangerke
3a1203ff73 ACCESS: Use a while statement as suggested by _sev in the merge request
Also fix a formatting issue pointed out by _sev
2014-12-17 07:47:55 +01:00
Paul Gilbert
98889efae5 ACCESS: Beginnings of dirty rect handling for screen 2014-12-13 21:25:46 -05:00
Strangerke
712a18d050 ACCESS: Fix compilation errors reported by Criezy 2014-12-12 23:08:18 -05:00
Strangerke
5520a76384 ACCESS: Fix speakText behavior 2014-12-12 23:07:57 -05:00
Paul Gilbert
547f3debb2 ACCESS: Separate timer updates from frame updates, and overall delay cleanup 2014-12-12 23:07:00 -05:00
Strangerke
8517209bcb ACCESS: Implement restart after death 2014-12-12 23:06:08 -05:00
Strangerke
07456932d4 ACCESS: Add a debug channel for the sound & music handling 2014-12-12 23:02:56 -05:00
Strangerke
3cf0893979 ACCESS: Add a cheat mode which currently skips the guard in chapter 8 2014-12-12 23:02:41 -05:00
Paul Gilbert
a1e5e8be94 ACCESS: Cleaned up event handling for scene establish text display 2014-12-12 23:02:06 -05:00
Paul Gilbert
67b3304f71 ACCESS: Clean up keyboard control 2014-12-12 23:01:37 -05:00
Strangerke
84ba0df9b2 ACCESS: Janitorial 2014-12-12 23:00:46 -05:00
Strangerke
9604da9da3 ACCESS: Rename _Eseg 2014-12-12 22:54:08 -05:00
Strangerke
0277d1654d ACCESS: Remove two unused variables 2014-12-12 22:53:55 -05:00
Strangerke
11e920f427 ACCESS: Split SoundManager and MusicManager 2014-12-12 22:53:43 -05:00
Paul Gilbert
a8e111fae4 ACCESS: Refactor opening scenes logic into Opening class 2014-12-12 22:52:51 -05:00
Paul Gilbert
eadaf53486 ACCESS: Remove unused _travel and _ask fields 2014-12-12 22:52:13 -05:00