Add settings for town/industry cargo production scaling modes

This commit is contained in:
Jonathan G Rennison
2024-01-16 19:12:10 +00:00
parent 53d29852e4
commit 3ab31f5518
8 changed files with 103 additions and 3 deletions

View File

@@ -21,7 +21,9 @@ static void TownZoneModeChanged(int32_t new_value);
static void TownZoneCustomValueChanged(int32_t new_value);
static bool OrderTownGrowthRate(SettingOnGuiCtrlData &data);
static bool TownCargoScaleGUI(SettingOnGuiCtrlData &data);
static bool IndustryCargoScaleGUI(SettingOnGuiCtrlData &data);
static bool IndustryCargoScaleModeGUI(SettingOnGuiCtrlData &data);
static const SettingTable _economy_settings{
[post-amble]
@@ -715,6 +717,7 @@ strhelp = STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT
strval = STR_CONFIG_SETTING_CARGO_SCALE_VALUE
cat = SC_BASIC
post_cb = [](auto) { UpdateCargoScalers(); }
guiproc = TownCargoScaleGUI
[SDT_VAR]
var = economy.industry_cargo_scale
@@ -731,6 +734,35 @@ cat = SC_BASIC
post_cb = [](auto) { UpdateCargoScalers(); }
guiproc = IndustryCargoScaleGUI
[SDT_VAR]
var = economy.town_cargo_scale_mode
type = SLE_UINT8
flags = SF_GUI_DROPDOWN | SF_PATCH
def = CSM_MONTHLY
min = CSM_BEGIN
max = CSM_END - 1
interval = 1
str = STR_CONFIG_SETTING_TOWN_CARGO_SCALE_MODE
strhelp = STR_CONFIG_SETTING_CARGO_SCALE_MODE_HELPTEXT
strval = STR_CONFIG_SETTING_CARGO_SCALE_MODE_MONTHLY
cat = SC_BASIC
post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); UpdateCargoScalers(); }
[SDT_VAR]
var = economy.industry_cargo_scale_mode
type = SLE_UINT8
flags = SF_GUI_DROPDOWN | SF_PATCH
def = CSM_MONTHLY
min = CSM_BEGIN
max = CSM_END - 1
interval = 1
str = STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_MODE
strhelp = STR_CONFIG_SETTING_CARGO_SCALE_MODE_HELPTEXT
strval = STR_CONFIG_SETTING_CARGO_SCALE_MODE_MONTHLY
cat = SC_BASIC
post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); UpdateCargoScalers(); }
guiproc = IndustryCargoScaleModeGUI
[SDT_VAR]
var = economy.random_road_reconstruction
type = SLE_UINT16