Add a "default" mode to TT autofill rounding setting, set as default
Use game ticks per minute or day ticks
This commit is contained in:
@@ -1852,7 +1852,10 @@ STR_CONFIG_SETTING_TIMETABLE_SEPARATION_RATE_HELPTEXT :How much of the
|
|||||||
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Show arrival and departure in timetables: {STRING2}
|
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Show arrival and departure in timetables: {STRING2}
|
||||||
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Display anticipated arrival and departure times in timetables
|
STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Display anticipated arrival and departure times in timetables
|
||||||
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS :Round up auto-filled timetable times to multiples of this many ticks: {STRING2}
|
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS :Round up auto-filled timetable times to multiples of this many ticks: {STRING2}
|
||||||
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_HELPTEXT :Timetable times adjusted by timetable automation are not rounded. A day at a a day length of 1 is 74 ticks.
|
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_HELPTEXT :Timetable times adjusted by timetable automation are not rounded. A day at a day length of 1 is 74 ticks.{}By default the game ticks per minute value is used if using minutes, otherwise 74 ticks is used.
|
||||||
|
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_VALUE :{COMMA}{NBSP}tick{P 0 "" s}
|
||||||
|
###setting-zero-is-special
|
||||||
|
STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_DEFAULT :Default
|
||||||
|
|
||||||
STR_CONFIG_SETTING_QUICKGOTO :Quick creation of vehicle orders: {STRING2}
|
STR_CONFIG_SETTING_QUICKGOTO :Quick creation of vehicle orders: {STRING2}
|
||||||
STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-select the 'goto cursor' when opening the orders window
|
STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT :Pre-select the 'goto cursor' when opening the orders window
|
||||||
|
@@ -176,14 +176,14 @@ patxname = ""auto_timetable_separation_rate""
|
|||||||
base = CompanySettings
|
base = CompanySettings
|
||||||
var = timetable_autofill_rounding
|
var = timetable_autofill_rounding
|
||||||
type = SLE_UINT16
|
type = SLE_UINT16
|
||||||
flags = SF_PER_COMPANY
|
flags = SF_PER_COMPANY | SF_GUI_0_IS_SPECIAL
|
||||||
def = 74
|
def = 0
|
||||||
min = 1
|
min = 0
|
||||||
max = 1000
|
max = 1000
|
||||||
interval = 10
|
interval = 10
|
||||||
str = STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS
|
str = STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS
|
||||||
strhelp = STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_HELPTEXT
|
strhelp = STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_HELPTEXT
|
||||||
strval = STR_JUST_INT
|
strval = STR_CONFIG_SETTING_TIMETABLE_AUTOFILL_ROUNDING_TICKS_VALUE
|
||||||
cat = SC_EXPERT
|
cat = SC_EXPERT
|
||||||
patxname = ""timetable_autofill_rounding""
|
patxname = ""timetable_autofill_rounding""
|
||||||
|
|
||||||
|
@@ -886,7 +886,8 @@ void UpdateVehicleTimetable(Vehicle *v, bool travelling)
|
|||||||
* Thus always make sure at least one tick is used between the
|
* Thus always make sure at least one tick is used between the
|
||||||
* processing of different orders when filling the timetable. */
|
* processing of different orders when filling the timetable. */
|
||||||
Company *owner = Company::GetIfValid(v->owner);
|
Company *owner = Company::GetIfValid(v->owner);
|
||||||
uint rounding_factor = owner ? owner->settings.timetable_autofill_rounding : DAY_TICKS;
|
uint rounding_factor = owner ? owner->settings.timetable_autofill_rounding : 0;
|
||||||
|
if (rounding_factor == 0) rounding_factor = _settings_game.game_time.time_in_minutes ? _settings_game.game_time.ticks_per_minute : DAY_TICKS;
|
||||||
uint time_to_set = CeilDiv(std::max(time_taken, 1U), rounding_factor) * rounding_factor;
|
uint time_to_set = CeilDiv(std::max(time_taken, 1U), rounding_factor) * rounding_factor;
|
||||||
|
|
||||||
if (travel_field && (autofilling || !real_timetable_order->IsTravelTimetabled())) {
|
if (travel_field && (autofilling || !real_timetable_order->IsTravelTimetabled())) {
|
||||||
|
Reference in New Issue
Block a user