QUEEN: Move the engine options into the MetaEngine subclass

This commit is contained in:
Cameron Cawley 2022-11-03 21:33:34 +00:00 committed by Eugene Sandulenko
parent 37ee0ca0ef
commit ac5858ba65
4 changed files with 37 additions and 33 deletions

View File

@ -1 +1 @@
engines/queen/detection.cpp
engines/queen/metaengine.cpp

View File

@ -25,7 +25,6 @@
#include "common/gui_options.h"
#include "common/file.h"
#include "common/translation.h"
#include "queen/detection.h"
#include "queen/resource.h"
@ -35,36 +34,6 @@ static const PlainGameDescriptor queenGames[] = {
{nullptr, nullptr}
};
#define GAMEOPTION_ALT_INTRO GUIO_GAMEOPTIONS1
#define GAMEOPTION_ALT_FONT GUIO_GAMEOPTIONS2
static const ADExtraGuiOptionsMap optionsList[] = {
{
GAMEOPTION_ALT_INTRO,
{
_s("Alternative intro"),
_s("Use an alternative game intro (CD version only)"),
"alt_intro",
false,
0,
0
}
},
{
GAMEOPTION_ALT_FONT,
{
_s("Improved font"),
_s("Use an easier to read custom font"),
"alt_font",
false,
0,
0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
};
namespace Queen {
static const QueenGameDescription gameDescriptions[] = {
@ -494,7 +463,7 @@ static const QueenGameDescription gameDescriptions[] = {
class QueenMetaEngineDetection : public AdvancedMetaEngineDetection {
public:
QueenMetaEngineDetection() : AdvancedMetaEngineDetection(Queen::gameDescriptions, sizeof(Queen::QueenGameDescription), queenGames, optionsList) {
QueenMetaEngineDetection() : AdvancedMetaEngineDetection(Queen::gameDescriptions, sizeof(Queen::QueenGameDescription), queenGames) {
}
const char *getName() const override {

View File

@ -28,6 +28,9 @@ struct QueenGameDescription {
ADGameDescription desc;
};
#define GAMEOPTION_ALT_INTRO GUIO_GAMEOPTIONS1
#define GAMEOPTION_ALT_FONT GUIO_GAMEOPTIONS2
} // End of namespace Queen
#endif // QUEEN_DETECTION_H

View File

@ -23,17 +23,49 @@
#include "common/savefile.h"
#include "common/system.h"
#include "common/translation.h"
#include "queen/queen.h"
#include "queen/resource.h"
#include "queen/detection.h"
static const ADExtraGuiOptionsMap optionsList[] = {
{
GAMEOPTION_ALT_INTRO,
{
_s("Alternative intro"),
_s("Use an alternative game intro (CD version only)"),
"alt_intro",
false,
0,
0
}
},
{
GAMEOPTION_ALT_FONT,
{
_s("Improved font"),
_s("Use an easier to read custom font"),
"alt_font",
false,
0,
0
}
},
AD_EXTRA_GUI_OPTIONS_TERMINATOR
};
class QueenMetaEngine : public AdvancedMetaEngine {
public:
const char *getName() const override {
return "queen";
}
const ADExtraGuiOptionsMap *getAdvancedExtraGuiOptions() const override {
return optionsList;
}
bool hasFeature(MetaEngineFeature f) const override;
Common::Error createInstance(OSystem *syst, Engine **engine, const ADGameDescription *desc) const override;
SaveStateList listSaves(const char *target) const override;