19 #ifndef OPENXCOM_UFOPAEDIA_H
20 #define OPENXCOM_UFOPAEDIA_H
30 class ArticleDefinition;
37 static const std::string UFOPAEDIA_XCOM_CRAFT_ARMAMENT =
"STR_XCOM_CRAFT_ARMAMENT";
38 static const std::string UFOPAEDIA_HEAVY_WEAPONS_PLATFORMS =
"STR_HEAVY_WEAPONS_PLATFORMS";
39 static const std::string UFOPAEDIA_WEAPONS_AND_EQUIPMENT =
"STR_WEAPONS_AND_EQUIPMENT";
40 static const std::string UFOPAEDIA_ALIEN_ARTIFACTS =
"STR_ALIEN_ARTIFACTS";
41 static const std::string UFOPAEDIA_BASE_FACILITIES =
"STR_BASE_FACILITIES";
42 static const std::string UFOPAEDIA_ALIEN_LIFE_FORMS =
"STR_ALIEN_LIFE_FORMS";
43 static const std::string UFOPAEDIA_ALIEN_RESEARCH =
"STR_ALIEN_RESEARCH_UC";
44 static const std::string UFOPAEDIA_UFO_COMPONENTS =
"STR_UFO_COMPONENTS";
45 static const std::string UFOPAEDIA_UFOS =
"STR_UFOS";
46 static const std::string UFOPAEDIA_NOT_AVAILABLE =
"STR_NOT_AVAILABLE";
The game data that gets written to disk when the game is saved.
Definition: SavedGame.h:80
static bool isArticleAvailable(SavedGame *save, ArticleDefinition *article)
check, if a specific article is currently available.
Definition: Ufopaedia.cpp:47
static void openArticle(Game *game, std::string &article_id)
open Ufopaedia on a certain entry.
Definition: Ufopaedia.cpp:149
static void prev(Game *game)
article navigation to previous article.
Definition: Ufopaedia.cpp:192
static void open(Game *game)
open Ufopaedia with selection dialog.
Definition: Ufopaedia.cpp:163
Set of rules and stats for a game.
Definition: Ruleset.h:69
static ArticleState * createArticleState(Game *game, ArticleDefinition *article)
create a new state object from article definition.
Definition: Ufopaedia.cpp:93
ArticleDefinition is the base class for all article types.
Definition: ArticleDefinition.h:49
UfopaediaArticle is the base class for all articles of various types.
Definition: ArticleState.h:40
static ArticleDefinitionList getAvailableArticles(SavedGame *save, Ruleset *rule)
get list of researched articles
Definition: Ufopaedia.cpp:233
The core of the game engine, manages the game's entire contents and structure.
Definition: Game.h:44
static size_t _current_index
current selected article index (for prev/next navigation).
Definition: Ufopaedia.h:86
std::vector< ArticleDefinition * > ArticleDefinitionList
definition of an article list
Definition: Ufopaedia.h:31
static void next(Game *game)
article navigation to next article.
Definition: Ufopaedia.cpp:172
static void list(SavedGame *save, Ruleset *rule, const std::string §ion, ArticleDefinitionList &data)
load a vector with article ids that are currently visible of a given section.
Definition: Ufopaedia.cpp:215
static size_t getArticleIndex(SavedGame *save, Ruleset *rule, std::string &article_id)
get index of the given article id in the visible list.
Definition: Ufopaedia.cpp:60
This static class encapsulates all functions related to Ufopaedia for the game.
Definition: Ufopaedia.h:59