Remove: [Script] random_deviation from setting description table (#12221)

This commit is contained in:
Loïc Guilloux
2024-03-05 12:41:04 +01:00
committed by GitHub
parent 0fd576bfbc
commit 845b894fd8
14 changed files with 28 additions and 137 deletions

View File

@@ -31,9 +31,8 @@ public:
/**
* Start up a new GameScript.
* @param deviate Whether to apply random deviation to the configured GameScript.
*/
static void StartNew(bool deviate = true);
static void StartNew();
/**
* Uninitialize the Game system.

View File

@@ -69,7 +69,7 @@
}
}
/* static */ void Game::StartNew(bool deviate)
/* static */ void Game::StartNew()
{
if (Game::instance != nullptr) return;
@@ -83,7 +83,6 @@
GameInfo *info = config->GetInfo();
if (info == nullptr) return;
if (deviate) config->AddRandomDeviation(OWNER_DEITY);
config->AnchorUnchangeableSettings();
Backup<CompanyID> cur_company(_current_company, FILE_LINE);

View File

@@ -199,18 +199,10 @@ struct GSConfigWindow : public Window {
TextColour colour;
uint idx = 0;
if (config_item.description.empty()) {
if (Game::GetInstance() == nullptr && config_item.random_deviation != 0) {
str = STR_AI_SETTINGS_JUST_DEVIATION;
} else {
str = STR_JUST_STRING1;
}
str = STR_JUST_STRING1;
colour = TC_ORANGE;
} else {
if (Game::GetInstance() == nullptr && config_item.random_deviation != 0) {
str = STR_AI_SETTINGS_SETTING_DEVIATION;
} else {
str = STR_AI_SETTINGS_SETTING;
}
str = STR_AI_SETTINGS_SETTING;
colour = TC_LIGHT_BLUE;
SetDParamStr(idx++, config_item.description);
}
@@ -225,35 +217,13 @@ struct GSConfigWindow : public Window {
DrawArrowButtons(br.left, y + button_y_offset, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, editable && current_value > config_item.min_value, editable && current_value < config_item.max_value);
}
if (Game::GetInstance() != nullptr || config_item.random_deviation == 0) {
auto config_iterator = config_item.labels.find(current_value);
if (config_iterator != config_item.labels.end()) {
SetDParam(idx++, STR_JUST_RAW_STRING);
SetDParamStr(idx++, config_iterator->second);
} else {
SetDParam(idx++, STR_JUST_INT);
SetDParam(idx++, current_value);
}
auto config_iterator = config_item.labels.find(current_value);
if (config_iterator != config_item.labels.end()) {
SetDParam(idx++, STR_JUST_RAW_STRING);
SetDParamStr(idx++, config_iterator->second);
} else {
int min_deviated = std::max(config_item.min_value, current_value - config_item.random_deviation);
auto config_iterator = config_item.labels.find(min_deviated);
if (config_iterator != config_item.labels.end()) {
SetDParam(idx++, STR_JUST_RAW_STRING);
SetDParamStr(idx++, config_iterator->second);
} else {
SetDParam(idx++, STR_JUST_INT);
SetDParam(idx++, min_deviated);
}
int max_deviated = std::min(config_item.max_value, current_value + config_item.random_deviation);
config_iterator = config_item.labels.find(max_deviated);
if (config_iterator != config_item.labels.end()) {
SetDParam(idx++, STR_JUST_RAW_STRING);
SetDParamStr(idx++, config_iterator->second);
} else {
SetDParam(idx++, STR_JUST_INT);
SetDParam(idx++, max_deviated);
}
SetDParam(idx++, STR_JUST_INT);
SetDParam(idx++, current_value);
}
}