Add setting text/warnings about why YAPF is recommended for trains

This commit is contained in:
Jonathan G Rennison
2024-01-12 17:19:12 +00:00
parent a0861347db
commit 78e08d5711
3 changed files with 32 additions and 0 deletions

View File

@@ -775,6 +775,8 @@ STR_CONFIG_SETTING_NETWORK_CHANGE_NOT_ALLOWED_NEWGRF :{WHITE}...setti
STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Show timetable in ticks rather than days: {STRING2} STR_CONFIG_SETTING_TIMETABLE_IN_TICKS :Show timetable in ticks rather than days: {STRING2}
STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Show travel times in time tables in game ticks instead of days STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT :Show travel times in time tables in game ticks instead of days
STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT_EXTRA :{STRING}{}Various features require use of the YAPF pathfinder, including: routing restrictions (all pathfinder and reservation related actions), reverse at waypoint/signal and drive through train depots.
STR_CHEAT_EDIT_MONEY_QUERY_CAPT :{WHITE}Increase or decrease money STR_CHEAT_EDIT_MONEY_QUERY_CAPT :{WHITE}Increase or decrease money
STR_CHEAT_INFLATION_COST :{LTBLUE}Change inflation cost factor: {ORANGE}{DECIMAL} STR_CHEAT_INFLATION_COST :{LTBLUE}Change inflation cost factor: {ORANGE}{DECIMAL}
STR_CHEAT_INFLATION_COST_QUERY_CAPT :{WHITE}Change inflation cost factor STR_CHEAT_INFLATION_COST_QUERY_CAPT :{WHITE}Change inflation cost factor

View File

@@ -2026,6 +2026,33 @@ static bool ChunnelSettingGUI(SettingOnGuiCtrlData &data)
} }
} }
static bool TrainPathfinderSettingGUI(SettingOnGuiCtrlData &data)
{
switch (data.type) {
case SOGCT_DESCRIPTION_TEXT:
SetDParam(0, data.text);
data.text = STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT_EXTRA;
return true;
case SOGCT_GUI_SPRITE:
if (data.val != VPF_YAPF) {
data.output = SPR_WARNING_SIGN;
return true;
}
return false;
case SOGCT_GUI_WARNING_TEXT:
if (data.val != VPF_YAPF) {
data.text = STR_CONFIG_SETTING_ADVISED_LEAVE_DEFAULT;
return true;
}
return false;
default:
return false;
}
}
/* End - GUI callbacks */ /* End - GUI callbacks */
/** /**

View File

@@ -11,6 +11,8 @@
static void InvalidateShipPathCache(int32_t new_value); static void InvalidateShipPathCache(int32_t new_value);
static void CheckYapfRailSignalPenalties(int32_t new_value); static void CheckYapfRailSignalPenalties(int32_t new_value);
static bool TrainPathfinderSettingGUI(SettingOnGuiCtrlData &data);
static const SettingTable _pathfinding_settings{ static const SettingTable _pathfinding_settings{
[post-amble] [post-amble]
}; };
@@ -115,6 +117,7 @@ str = STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS
strhelp = STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT strhelp = STR_CONFIG_SETTING_PATHFINDER_FOR_TRAINS_HELPTEXT
strval = STR_CONFIG_SETTING_PATHFINDER_NPF strval = STR_CONFIG_SETTING_PATHFINDER_NPF
cat = SC_EXPERT cat = SC_EXPERT
guiproc = TrainPathfinderSettingGUI
[SDT_VAR] [SDT_VAR]
var = pf.pathfinder_for_roadvehs var = pf.pathfinder_for_roadvehs