15#include "../script/api/script_event_types.hpp"
67 static void NewEvent(
class ScriptEvent *event);
93 static void GetConsoleList(std::back_insert_iterator<std::string> &output_iterator,
bool newest_only);
95 static void GetConsoleLibraryList(std::back_insert_iterator<std::string> &output_iterator,
bool newest_only);
101 static class GameInfo *
FindInfo(
const std::string &name,
int version,
bool force_exact_match);
All static information from an Game like name, version, etc.
Runtime information about a game script like a pointer to the squirrel vm and the current state.
All static information from an Game library like name, version, etc.
Game instantiation of a ScriptScanner.
Game instantiation of a ScriptScanner for libraries.
static void StartNew()
Start up a new GameScript.
static GameInfo * info
Current selected GameInfo.
static bool HasGameLibrary(const ContentInfo &ci, bool md5sum)
Check whether we have an Game library with the exact characteristics as ci.
static class GameInfo * FindInfo(const std::string &name, int version, bool force_exact_match)
Finds the appropriate ScriptInfo for a given script name and version.
static class GameInfo * GetInfo()
Get the current GameInfo.
static bool HasGame(const ContentInfo &ci, bool md5sum)
Wrapper function for GameScanner::HasGame.
static GameScannerLibrary * GetScannerLibrary()
Gets the ScriptScanner instance that is used to find Game Libraries.
static void ResetConfig()
Reset all GameConfigs, and make them reload their GameInfo.
static void Unpause()
Resume execution of the Game Script.
static bool IsPaused()
Checks if the Game Script is paused.
static uint frame_counter
Tick counter for the Game code.
static std::unique_ptr< GameInstance > instance
Instance to the current active Game.
static void Save()
Save data from a GameScript to a savegame.
static void Rescan()
Rescans all searchpaths for available Game scripts.
static void ResetInstance()
Reset the current active instance.
static class GameLibrary * FindLibrary(const std::string &library, int version)
Find a library.
static void GetConsoleLibraryList(std::back_insert_iterator< std::string > &output_iterator, bool newest_only)
Get the list of registered scripts to print on the console.
static const ScriptInfoList * GetUniqueInfoList()
Get the list of the latest version of all registered scripts.
static void Pause()
Suspends the Game Script and then pause the execution of the script.
static void NewEvent(class ScriptEvent *event)
Queue a new event for the game script.
static class GameInstance * GetInstance()
Get the current active instance.
static void GameLoop()
Called every game-tick to let Game do something.
static void GetConsoleList(std::back_insert_iterator< std::string > &output_iterator, bool newest_only)
Get the list of registered scripts to print on the console.
static void Uninitialize(bool keepConfig)
Uninitialize the Game system.
static std::unique_ptr< GameScannerInfo > scanner_info
Scanner for Game scripts.
static const ScriptInfoList * GetInfoList()
Get the list of all registered scripts.
static void Initialize()
Initialize the Game system.
static std::unique_ptr< GameScannerLibrary > scanner_library
Scanner for GS Libraries.
static GameScannerInfo * GetScannerInfo()
Gets the ScriptScanner instance that is used to find Game scripts.
Declarations of the class for GS scanner.
std::map< std::string, class ScriptInfo *, CaseInsensitiveComparator > ScriptInfoList
Type for the list of scripts.
Container for all important information about a piece of content.