28 class ArticleDefinition;
32 typedef std::vector<ArticleDefinition *> ArticleDefinitionList;
37 static const std::string UFOPAEDIA_NOT_AVAILABLE =
"STR_NOT_AVAILABLE";
68 static void list(
SavedGame *save,
Mod *rule,
const std::string §ion, ArticleDefinitionList &data);
The game data that gets written to disk when the game is saved.
Definition: SavedGame.h:99
static bool isArticleAvailable(SavedGame *save, ArticleDefinition *article)
check, if a specific article is currently available.
Definition: Ufopaedia.cpp:55
Contains all the game-specific static data that never changes throughout the game, like rulesets and resources.
Definition: Mod.h:87
static void prev(Game *game)
article navigation to previous article.
Definition: Ufopaedia.cpp:214
static void openArticle(Game *game, const std::string &article_id)
open Ufopaedia on a certain entry.
Definition: Ufopaedia.cpp:170
static void list(SavedGame *save, Mod *rule, const std::string §ion, ArticleDefinitionList &data)
load a vector with article ids that are currently visible of a given section.
Definition: Ufopaedia.cpp:237
static void open(Game *game)
open Ufopaedia with selection dialog.
Definition: Ufopaedia.cpp:185
static size_t getArticleIndex(SavedGame *save, Mod *rule, std::string &article_id)
get index of the given article id in the visible list.
Definition: Ufopaedia.cpp:68
ArticleDefinition is the base class for all article types.
Definition: ArticleDefinition.h:54
static ArticleDefinitionList getAvailableArticles(SavedGame *save, Mod *rule)
get list of researched articles
Definition: Ufopaedia.cpp:255
UfopaediaArticle is the base class for all articles of various types.
Definition: ArticleState.h:37
The core of the game engine, manages the game's entire contents and structure.
Definition: Game.h:41
static size_t _current_index
current selected article index (for prev/next navigation).
Definition: Ufopaedia.h:73
static void next(Game *game)
article navigation to next article.
Definition: Ufopaedia.cpp:194
static ArticleState * createArticleState(ArticleDefinition *article)
create a new state object from article definition.
Definition: Ufopaedia.cpp:107
Definition: BaseInfoState.cpp:40
This static class encapsulates all functions related to Ufopaedia for the game.
Definition: Ufopaedia.h:46