OpenTTD Source: Game Class Reference

OpenTTD Source 14.0-RC3

Static Public Member Functions | Static Private Attributes
Game Class Reference

Main Game class. More...

`#include <game.hpp>`

## Static Public Member Functions
static void | GameLoop ()
| Called every game-tick to let Game do something.
static void | Initialize ()
| Initialize the Game system.
static void | StartNew ()
| Start up a new GameScript.
static void | Uninitialize (bool keepConfig)
| Uninitialize the Game system.
static void | Pause ()
| Suspends the Game Script and then pause the execution of the script. More...
static void | Unpause ()
| Resume execution of the Game Script. More...
static bool | IsPaused ()
| Checks if the Game Script is paused. More...
static void | NewEvent (class ScriptEvent *event)
| Queue a new event for a Game Script.
static class GameInstance * | GetGameInstance ()
| Get the current GameScript instance.
static class GameInfo * | GetInfo ()
| Get the current GameInfo.
static void | Rescan ()
static void | ResetConfig ()
static void | Save ()
| Save data from a GameScript to a savegame.
static void | GetConsoleList (std::back_insert_iterator< std::string > &output_iterator, bool newest_only)
| Wrapper function for GameScanner::GetConsoleList.
static void | GetConsoleLibraryList (std::back_insert_iterator< std::string > &output_iterator)
| Wrapper function for GameScanner::GetConsoleLibraryList.
static const ScriptInfoList * | GetInfoList ()
| Wrapper function for GameScanner::GetInfoList.
static const ScriptInfoList * | GetUniqueInfoList ()
| Wrapper function for GameScanner::GetUniqueInfoList.
static class GameInfo * | FindInfo (const std::string &name, int version, bool force_exact_match)
| Wrapper function for GameScannerInfo::FindInfo.
static class GameLibrary * | FindLibrary (const std::string &library, int version)
| Wrapper function for GameScanner::FindLibrary.
static class GameInstance * | GetInstance ()
| Get the current active instance.
static bool | HasGame (const struct ContentInfo *ci, bool md5sum)
| Wrapper function for GameScanner::HasGame. More...
static bool | HasGameLibrary (const ContentInfo *ci, bool md5sum)
static GameScannerInfo * | GetScannerInfo ()
| Gets the ScriptScanner instance that is used to find Game scripts.
static GameScannerLibrary * | GetScannerLibrary ()
| Gets the ScriptScanner instance that is used to find Game Libraries.

## Static Private Attributes
static uint | frame_counter = 0
| Tick counter for the Game code.
static class GameInstance * | instance = nullptr
| Instance to the current active Game.
static class GameScannerInfo * | scanner_info = nullptr
| Scanner for Game scripts.
static class GameScannerLibrary * | scanner_library = nullptr
| Scanner for GS Libraries.
static class GameInfo * | info = nullptr
| Current selected GameInfo.

## Detailed Description

Main Game class.

Contains all functions needed to start, stop, save and load Game Scripts.

Definition at line 20 of file game.hpp.

## Member Function Documentation

## ◆ HasGame()

bool Game::HasGame | ( | const struct ContentInfo * | ci,
|  | bool | md5sum
| ) |  |
| static

Wrapper function for GameScanner::HasGame.

Check whether we have an Game (library) with the exact characteristics as ci.

Parameters

  ci | the characteristics to search on (shortname and md5sum)
  md5sum | whether to check the MD5 checksum

Returns
  true iff we have an Game (library) matching.

Definition at line 258 of file game_core.cpp.

References ScriptScanner::HasScript(), and scanner_info.

Referenced by ClientNetworkContentSocketHandler::Receive_SERVER_INFO().

## ◆ IsPaused()

bool Game::IsPaused | ( |  | ) |
| static

Checks if the Game Script is paused.

Returns
  true if the Game Script is paused, otherwise false.

Definition at line 141 of file game_core.cpp.

References instance, and ScriptInstance::IsPaused().

## ◆ Pause()

void Game::Pause | ( |  | ) |
| static

Suspends the Game Script and then pause the execution of the script.

The script will not be resumed from its suspended state until the script has been unpaused.

Definition at line 131 of file game_core.cpp.

References instance, and ScriptInstance::Pause().

Referenced by ScriptDebugWindow::OnInvalidateData().

## ◆ Unpause()

void Game::Unpause | ( |  | ) |
| static

Resume execution of the Game Script.

This function will not actually execute the script, but set a flag so that the script is executed by the usual mechanism that executes the script.

Definition at line 136 of file game_core.cpp.

References instance, and ScriptInstance::Unpause().

The documentation for this class was generated from the following files:

- src/game/game.hpp
- src/game/game_core.cpp