OpenTTD Source  20241120-master-g6d3adc6169
GameConfig Class Reference
Inheritance diagram for GameConfig:
ScriptConfig

Public Member Functions

 GameConfig (const GameConfig *config)
 
class GameInfoGetInfo () const
 
bool ResetInfo (bool force_exact_match)
 When ever the Game Scanner is reloaded, all infos become invalid. More...
 
- Public Member Functions inherited from ScriptConfig
 ScriptConfig (const ScriptConfig *config)
 Create a new Script config that is a copy of an existing config. More...
 
virtual ~ScriptConfig ()
 Delete an Script configuration.
 
void Change (std::optional< const std::string > name, int version=-1, bool force_exact_match=false)
 Set another Script to be loaded in this slot. More...
 
class ScriptInfoGetInfo () const
 Get the ScriptInfo linked to this ScriptConfig.
 
const ScriptConfigItemListGetConfigList ()
 Get the config list for this ScriptConfig.
 
void AnchorUnchangeableSettings ()
 As long as the default of a setting has not been changed, the value of the setting is not stored. More...
 
int GetSetting (const std::string &name) const
 Get the value of a setting for this config. More...
 
void SetSetting (const std::string_view name, int value)
 Set the value of a setting for this config.
 
void ResetSettings ()
 Reset all settings to their default value.
 
void ResetEditableSettings (bool yet_to_start)
 Reset only editable and visible settings to their default value.
 
bool HasScript () const
 Is this config attached to an Script? In other words, is there a Script that is assigned to this slot.
 
const std::string & GetName () const
 Get the name of the Script.
 
int GetVersion () const
 Get the version of the Script.
 
void StringToSettings (const std::string &value)
 Convert a string which is stored in the config file or savegames to custom settings of this Script.
 
std::string SettingsToString () const
 Convert the custom settings to a string that can be stored in the config file or savegames.
 
std::optional< std::string > GetTextfile (TextfileType type, CompanyID slot) const
 Search a textfile file next to this script. More...
 
void SetToLoadData (ScriptInstance::ScriptData *data)
 
ScriptInstance::ScriptData * GetToLoadData ()
 

Static Public Member Functions

static GameConfigGetConfig (ScriptSettingSource source=SSS_DEFAULT)
 Get the config of a company.
 

Protected Member Functions

ScriptInfoFindInfo (const std::string &name, int version, bool force_exact_match) override
 This function should call back to the Scanner in charge of this Config, to find the ScriptInfo belonging to a name+version.
 
- Protected Member Functions inherited from ScriptConfig
void ClearConfigList ()
 Routine that clears the config list.
 

Additional Inherited Members

- Public Types inherited from ScriptConfig
enum  ScriptSettingSource { SSS_DEFAULT , SSS_FORCE_NEWGAME , SSS_FORCE_GAME }
 Where to get the config from, either default (depends on current game mode) or force either newgame or normal. More...
 
- Protected Types inherited from ScriptConfig
typedef std::map< std::string, int > SettingValueList
 List with name=>value pairs of all script-specific settings.
 
- Protected Attributes inherited from ScriptConfig
std::string name
 Name of the Script.
 
int version
 Version of the Script.
 
class ScriptInfoinfo
 ScriptInfo object for related to this Script version.
 
SettingValueList settings
 List with all setting=>value pairs that are configure for this Script.
 
std::unique_ptr< ScriptConfigItemListconfig_list
 List with all settings defined by this Script.
 
std::unique_ptr< ScriptInstance::ScriptData > to_load_data
 Data to load after the Script start.
 

Detailed Description

Definition at line 15 of file game_config.hpp.

Member Function Documentation

◆ ResetInfo()

bool GameConfig::ResetInfo ( bool  force_exact_match)

When ever the Game Scanner is reloaded, all infos become invalid.

This function tells GameConfig about this.

Parameters
force_exact_matchIf true try to find the exact same version as specified. If false any version is ok.
Returns
true if the reset was successful, false if the Game was no longer found.

Definition at line 40 of file game_config.cpp.

References Game::FindInfo(), ScriptConfig::info, ScriptConfig::name, and ScriptConfig::version.


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