diff options
Diffstat (limited to 'engines/game.h')
-rw-r--r-- | engines/game.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/engines/game.h b/engines/game.h index 1cf2c4b39d..9082d93793 100644 --- a/engines/game.h +++ b/engines/game.h @@ -47,6 +47,15 @@ struct PlainGameDescriptor { const PlainGameDescriptor *findPlainGameDescriptor(const char *gameid, const PlainGameDescriptor *list); /** + * Ths is an enum to describe how done a game is. This also indicates what level of support is expected. + */ +enum GameSupportLevel { + kStableGame = 0, // the game is fully supported + kTestingGame, // the game is not supposed to end up in releases yet but is ready for public testing + kUnstableGame // the game is not even ready for public testing yet +}; + +/** * A hashmap describing details about a given game. In a sense this is a refined * version of PlainGameDescriptor, as it also contains a gameid and a description string. * But in addition, platform and language settings, as well as arbitrary other settings, @@ -61,7 +70,8 @@ public: const Common::String &description, Common::Language language = Common::UNK_LANG, Common::Platform platform = Common::kPlatformUnknown, - uint32 guioptions = 0); + uint32 guioptions = 0, + GameSupportLevel gsl = kStableGame); /** * Update the description string by appending (EXTRA/PLATFORM/LANG) to it. @@ -73,6 +83,12 @@ public: void setGUIOptions(uint32 options); void appendGUIOptions(const Common::String &str); + /** + * What level of support is expected of this game + */ + GameSupportLevel getSupportLevel(); + void setSupportLevel(GameSupportLevel gsl); + Common::String &gameid() { return getVal("gameid"); } Common::String &description() { return getVal("description"); } const Common::String &gameid() const { return getVal("gameid"); } |