Changeset - r28736:cf6dcf707eb1
[Not reviewed]
master
0 4 0
Loïc Guilloux - 10 months ago 2024-02-11 18:58:41
glx22@users.noreply.github.com
Change: [Script] Use company randomizer when adding random deviation (#12065)
4 files changed with 5 insertions and 5 deletions:
0 comments (0 inline, 0 general)
src/ai/ai_core.cpp
Show inline comments
 
@@ -56,7 +56,7 @@
 
		/* Load default data and store the name in the settings */
 
		config->Change(info->GetName(), -1, false);
 
	}
 
	if (deviate) config->AddRandomDeviation();
 
	if (deviate) config->AddRandomDeviation(company);
 
	config->AnchorUnchangeableSettings();
 

	
 
	c->ai_info = info;
src/game/game_core.cpp
Show inline comments
 
@@ -83,7 +83,7 @@
 
	GameInfo *info = config->GetInfo();
 
	if (info == nullptr) return;
 

	
 
	if (deviate) config->AddRandomDeviation();
 
	if (deviate) config->AddRandomDeviation(OWNER_DEITY);
 
	config->AnchorUnchangeableSettings();
 

	
 
	Backup<CompanyID> cur_company(_current_company, FILE_LINE);
src/script/script_config.cpp
Show inline comments
 
@@ -123,11 +123,11 @@ void ScriptConfig::ResetEditableSettings
 
	}
 
}
 

	
 
void ScriptConfig::AddRandomDeviation()
 
void ScriptConfig::AddRandomDeviation(CompanyID owner)
 
{
 
	for (const auto &item : *this->GetConfigList()) {
 
		if (item.random_deviation != 0) {
 
			this->SetSetting(item.name, ScriptObject::GetRandomizer(OWNER_NONE).Next(item.random_deviation * 2 + 1) - item.random_deviation + this->GetSetting(item.name));
 
			this->SetSetting(item.name, ScriptObject::GetRandomizer(owner).Next(item.random_deviation * 2 + 1) - item.random_deviation + this->GetSetting(item.name));
 
		}
 
	}
 
}
src/script/script_config.hpp
Show inline comments
 
@@ -135,7 +135,7 @@ public:
 
	/**
 
	 * Randomize all settings the Script requested to be randomized.
 
	 */
 
	void AddRandomDeviation();
 
	void AddRandomDeviation(CompanyID owner);
 

	
 
	/**
 
	 * Is this config attached to an Script? In other words, is there a Script
0 comments (0 inline, 0 general)