diff options
Diffstat (limited to 'engines/kyra/detection.cpp')
-rw-r--r-- | engines/kyra/detection.cpp | 86 |
1 files changed, 85 insertions, 1 deletions
diff --git a/engines/kyra/detection.cpp b/engines/kyra/detection.cpp index 46dfec84ff..be4523a2e0 100644 --- a/engines/kyra/detection.cpp +++ b/engines/kyra/detection.cpp @@ -30,6 +30,7 @@ #include "common/config-manager.h" #include "common/system.h" #include "common/savefile.h" +#include "common/translation.h" #include "engines/advancedDetector.h" @@ -50,11 +51,94 @@ const char *const directoryGlobs[] = { 0 }; +const ADExtraGuiOptionsMap gameGuiOptions[] = { + // Kyrandia 3 options + + // I18N: Studio audience adds an applause and cheering sounds whenever + // Malcolm makes a joke. + { + GAMEOPTION_KYRA3_AUDIENCE, + { + _s("Studio audience"), + _s("Enable studio audience"), + "studio_audience", + true + } + }, + + // I18N: When enabled, this option allows the user to skip text and cutscenes. + { + GAMEOPTION_KYRA3_SKIP, + { + _s("Skip support"), + _s("Allow text and cutscenes to be skipped"), + "skip_support", + true + } + }, + + // I18N: Helium mode makes people sound like they've inhaled Helium. + { + GAMEOPTION_KYRA3_HELIUM, + { + _s("Helium mode"), + _s("Enable helium mode"), + "helium_mode", + false + } + }, + +#ifdef ENABLE_LOL + // LoL options + + // I18N: When enabled, this option makes scrolling smoother when changing + // from one screen to another. + { + GAMEOPTION_LOL_SCROLLING, + { + _s("Smooth scrolling"), + _s("Enable smooth scrolling when walking"), + "smooth_scrolling", + true + } + }, + + // I18N: When enabled, this option changes the cursor when it floats to the + // edge of the screen to a directional arrow. The player can then click to + // walk towards that direction. + { + GAMEOPTION_LOL_CURSORS, + { + _s("Floating cursors"), + _s("Enable floating cursors"), + "floating_cursors", + false + } + }, +#endif + +#ifdef ENABLE_EOB + // EoB options + + { + GAMEOPTION_EOB_HPGRAPHS, + { + _s("HP bar graphs"), + _s("Enable hit point bar graphs"), + "hpbargraphs", + true + } + }, +#endif + + AD_EXTRA_GUI_OPTIONS_TERMINATOR +}; + } // End of anonymous namespace class KyraMetaEngine : public AdvancedMetaEngine { public: - KyraMetaEngine() : AdvancedMetaEngine(adGameDescs, sizeof(KYRAGameDescription), gameList) { + KyraMetaEngine() : AdvancedMetaEngine(adGameDescs, sizeof(KYRAGameDescription), gameList, gameGuiOptions) { _md5Bytes = 1024 * 1024; _maxScanDepth = 2; _directoryGlobs = directoryGlobs; |