OpenTTD Source  20240917-master-g9ab0a47812
AIConfig Class Reference
Inheritance diagram for AIConfig:
ScriptConfig

Public Member Functions

 AIConfig (const AIConfig *config)
 
class AIInfoGetInfo () const
 
bool ResetInfo (bool force_exact_match)
 When ever the AI 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 AIConfigGetConfig (CompanyID company, 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 16 of file ai_config.hpp.

Member Function Documentation

◆ ResetInfo()

bool AIConfig::ResetInfo ( bool  force_exact_match)

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

This function tells AIConfig 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 AI was no longer found.

Definition at line 48 of file ai_config.cpp.

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

Referenced by AI::ResetConfig().


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