Add string code for absolute timetable time

pull/661/head
Jonathan G Rennison 3 months ago
parent 6b12539e3f
commit 45b6079899

@ -13,6 +13,7 @@ STR_JUST_VELOCITY :{VELOCITY}
STR_JUST_TT_TICKS :{TT_TICKS}
STR_JUST_TT_TICKS_LONG :{TT_TICKS_LONG}
STR_JUST_TT_TIME :{TT_TIME}
STR_JUST_TT_TIME_ABS :{TT_TIME_ABS}
STR_JUST_STATION :{STATION}
STR_RED_INT :{RED}{NUM}

@ -1602,10 +1602,11 @@ static void FormatString(StringBuilder builder, const char *str_arg, StringParam
}
break;
case SCC_TT_TIME: { // {TT_TIME}
case SCC_TT_TIME: // {TT_TIME}
case SCC_TT_TIME_ABS: { // {TT_TIME_ABS}
if (_settings_time.time_in_minutes) {
FormatStateTicksHHMMString(builder, args.GetNextParameter<StateTicks>(), next_substr_case_index);
} else if (EconTime::UsingWallclockUnits()) {
} else if (EconTime::UsingWallclockUnits() && b == SCC_TT_TIME) {
StateTicks tick = args.GetNextParameter<StateTicks>();
StateTicksDelta offset = tick - _state_ticks;
auto tmp_params = MakeParameters(offset / TICKS_PER_SECOND);

@ -87,6 +87,7 @@ enum StringControlCode {
SCC_TT_TICKS,
SCC_TT_TICKS_LONG,
SCC_TT_TIME,
SCC_TT_TIME_ABS,
/* Must be consecutive */
SCC_STRING1,

@ -108,6 +108,7 @@ static const CmdStruct _cmd_structs[] = {
{"TT_TICKS", EmitSingleChar, SCC_TT_TICKS, 1, -1, C_NONE},
{"TT_TICKS_LONG", EmitSingleChar, SCC_TT_TICKS_LONG, 1, -1, C_NONE},
{"TT_TIME", EmitSingleChar, SCC_TT_TIME, 1, -1, C_NONE},
{"TT_TIME_ABS", EmitSingleChar, SCC_TT_TIME_ABS, 1, -1, C_NONE},
{"STRING", EmitSingleChar, SCC_STRING, 1, -1, C_CASE | C_GENDER},
{"RAW_STRING", EmitSingleChar, SCC_RAW_STRING_POINTER, 1, -1, C_NONE | C_GENDER},

Loading…
Cancel
Save