Changeset - r10712:3ee31720391b
[Not reviewed]
master
0 2 0
truebrain - 16 years ago 2009-01-13 00:10:58
truebrain@openttd.org
(svn r15044) -Add [NoAI]: AIConfig::GetVersion(), to get the version of the current AI
2 files changed with 15 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/ai/ai_config.cpp
Show inline comments
 
@@ -14,6 +14,7 @@ void AIConfig::ChangeAI(const char *name
 
	free((void *)this->name);
 
	this->name = (name == NULL) ? NULL : strdup(name);
 
	this->info = (name == NULL) ? NULL : AI::GetCompanyInfo(this->name);
 
	this->version = (info == NULL) ? -1 : info->GetVersion();
 

	
 
	for (SettingValueList::iterator it = this->settings.begin(); it != this->settings.end(); it++) {
 
		free((void*)(*it).first);
 
@@ -21,12 +22,11 @@ void AIConfig::ChangeAI(const char *name
 
	this->settings.clear();
 
}
 

	
 
AIConfig::AIConfig(const AIConfig *config) :
 
	name(NULL),
 
	info(NULL)
 
AIConfig::AIConfig(const AIConfig *config)
 
{
 
	this->name = (config->name == NULL) ? NULL : strdup(config->name);
 
	this->info = config->info;
 
	this->version = config->version;
 

	
 
	for (SettingValueList::const_iterator it = config->settings.begin(); it != config->settings.end(); it++) {
 
		this->settings[strdup((*it).first)] = (*it).second;
 
@@ -96,6 +96,11 @@ const char *AIConfig::GetName()
 
	return this->name;
 
}
 

	
 
int AIConfig::GetVersion()
 
{
 
	return this->version;
 
}
 

	
 
void AIConfig::StringToSettings(const char *value)
 
{
 
	char *value_copy = strdup(value);
src/ai/ai_config.hpp
Show inline comments
 
@@ -18,6 +18,7 @@ private:
 
public:
 
	AIConfig() :
 
		name(NULL),
 
		version(-1),
 
		info(NULL)
 
	{}
 
	AIConfig(const AIConfig *config);
 
@@ -71,6 +72,11 @@ public:
 
	const char *GetName();
 

	
 
	/**
 
	 * Get the version of the AI.
 
	 */
 
	int GetVersion();
 

	
 
	/**
 
	 * Convert a string which is stored in the config file or savegames to
 
	 *  custom settings of this AI.
 
	 */
 
@@ -84,6 +90,7 @@ public:
 

	
 
private:
 
	const char *name;
 
	int version;
 
	class AIInfo *info;
 
	SettingValueList settings;
 
};
0 comments (0 inline, 0 general)