[Scummvm-git-logs] scummvm master -> e06f3c9a5aa444de5422365fb44ae7c9316b4344
eriktorbjorn
noreply at scummvm.org
Thu Apr 21 09:07:24 UTC 2022
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
0f4881214b SCUMM: Add semi-smooth scrolling for the FM Towns Loom intro
e06f3c9a5a GUI: Allow game option checkboxes to be disabled
Commit: 0f4881214bc004c801e9d64b22f61d7b507a463b
https://github.com/scummvm/scummvm/commit/0f4881214bc004c801e9d64b22f61d7b507a463b
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2022-04-21T11:07:17+02:00
Commit Message:
SCUMM: Add semi-smooth scrolling for the FM Towns Loom intro
Scrolling four pixels at a time is smoother than eight, and able to
keep up with the fast camera move in the FM Towns Loom intro.
Changed paths:
engines/scumm/detection.cpp
engines/scumm/gfx.h
engines/scumm/gfx_towns.cpp
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index f68473a9d1a..662b57fd51c 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -206,6 +206,13 @@ static const ExtraGuiOption smoothScrolling = {
true
};
+static const ExtraGuiOption semiSmoothScrolling = {
+ _s("Allow semi-smooth scrolling"),
+ _s("Allow scrolling to be less smooth during the fast camera movement in the intro."),
+ "semi_smooth_scroll",
+ false
+};
+
static const ExtraGuiOption enableEnhancements {
_s("Enable game-specific enhancements"),
_s("Allow ScummVM to make small enhancements to the game, usually based on other versions of the same game."),
@@ -241,6 +248,8 @@ const ExtraGuiOptions ScummMetaEngineDetection::getExtraGuiOptions(const Common:
}
if (target.empty() || platform == Common::kPlatformFMTowns) {
options.push_back(smoothScrolling);
+ if (target.empty() || gameid == "loom")
+ options.push_back(semiSmoothScrolling);
if (guiOptions.contains(GUIO_TRIM_FMTOWNS_TO_200_PIXELS))
options.push_back(fmtownsTrimTo200);
}
diff --git a/engines/scumm/gfx.h b/engines/scumm/gfx.h
index 6c5b544ae8f..e3754a152c8 100644
--- a/engines/scumm/gfx.h
+++ b/engines/scumm/gfx.h
@@ -482,7 +482,7 @@ public:
void fillLayerRect(int layer, int x, int y, int w, int h, int col);
void addDirtyRect(int x, int y, int w, int h);
void toggleLayers(int flags);
- void scrollLayers(int flags, int offset);
+ void scrollLayers(int flags, int offset, bool fast);
void update();
bool isScrolling(int direction, int threshold = 0) const { return (direction == 0) ? _scrollRemainder != threshold : (direction == 1 ? _scrollRemainder > threshold : _scrollRemainder < threshold); }
@@ -526,6 +526,7 @@ private:
int _pitch;
uint16 _scrollOffset;
int _scrollRemainder;
+ bool _semiSmoothScroll;
Graphics::PixelFormat _pixelFormat;
int _numDirtyRects;
diff --git a/engines/scumm/gfx_towns.cpp b/engines/scumm/gfx_towns.cpp
index 7375b48b390..e154e77df6b 100644
--- a/engines/scumm/gfx_towns.cpp
+++ b/engines/scumm/gfx_towns.cpp
@@ -20,6 +20,7 @@
*/
#include "common/endian.h"
+#include "common/config-manager.h"
#include "scumm/scumm.h"
#include "scumm/charset.h"
@@ -202,7 +203,7 @@ void ScummEngine::towns_updateGfx() {
if (!_scrollTimer)
_scrollTimer = cur;
_scrollTimer += 1000 / 60;
- _townsScreen->scrollLayers(1, _scrollRequest);
+ _townsScreen->scrollLayers(1, _scrollRequest, VAR(VAR_TIMER_NEXT) == 0);
if (_scrollNeedDeltaAdjust && _townsScreen->isScrolling(0))
_scrollDeltaAdjust++;
_scrollRequest = 0;
@@ -250,7 +251,7 @@ void ScummEngine::towns_scriptScrollEffect(int dir) {
uint32 nextFrame = _system->getMillis() + 1000 / 60;
// Same as in requestScroll(): This prevents glitches from graphics layer wrapping.
towns_waitForScroll(dir, threshold);
- _townsScreen->scrollLayers(0, dir << 3);
+ _townsScreen->scrollLayers(0, dir << 3, false);
towns_drawStripToScreen(vs, destX << 3, vs->topline, (srcX + (-dir * x)) << 3, 0, stripWidth, vs->h);
waitForTimer(nextFrame - _system->getMillis());
}
@@ -340,6 +341,8 @@ TownsScreen::TownsScreen(OSystem *system) : _system(system), _width(0), _height(
_pitch = s->pitch;
_system->unlockScreen();
+ _semiSmoothScroll = ConfMan.getBool("semi_smooth_scroll");
+
setupLayer(0, _width, _height, 1, 1, 256);
}
@@ -523,13 +526,21 @@ void TownsScreen::toggleLayers(int flags) {
_system->updateScreen();
}
-void TownsScreen::scrollLayers(int flags, int offset) {
+void TownsScreen::scrollLayers(int flags, int offset, bool fast) {
// This actually supports layer 0 only, since this is all we need.
_scrollRemainder += offset;
if (!_scrollRemainder)
return;
int step = (_scrollRemainder > 0) ? -1 : 1;
+
+ // Smooth scrolling isn't fast enough to keep up with the fast camera
+ // movement in the Loom intro. Non-smooth scrolling is eight pixels at
+ // at time, so two or four should be safe to use. Two is too slow, so
+ // four it is.
+ if (fast && _semiSmoothScroll)
+ step *= 4;
+
_scrollRemainder += step;
_scrollOffset = (_scrollOffset + step) % _layers[0].width;
Commit: e06f3c9a5aa444de5422365fb44ae7c9316b4344
https://github.com/scummvm/scummvm/commit/e06f3c9a5aa444de5422365fb44ae7c9316b4344
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2022-04-21T11:07:17+02:00
Commit Message:
GUI: Allow game option checkboxes to be disabled
Depending on other game option checkboxes. This is used to
enable/disable the semi-smooth scrolling checkboxes for FM Towns Loom,
since it's only used when smooth scrolling is enabled.
Changed paths:
engines/adl/detection.cpp
engines/advancedDetector.h
engines/agi/detection.cpp
engines/bladerunner/detection.cpp
engines/buried/detection.cpp
engines/cge/detection.cpp
engines/cge2/detection.cpp
engines/chewy/detection.cpp
engines/cine/detection.cpp
engines/dialogs.cpp
engines/dialogs.h
engines/drascula/detection.cpp
engines/dreamweb/detection.cpp
engines/glk/detection.cpp
engines/griffon/detection.cpp
engines/grim/detection.cpp
engines/groovie/detection.cpp
engines/hdb/detection.cpp
engines/hopkins/detection.cpp
engines/hypno/detection.cpp
engines/kyra/detection.cpp
engines/lure/detection.cpp
engines/made/detection.cpp
engines/mads/detection.cpp
engines/metaengine.h
engines/myst3/detection.cpp
engines/neverhood/detection.cpp
engines/queen/detection.cpp
engines/sci/detection_options.h
engines/scumm/detection.cpp
engines/sherlock/detection.cpp
engines/sky/detection.cpp
engines/stark/detection.cpp
engines/supernova/detection.cpp
engines/sword2/detection.cpp
engines/sword25/detection.cpp
engines/toltecs/detection.cpp
engines/trecision/detection.cpp
engines/twine/detection.cpp
engines/ultima/detection.cpp
engines/wintermute/detection.cpp
engines/xeen/detection.cpp
engines/zvision/detection_tables.h
diff --git a/engines/adl/detection.cpp b/engines/adl/detection.cpp
index 6230ff9573f..0355b6b8232 100644
--- a/engines/adl/detection.cpp
+++ b/engines/adl/detection.cpp
@@ -53,7 +53,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("TV emulation"),
_s("Emulate composite output to an NTSC TV"),
"ntsc",
- true
+ true,
+ 0,
+ 0
}
},
@@ -63,7 +65,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Color graphics"),
_s("Use color graphics instead of monochrome"),
"color",
- false
+ false,
+ 0,
+ 0
}
},
@@ -73,7 +77,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Color graphics"),
_s("Use color graphics instead of monochrome"),
"color",
- true
+ true,
+ 0,
+ 0
}
},
@@ -83,7 +89,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Show scanlines"),
_s("Darken every other scanline to mimic the look of a CRT"),
"scanlines",
- false
+ false,
+ 0,
+ 0
}
},
@@ -93,7 +101,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Always use sharp monochrome text"),
_s("Do not emulate NTSC artifacts for text"),
"monotext",
- true
+ true,
+ 0,
+ 0
}
},
diff --git a/engines/advancedDetector.h b/engines/advancedDetector.h
index 95c7a259e9f..5e78b0c9380 100644
--- a/engines/advancedDetector.h
+++ b/engines/advancedDetector.h
@@ -252,7 +252,7 @@ struct ADExtraGuiOptionsMap {
ExtraGuiOption option; /*!< The associated option. */
};
-#define AD_EXTRA_GUI_OPTIONS_TERMINATOR { 0, { 0, 0, 0, 0 } }
+#define AD_EXTRA_GUI_OPTIONS_TERMINATOR { 0, { 0, 0, 0, 0, 0, 0 } }
/**
* A @ref MetaEngineDetection implementation based on the Advanced Detector code.
diff --git a/engines/agi/detection.cpp b/engines/agi/detection.cpp
index 1e4053b4d0a..6479c3b783f 100644
--- a/engines/agi/detection.cpp
+++ b/engines/agi/detection.cpp
@@ -86,7 +86,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
@@ -96,7 +98,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use an alternative palette"),
_s("Use an alternative palette, common for all Amiga games. This was the old behavior"),
"altamigapalette",
- false
+ false,
+ 0,
+ 0
}
},
@@ -106,7 +110,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Mouse support"),
_s("Enables mouse support. Allows to use mouse for movement and in game menus."),
"mousesupport",
- true
+ true,
+ 0,
+ 0
}
},
@@ -116,7 +122,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use Hercules hires font"),
_s("Uses Hercules hires font, when font file is available."),
"herculesfont",
- false
+ false,
+ 0,
+ 0
}
},
@@ -126,7 +134,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Pause when entering commands"),
_s("Shows a command prompt window and pauses the game (like in SCI) instead of a real-time prompt."),
"commandpromptwindow",
- false
+ false,
+ 0,
+ 0
}
},
@@ -136,7 +146,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Add speed menu"),
_s("Add game speed menu (similar to PC version)"),
"apple2gs_speedmenu",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/bladerunner/detection.cpp b/engines/bladerunner/detection.cpp
index 90958c961c7..60d89491aed 100644
--- a/engines/bladerunner/detection.cpp
+++ b/engines/bladerunner/detection.cpp
@@ -52,7 +52,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Sitcom mode"),
_s("Game will add laughter after actor's line or narration"),
"sitcom",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -61,7 +63,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Shorty mode"),
_s("Game will shrink the actors and make their voices high pitched"),
"shorty",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -70,7 +74,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Frame limiter high performance mode"),
_s("This mode may result in high CPU usage! It avoids use of delayMillis() function."),
"nodelaymillisfl",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -79,7 +85,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Max frames per second limit"),
_s("This mode targets a maximum of 120 fps. When disabled, the game targets 60 fps"),
"frames_per_secondfl",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -88,7 +96,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Disable McCoy's quick stamina drain"),
_s("When running, McCoy won't start slowing down as soon as the player stops clicking the mouse"),
"disable_stamina_drain",
- false
+ false,
+ 0,
+ 0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
diff --git a/engines/buried/detection.cpp b/engines/buried/detection.cpp
index 03ec13670bc..84f73a137ec 100644
--- a/engines/buried/detection.cpp
+++ b/engines/buried/detection.cpp
@@ -53,7 +53,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Skip support"),
_s("Allow cutscenes to be skipped"),
"skip_support",
- true
+ true,
+ 0,
+ 0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
diff --git a/engines/cge/detection.cpp b/engines/cge/detection.cpp
index 457e84f83c0..dec88201da9 100644
--- a/engines/cge/detection.cpp
+++ b/engines/cge/detection.cpp
@@ -113,7 +113,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Color Blind Mode"),
_s("Enable Color Blind Mode by default"),
"enable_color_blind",
- false
+ false,
+ 0,
+ 0
}
},
@@ -124,7 +126,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Text to Speech"),
_s("Use TTS to read text in the game (if TTS is available)"),
"tts_enabled",
- false
+ false,
+ 0,
+ 0
}
},
#endif
diff --git a/engines/cge2/detection.cpp b/engines/cge2/detection.cpp
index 56ba292d358..99b60fc240c 100644
--- a/engines/cge2/detection.cpp
+++ b/engines/cge2/detection.cpp
@@ -105,7 +105,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Color Blind Mode"),
_s("Enable Color Blind Mode by default"),
"enable_color_blind",
- false
+ false,
+ 0,
+ 0
}
},
@@ -116,7 +118,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Text to Speech for Objects and Options"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_enabled_objects",
- false
+ false,
+ 0,
+ 0
}
},
@@ -126,7 +130,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Text to Speech for Subtitles"),
_s("Use TTS to read the subtitles (if TTS is available)"),
"tts_enabled_speech",
- false
+ false,
+ 0,
+ 0
}
},
#endif
diff --git a/engines/chewy/detection.cpp b/engines/chewy/detection.cpp
index 05ad381910a..15f1597f7a5 100644
--- a/engines/chewy/detection.cpp
+++ b/engines/chewy/detection.cpp
@@ -113,7 +113,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"original_menus",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/cine/detection.cpp b/engines/cine/detection.cpp
index 1e353e7d065..f969c162a8c 100644
--- a/engines/cine/detection.cpp
+++ b/engines/cine/detection.cpp
@@ -51,7 +51,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -60,7 +62,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use transparent dialog boxes in 16 color scenes"),
_s("Use transparent dialog boxes in 16 color scenes even if the original game version did not support them"),
"transparentdialogboxes",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/dialogs.cpp b/engines/dialogs.cpp
index b57f20c9ade..c3acf1345e8 100644
--- a/engines/dialogs.cpp
+++ b/engines/dialogs.cpp
@@ -382,14 +382,48 @@ ExtraGuiOptionsWidget::ExtraGuiOptionsWidget(GuiObject *containerBoss, const Com
for (uint i = 0; i < _options.size(); i++) {
Common::String id = Common::String::format("%d", i + 1);
+ uint32 cmd = _options[i].groupLeaderId ? kClickGroupLeaderCmd : 0;
_checkboxes.push_back(new CheckboxWidget(widgetsBoss(),
- _dialogLayout + ".customOption" + id + "Checkbox", _(_options[i].label), _(_options[i].tooltip)));
+ _dialogLayout + ".customOption" + id + "Checkbox", _(_options[i].label), _(_options[i].tooltip), cmd));
}
}
ExtraGuiOptionsWidget::~ExtraGuiOptionsWidget() {
}
+void ExtraGuiOptionsWidget::handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data) {
+ switch (cmd) {
+ case kClickGroupLeaderCmd: {
+ byte groupLeaderId = 0;
+
+ for (uint i = 0; i < _checkboxes.size(); i++) {
+ if (_checkboxes[i] == (CheckboxWidget *)sender) {
+ groupLeaderId = _options[i].groupLeaderId;
+ break;
+ }
+ }
+
+ if (!groupLeaderId)
+ break;
+
+ // We have found the "group leader" checkbox. Enable or disable
+ // all checkboxes in the group. Theoretically, this could mean
+ // that we disable another group leader, so its group should
+ // also be disabled. But that seems overkill for now.
+
+ for (uint i = 0; i < _options.size(); i++) {
+ if (_options[i].groupId == groupLeaderId) {
+ _checkboxes[i]->setEnabled(data != 0);
+ }
+ }
+ break;
+ }
+ default:
+ OptionsContainerWidget::handleCommand(sender, cmd, data);
+ break;
+ }
+}
+
Common::String ExtraGuiOptionsWidget::dialogLayout(const Common::String &domain) {
if (ConfMan.getActiveDomainName().equals(domain)) {
return "GlobalConfig_Engine_Container";
@@ -417,7 +451,7 @@ void ExtraGuiOptionsWidget::load() {
bool ExtraGuiOptionsWidget::save() {
// Set the state of engine-specific checkboxes
for (uint i = 0; i < _options.size() && i < _checkboxes.size(); i++) {
- ConfMan.setBool(_options[i].configOption, _checkboxes[i]->getState(), _domain);
+ ConfMan.setBool(_options[i].configOption, _checkboxes[i]->isEnabled() && _checkboxes[i]->getState(), _domain);
}
return true;
diff --git a/engines/dialogs.h b/engines/dialogs.h
index ad3cbb7b92a..3bf05ec5434 100644
--- a/engines/dialogs.h
+++ b/engines/dialogs.h
@@ -93,10 +93,17 @@ private:
};
class ExtraGuiOptionsWidget : public OptionsContainerWidget {
+public:
+ enum {
+ kClickGroupLeaderCmd = 'CGLC'
+ };
+
public:
ExtraGuiOptionsWidget(GuiObject *widgetsBoss, const Common::String &name, const Common::String &domain, const ExtraGuiOptions &options);
~ExtraGuiOptionsWidget() override;
+ virtual void handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data);
+
// OptionsContainerWidget API
void load() override;
bool save() override;
diff --git a/engines/drascula/detection.cpp b/engines/drascula/detection.cpp
index bb783786cc3..f9995c20c1f 100644
--- a/engines/drascula/detection.cpp
+++ b/engines/drascula/detection.cpp
@@ -298,7 +298,9 @@ static const ExtraGuiOption drasculaExtraGuiOption = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
};
class DrasculaMetaEngineDetection : public AdvancedMetaEngineDetection {
diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp
index 0018084732a..0782e6aa204 100644
--- a/engines/dreamweb/detection.cpp
+++ b/engines/dreamweb/detection.cpp
@@ -54,7 +54,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
@@ -64,7 +66,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Use bright palette mode"),
_s("Display graphics using the game's bright palette"),
"bright_palette",
- true
+ true,
+ 0,
+ 0
}
},
@@ -75,7 +79,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Enable Text to Speech for Objects, Options, and the Bible Quote"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_enabled_objects",
- false
+ false,
+ 0,
+ 0
}
},
@@ -85,7 +91,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Enable Text to Speech for Subtitles"),
_s("Use TTS to read the subtitles (if TTS is available)"),
"tts_enabled_speech",
- false
+ false,
+ 0,
+ 0
}
},
#endif
diff --git a/engines/glk/detection.cpp b/engines/glk/detection.cpp
index d09c0e2bce5..eaccd819e46 100644
--- a/engines/glk/detection.cpp
+++ b/engines/glk/detection.cpp
@@ -238,13 +238,17 @@ const ExtraGuiOptions GlkMetaEngineDetection::getExtraGuiOptions(const Common::S
_s("Enable Text to Speech"),
_s("Use TTS to read the text"),
"speak",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption ttsSpeakInputOptions = {
_s("Also read input text"),
_s("Use TTS to read the input text"),
"speak_input",
- false
+ false,
+ 0,
+ 0
};
options.push_back(ttsSpeakOptions);
options.push_back(ttsSpeakInputOptions);
diff --git a/engines/griffon/detection.cpp b/engines/griffon/detection.cpp
index f6bbc6f46c7..3cd5bb4c223 100644
--- a/engines/griffon/detection.cpp
+++ b/engines/griffon/detection.cpp
@@ -41,7 +41,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Text to Speech"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_enabled",
- false
+ false,
+ 0,
+ 0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
diff --git a/engines/grim/detection.cpp b/engines/grim/detection.cpp
index f06c776b213..b001b5e92e7 100644
--- a/engines/grim/detection.cpp
+++ b/engines/grim/detection.cpp
@@ -69,7 +69,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Load user patch (unsupported)"),
_s("Load an user patch. Please note that the ScummVM team doesn't provide support for using such patches."),
"datausr_load",
- false
+ false,
+ 0,
+ 0
}
},
{
@@ -78,7 +80,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Show FPS"),
_s("Show the current FPS-rate, while you play."),
"show_fps",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/groovie/detection.cpp b/engines/groovie/detection.cpp
index abefe33a351..5eba136ea15 100644
--- a/engines/groovie/detection.cpp
+++ b/engines/groovie/detection.cpp
@@ -275,7 +275,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Fast movie speed"),
_s("Play movies at an increased speed"),
"fast_movie_speed",
- false
+ false,
+ 0,
+ 0
}
},
@@ -285,7 +287,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
@@ -295,7 +299,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Easier AI"),
_s("Decrease the difficulty of AI puzzles"),
"easier_ai",
- false
+ false,
+ 0,
+ 0
}
},
@@ -305,7 +311,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Updated Credits Music"),
_s("Play the song The Final Hour during the credits instead of reusing MIDI songs"),
"credits_music",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/hdb/detection.cpp b/engines/hdb/detection.cpp
index 1a27334ec22..54546e89b0a 100644
--- a/engines/hdb/detection.cpp
+++ b/engines/hdb/detection.cpp
@@ -123,7 +123,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable cheat mode"),
_s("Debug info and level selection becomes available"),
"hypercheat",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/hopkins/detection.cpp b/engines/hopkins/detection.cpp
index 9f804d37d97..c6915bf17ec 100644
--- a/engines/hopkins/detection.cpp
+++ b/engines/hopkins/detection.cpp
@@ -46,7 +46,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Gore Mode"),
_s("Enable Gore Mode when available"),
"enable_gore",
- false
+ false,
+ 0,
+ 0
}
},
@@ -56,7 +58,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Gore Mode"),
_s("Enable Gore Mode when available"),
"enable_gore",
- true
+ true,
+ 0,
+ 0
}
},
diff --git a/engines/hypno/detection.cpp b/engines/hypno/detection.cpp
index 5389c88410d..4e8c04d3ea8 100644
--- a/engines/hypno/detection.cpp
+++ b/engines/hypno/detection.cpp
@@ -190,14 +190,18 @@ static const ExtraGuiOption hypnoExtraGuiOptionCheats = {
_s("Enable cheats"),
_s("Allow cheats using the C key."),
"cheats",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption hypnoExtraGuiOptionRestoredContent = {
_s("Enable restored content"),
_s("Add additional content that is not enabled the original implementation."),
"restored",
- false
+ false,
+ 0,
+ 0
};
class HypnoMetaEngineDetection : public AdvancedMetaEngineDetection {
diff --git a/engines/kyra/detection.cpp b/engines/kyra/detection.cpp
index cdffe00e424..20f05f0c0af 100644
--- a/engines/kyra/detection.cpp
+++ b/engines/kyra/detection.cpp
@@ -61,7 +61,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Studio audience"),
_s("Enable studio audience"),
"studio_audience",
- true
+ true,
+ 0,
+ 0
}
},
@@ -72,7 +74,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Skip support"),
_s("Allow text and cutscenes to be skipped"),
"skip_support",
- true
+ true,
+ 0,
+ 0
}
},
@@ -83,7 +87,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Helium mode"),
_s("Enable helium mode"),
"helium_mode",
- false
+ false,
+ 0,
+ 0
}
},
@@ -97,7 +103,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Smooth scrolling"),
_s("Enable smooth scrolling when walking"),
"smooth_scrolling",
- true
+ true,
+ 0,
+ 0
}
},
@@ -110,7 +118,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Floating cursors"),
_s("Enable floating cursors"),
"floating_cursors",
- false
+ false,
+ 0,
+ 0
}
},
@@ -122,7 +132,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Suggest save names"),
_s("Autogenerated naming suggestions for savegames"),
"auto_savenames",
- false
+ false,
+ 0,
+ 0
}
},
@@ -135,7 +147,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("HP bar graphs"),
_s("Enable hit point bar graphs"),
"hpbargraphs",
- true
+ true,
+ 0,
+ 0
}
},
@@ -146,7 +160,9 @@ const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Fight Button L/R Swap"),
_s("Left button to attack, right button to pick up items"),
"mousebtswap",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/lure/detection.cpp b/engines/lure/detection.cpp
index bfc1b74727b..a8066314ffc 100644
--- a/engines/lure/detection.cpp
+++ b/engines/lure/detection.cpp
@@ -44,7 +44,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("TTS Narrator"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_narrator",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/made/detection.cpp b/engines/made/detection.cpp
index 632473fa1c6..09d4d0c2bf1 100644
--- a/engines/made/detection.cpp
+++ b/engines/made/detection.cpp
@@ -62,7 +62,9 @@ static const ExtraGuiOption introMusicDigital = {
_s("Play a digital soundtrack during the opening movie"),
_s("If selected, the game will use a digital soundtrack during the introduction. Otherwise, it will play MIDI music."),
"intro_music_digital",
- true
+ true,
+ 0,
+ 0
};
const ExtraGuiOptions MadeMetaEngineDetection::getExtraGuiOptions(const Common::String &target) const {
diff --git a/engines/mads/detection.cpp b/engines/mads/detection.cpp
index f7c7baae762..58de349756d 100644
--- a/engines/mads/detection.cpp
+++ b/engines/mads/detection.cpp
@@ -62,7 +62,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Easy mouse interface"),
_s("Shows object names when hovering the mouse over them"),
"EasyMouse",
- true
+ true,
+ 0,
+ 0
}
},
@@ -72,7 +74,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Animated inventory items"),
_s("Animated inventory items"),
"InvObjectsAnimated",
- true
+ true,
+ 0,
+ 0
}
},
@@ -82,7 +86,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Animated game interface"),
_s("Animated game interface"),
"TextWindowAnimated",
- true
+ true,
+ 0,
+ 0
}
},
@@ -92,7 +98,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Naughty game mode"),
_s("Naughty game mode"),
"NaughtyMode",
- true
+ true,
+ 0,
+ 0
}
},
@@ -102,7 +110,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Graphics dithering"),
_s("Graphics dithering"),
"GraphicsDithering",
- true
+ true,
+ 0,
+ 0
}
},*/
@@ -113,7 +123,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("TTS Narrator"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_narrator",
- false
+ false,
+ 0,
+ 0
}
},
#endif
diff --git a/engines/metaengine.h b/engines/metaengine.h
index 49ad9a77a29..f35ff98a618 100644
--- a/engines/metaengine.h
+++ b/engines/metaengine.h
@@ -71,6 +71,8 @@ struct ExtraGuiOption {
const char *tooltip; /*!< Option tooltip shown when the mouse cursor hovers over it. */
const char *configOption; /*!< confMan key, e.g. "fullscreen". */
bool defaultState; /*!< Default state of the checkbox (checked or not). */
+ byte groupId; /*!< Id for the checkbox's group, or 0 for no group. */
+ byte groupLeaderId; /*!< When this checkbox is unchecked, disable all checkboxes in this group. One leader per group. */
};
/**
diff --git a/engines/myst3/detection.cpp b/engines/myst3/detection.cpp
index 2ee06eb7190..4e68f4a365e 100644
--- a/engines/myst3/detection.cpp
+++ b/engines/myst3/detection.cpp
@@ -212,7 +212,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Widescreen mod"),
_s("Enable widescreen rendering in fullscreen mode."),
"widescreen_mod",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/neverhood/detection.cpp b/engines/neverhood/detection.cpp
index 1fd05b1d68d..a34e3e30d42 100644
--- a/engines/neverhood/detection.cpp
+++ b/engines/neverhood/detection.cpp
@@ -134,21 +134,27 @@ static const ExtraGuiOption neverhoodExtraGuiOption1 = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption neverhoodExtraGuiOption2 = {
_s("Skip the Hall of Records storyboard scenes"),
_s("Allows the player to skip past the Hall of Records storyboard scenes"),
"skiphallofrecordsscenes",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption neverhoodExtraGuiOption3 = {
_s("Scale the making of videos to full screen"),
_s("Scale the making of videos, so that they use the whole screen"),
"scalemakingofvideos",
- false
+ false,
+ 0,
+ 0
};
diff --git a/engines/queen/detection.cpp b/engines/queen/detection.cpp
index 37a055ce1cf..439ea0a7e67 100644
--- a/engines/queen/detection.cpp
+++ b/engines/queen/detection.cpp
@@ -44,7 +44,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Alternative intro"),
_s("Use an alternative game intro (CD version only)"),
"alt_intro",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/sci/detection_options.h b/engines/sci/detection_options.h
index e846a57b666..01d4a50fa36 100644
--- a/engines/sci/detection_options.h
+++ b/engines/sci/detection_options.h
@@ -31,7 +31,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Skip EGA dithering pass (full color backgrounds)"),
_s("Skip dithering pass in EGA games, graphics are shown with full colors"),
"disable_dithering",
- false
+ false,
+ 0,
+ 0
}
},
@@ -41,7 +43,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable high resolution graphics"),
_s("Enable high resolution graphics/content"),
"enable_high_resolution_graphics",
- true
+ true,
+ 0,
+ 0
}
},
@@ -51,7 +55,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable black-lined video"),
_s("Draw black lines over videos to increase their apparent sharpness"),
"enable_black_lined_video",
- false
+ false,
+ 0,
+ 0
}
},
@@ -62,7 +68,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use high-quality video scaling"),
_s("Use linear interpolation when upscaling videos, where possible"),
"enable_hq_video",
- true
+ true,
+ 0,
+ 0
}
},
#endif
@@ -73,7 +81,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use high-quality \"LarryScale\" cel scaling"),
_s("Use special cartoon scaler for drawing character sprites"),
"enable_larryscale",
- true
+ true,
+ 0,
+ 0
}
},
@@ -83,7 +93,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Prefer digital sound effects"),
_s("Prefer digital sound effects instead of synthesized ones"),
"prefer_digitalsfx",
- true
+ true,
+ 0,
+ 0
}
},
@@ -93,7 +105,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
// Jones in the Fast Lane - CD audio tracks or resource.snd
@@ -103,7 +117,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use CD audio"),
_s("Use CD audio instead of in-game audio, if available"),
"use_cdaudio",
- true
+ true,
+ 0,
+ 0
}
},
@@ -114,7 +130,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use Windows cursors"),
_s("Use the Windows cursors (smaller and monochrome) instead of the DOS ones"),
"windows_cursors",
- false
+ false,
+ 0,
+ 0
}
},
@@ -125,7 +143,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use silver cursors"),
_s("Use the alternate set of silver cursors instead of the normal golden ones"),
"silver_cursors",
- false
+ false,
+ 0,
+ 0
}
},
@@ -136,7 +156,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable content censoring"),
_s("Enable the game's built-in optional content censoring"),
"enable_censoring",
- false
+ false,
+ 0,
+ 0
}
},
@@ -147,7 +169,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Upscale videos"),
_s("Upscale videos to double their size"),
"enable_video_upscale",
- true
+ true,
+ 0,
+ 0
}
},
@@ -158,7 +182,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use RGB rendering"),
_s("Use RGB rendering to improve screen transitions"),
"rgb_rendering",
- false
+ false,
+ 0,
+ 0
}
},
@@ -169,7 +195,9 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Use per-resource modified palettes"),
_s("Use custom per-resource palettes to improve visuals"),
"palette_mods",
- false
+ false,
+ 0,
+ 0
}
},
@@ -180,19 +208,23 @@ const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable bearded musicians"),
_s("Enable graphics that were disabled for legal reasons"),
"enable_bearded_musicians",
- false
+ false,
+ 0,
+ 0
}
},
#ifdef USE_TTS
- {
- GAMEOPTION_TTS,
- {
- _s("Enable Text to Speech"),
- _s("Use TTS to read the descriptions (if TTS is available)"),
- "tts_enabled",
- false
- }
+ {
+ GAMEOPTION_TTS,
+ {
+ _s("Enable Text to Speech"),
+ _s("Use TTS to read the descriptions (if TTS is available)"),
+ "tts_enabled",
+ false,
+ 0,
+ 0
+ }
},
#endif
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index 662b57fd51c..4f1d4277474 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -175,49 +175,63 @@ static const ExtraGuiOption comiObjectLabelsOption = {
_s("Show Object Line"),
_s("Show the names of objects at the bottom of the screen"),
"object_labels",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption mmnesObjectLabelsOption = {
_s("Use NES Classic Palette"),
_s("Use a more neutral color palette that closely emulates the NES Classic"),
"mm_nes_classic_palette",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption fmtownsTrimTo200 = {
_s("Trim FM-TOWNS games to 200 pixels height"),
_s("Cut the extra 40 pixels at the bottom of the screen, to make it standard 200 pixels height, allowing using 'aspect ratio correction'"),
"trim_fmtowns_to_200_pixels",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption macV3LowQualityMusic = {
_s("Play simplified music"),
_s("This music was presumably intended for low-end Macs, and uses only one channel."),
"mac_v3_low_quality_music",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption smoothScrolling = {
_s("Enable smooth scrolling"),
_s("(instead of the normal 8-pixels steps scrolling)"),
"smooth_scroll",
- true
+ true,
+ 0,
+ 1
};
static const ExtraGuiOption semiSmoothScrolling = {
_s("Allow semi-smooth scrolling"),
_s("Allow scrolling to be less smooth during the fast camera movement in the intro."),
"semi_smooth_scroll",
- false
+ false,
+ 1,
+ 0
};
static const ExtraGuiOption enableEnhancements {
_s("Enable game-specific enhancements"),
_s("Allow ScummVM to make small enhancements to the game, usually based on other versions of the same game."),
"enable_enhancements",
- true
+ true,
+ 0,
+ 0
};
const ExtraGuiOptions ScummMetaEngineDetection::getExtraGuiOptions(const Common::String &target) const {
diff --git a/engines/sherlock/detection.cpp b/engines/sherlock/detection.cpp
index 44face6b02d..e461c427816 100644
--- a/engines/sherlock/detection.cpp
+++ b/engines/sherlock/detection.cpp
@@ -58,7 +58,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
@@ -68,7 +70,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Pixellated scene transitions"),
_s("When changing scenes, a randomized pixel transition is done"),
"fade_style",
- true
+ true,
+ 0,
+ 0
}
},
@@ -78,7 +82,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Don't show hotspots when moving mouse"),
_s("Only show hotspot names after you actually click on a hotspot or action button"),
"help_style",
- false
+ false,
+ 0,
+ 0
}
},
@@ -88,7 +94,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Show character portraits"),
_s("Show portraits for the characters when conversing"),
"portraits_on",
- true
+ true,
+ 0,
+ 0
}
},
@@ -98,7 +106,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Slide dialogs into view"),
_s("Slide UI dialogs into view, rather than simply showing them immediately"),
"window_style",
- true
+ true,
+ 0,
+ 0
}
},
@@ -108,7 +118,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Transparent windows"),
_s("Show windows with a partially transparent background"),
"transparent_windows",
- true
+ true,
+ 0,
+ 0
}
},
@@ -119,7 +131,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("TTS Narrator"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_narrator",
- false
+ false,
+ 0,
+ 0
}
},
#endif
diff --git a/engines/sky/detection.cpp b/engines/sky/detection.cpp
index 2c23b56700e..bd0d971a948 100644
--- a/engines/sky/detection.cpp
+++ b/engines/sky/detection.cpp
@@ -36,7 +36,9 @@ static const ExtraGuiOption skyExtraGuiOption = {
_s("Floppy intro"),
_s("Use the floppy version's intro (CD version only)"),
"alt_intro",
- false
+ false,
+ 0,
+ 0
};
struct SkyVersion {
diff --git a/engines/stark/detection.cpp b/engines/stark/detection.cpp
index 018cb07e776..ced8a286e84 100644
--- a/engines/stark/detection.cpp
+++ b/engines/stark/detection.cpp
@@ -375,7 +375,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Load modded assets"),
_s("Enable loading of external replacement assets."),
"enable_assets_mod",
- true
+ true,
+ 0,
+ 0
}
},
{
@@ -384,7 +386,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable linear filtering of the backgrounds images"),
_s("When linear filtering is enabled the background graphics are smoother in full screen mode, at the cost of some details."),
"use_linear_filtering",
- true
+ true,
+ 0,
+ 0
}
},
{
@@ -393,7 +397,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable font anti-aliasing"),
_s("When font anti-aliasing is enabled, the text is smoother."),
"enable_font_antialiasing",
- true
+ true,
+ 0,
+ 0
}
},
diff --git a/engines/supernova/detection.cpp b/engines/supernova/detection.cpp
index f8d274d56a3..87923683054 100644
--- a/engines/supernova/detection.cpp
+++ b/engines/supernova/detection.cpp
@@ -41,7 +41,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Improved mode"),
_s("Removes some repetitive actions, adds possibility to change verbs by keyboard"),
"improved",
- true
+ true,
+ 0,
+ 0
}
},
@@ -51,7 +53,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Text to Speech"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_enabled",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/sword2/detection.cpp b/engines/sword2/detection.cpp
index b7138b8b5b3..5ac8914220f 100644
--- a/engines/sword2/detection.cpp
+++ b/engines/sword2/detection.cpp
@@ -32,7 +32,9 @@ static const ExtraGuiOption sword2ExtraGuiOption = {
_s("Show object labels"),
_s("Show labels for objects on mouse hover"),
"object_labels",
- false
+ false,
+ 0,
+ 0
};
class Sword2MetaEngineDetection : public MetaEngineDetection {
diff --git a/engines/sword25/detection.cpp b/engines/sword25/detection.cpp
index 1c855953a32..480c4bdd7c3 100644
--- a/engines/sword25/detection.cpp
+++ b/engines/sword25/detection.cpp
@@ -47,7 +47,9 @@ static const ExtraGuiOption sword25ExtraGuiOption = {
_s("Use English speech"),
_s("Use English speech instead of German for every language other than German"),
"english_speech",
- false
+ false,
+ 0,
+ 0
};
class Sword25MetaEngineDetection : public AdvancedMetaEngineDetection {
diff --git a/engines/toltecs/detection.cpp b/engines/toltecs/detection.cpp
index 54f5a32ce25..3662ae096ea 100644
--- a/engines/toltecs/detection.cpp
+++ b/engines/toltecs/detection.cpp
@@ -212,7 +212,9 @@ static const ExtraGuiOption toltecsExtraGuiOption = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
};
class ToltecsMetaEngineDetection : public AdvancedMetaEngineDetection {
diff --git a/engines/trecision/detection.cpp b/engines/trecision/detection.cpp
index 5cbcf75517a..cbb52a3244f 100644
--- a/engines/trecision/detection.cpp
+++ b/engines/trecision/detection.cpp
@@ -219,7 +219,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
diff --git a/engines/twine/detection.cpp b/engines/twine/detection.cpp
index 718599a2cce..2290f30778b 100644
--- a/engines/twine/detection.cpp
+++ b/engines/twine/detection.cpp
@@ -673,7 +673,9 @@ static const ExtraGuiOption OptWallCollision = {
_s("Enable wall collisions"),
_s("Enable the original wall collision damage"),
"wallcollision",
- false
+ false,
+ 0,
+ 0
};
// this only changes the menu and doesn't change the autosave behaviour - as scummvm is handling this now
@@ -681,70 +683,90 @@ static const ExtraGuiOption OptDisableSaveMenu = {
_s("Disable save menu"),
_s("The original only had autosaves. This allows you to save whenever you want."),
"useautosaving",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption OptDebug = {
_s("Enable debug mode"),
_s("Enable the debug mode"),
"debug",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption OptUseCD = {
_s("Enable audio CD"),
_s("Enable the original audio cd track"),
"usecd",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption OptSound = {
_s("Enable sound"),
_s("Enable the sound for the game"),
"sound",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption OptVoices = {
_s("Enable voices"),
_s("Enable the voices for the game"),
"voice",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption OptText = {
_s("Enable text"),
_s("Enable the text for the game"),
"displaytext",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption OptMovies = {
_s("Enable movies"),
_s("Enable the cutscenes for the game"),
"movie",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption OptMouse = {
_s("Enable mouse"),
_s("Enable the mouse for the UI"),
"mouse",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption OptUSAVersion = {
_s("Use the USA version"),
_s("Enable the USA specific version flags"),
"version",
- false
+ false,
+ 0,
+ 0
};
static const ExtraGuiOption OptHighRes = {
_s("Enable high resolution"),
_s("Enable a higher resolution for the game"),
"usehighres",
- false
+ false,
+ 0,
+ 0
};
#ifdef USE_TTS
@@ -752,7 +774,9 @@ static const ExtraGuiOption OptTextToSpeech = {
_s("TTS Narrator"),
_s("Use TTS to read the descriptions (if TTS is available)"),
"tts_narrator",
- false
+ false,
+ 0,
+ 0
};
#endif
diff --git a/engines/ultima/detection.cpp b/engines/ultima/detection.cpp
index e84931e6538..4c4e96971f0 100644
--- a/engines/ultima/detection.cpp
+++ b/engines/ultima/detection.cpp
@@ -55,7 +55,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
@@ -66,27 +68,35 @@ static const ExtraGuiOption COMMON_OPTIONS[] = {
_s("Enable frame skipping"),
_s("Allow the game to skip animation frames when running too slow."),
"frameSkip",
- false
+ false,
+ 0,
+ 0
},
{
_s("Enable frame limiting"),
_s("Limits the speed of the game to prevent running too fast."),
"frameLimit",
- true
+ true,
+ 0,
+ 0
},
{
_s("Enable cheats"),
_s("Allow cheats by commands and a menu when player is clicked."),
"cheat",
- false
+ false,
+ 0,
+ 0
},
{
_s("Enable high resolution"),
_s("Enable a higher resolution for the game"),
"usehighres",
- false
+ false,
+ 0,
+ 0
},
- { nullptr, nullptr, nullptr, false }
+ { nullptr, nullptr, nullptr, false, 0, 0 }
};
static const ExtraGuiOption U8_OPTIONS[] = {
@@ -94,33 +104,43 @@ static const ExtraGuiOption U8_OPTIONS[] = {
_s("Play foot step sounds"),
_s("Plays sound when the player moves."),
"footsteps",
- true
+ true,
+ 0,
+ 0
},
{
_s("Enable jump to mouse position"),
_s("Jumping while not moving targets the mouse cursor rather than direction only."),
"targetedjump",
- true
+ true,
+ 0,
+ 0
},
{
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
},
{
_s("Enable font replacement"),
_s("Replaces game fonts with rendered fonts"),
"font_override",
- false
+ false,
+ 0,
+ 0
},
{
_s("Enable font anti-aliasing"),
_s("When font anti-aliasing is enabled, the text is smoother."),
"font_antialiasing",
- false
+ false,
+ 0,
+ 0
},
- { nullptr, nullptr, nullptr, false }
+ { nullptr, nullptr, nullptr, false, 0, 0 }
};
static const ExtraGuiOption CAMERA_WITH_SILENCER = {
@@ -128,12 +148,14 @@ static const ExtraGuiOption CAMERA_WITH_SILENCER = {
_s("Camera moves with Silencer"),
_s("Camera tracks the player movement rather than snapping to defined positions."),
"camera_on_player",
- true
+ true,
+ 0,
+ 0
};
static const ExtraGuiOption REMORSE_OPTIONS[] = {
CAMERA_WITH_SILENCER,
- { nullptr, nullptr, nullptr, false }
+ { nullptr, nullptr, nullptr, false, 0, 0 }
};
static const ExtraGuiOption REGRET_OPTIONS[] = {
@@ -142,9 +164,11 @@ static const ExtraGuiOption REGRET_OPTIONS[] = {
_s("Always enable Christmas easter-egg"),
_s("Enable the Christmas music at any time of year."),
"always_christmas",
- true
+ true,
+ 0,
+ 0
},
- { nullptr, nullptr, nullptr, false }
+ { nullptr, nullptr, nullptr, false, 0, 0 }
};
} // End of namespace Ultima
diff --git a/engines/wintermute/detection.cpp b/engines/wintermute/detection.cpp
index c55aebcd28d..72444c8a42d 100644
--- a/engines/wintermute/detection.cpp
+++ b/engines/wintermute/detection.cpp
@@ -52,7 +52,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Show FPS-counter"),
_s("Show the current number of frames per second in the upper left corner"),
"show_fps",
- false
+ false,
+ 0,
+ 0
},
},
@@ -62,7 +64,9 @@ static const ADExtraGuiOptionsMap gameGuiOptions[] = {
_s("Sprite bilinear filtering (SLOW)"),
_s("Apply bilinear filtering to individual sprites"),
"bilinear_filtering",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/xeen/detection.cpp b/engines/xeen/detection.cpp
index bd9aa2fc231..09ac24a340f 100644
--- a/engines/xeen/detection.cpp
+++ b/engines/xeen/detection.cpp
@@ -55,7 +55,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Show item costs in standard inventory mode"),
_s("Shows item costs in standard inventory mode, allowing the value of items to be compared"),
"ShowItemCosts",
- false
+ false,
+ 0,
+ 0
}
},
@@ -65,7 +67,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("More durable armor"),
_s("Armor won't break until character is at -80HP, rather than merely -10HP"),
"DurableArmor",
- false
+ false,
+ 0,
+ 0
}
},
diff --git a/engines/zvision/detection_tables.h b/engines/zvision/detection_tables.h
index ac4001810ae..3f9711ad243 100644
--- a/engines/zvision/detection_tables.h
+++ b/engines/zvision/detection_tables.h
@@ -50,7 +50,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use original save/load screens"),
_s("Use the original save/load screens instead of the ScummVM ones"),
"originalsaveload",
- false
+ false,
+ 0,
+ 0
}
},
@@ -60,7 +62,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Double FPS"),
_s("Increase framerate from 30 to 60 FPS"),
"doublefps",
- false
+ false,
+ 0,
+ 0
}
},
@@ -70,7 +74,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Enable Venus"),
_s("Enable the Venus help system"),
"venusenabled",
- true
+ true,
+ 0,
+ 0
}
},
@@ -80,7 +86,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Disable animation while turning"),
_s("Disable animation while turning in panorama mode"),
"noanimwhileturning",
- false
+ false,
+ 0,
+ 0
}
},
@@ -90,7 +98,9 @@ static const ADExtraGuiOptionsMap optionsList[] = {
_s("Use high resolution MPEG video"),
_s("Use MPEG video from the DVD version instead of lower resolution AVI"),
"mpegmovies",
- true
+ true,
+ 0,
+ 0
}
},
More information about the Scummvm-git-logs
mailing list