Change: [Script] Use company randomizer when adding random deviation (#12065)

pull/661/head
Loïc Guilloux 4 months ago committed by GitHub
parent 378dab3750
commit 8d9fa0ea89
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -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;

@ -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);

@ -123,11 +123,11 @@ void ScriptConfig::ResetEditableSettings(bool yet_to_start)
}
}
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));
}
}
}

@ -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

Loading…
Cancel
Save