mirror of https://github.com/OpenTTD/OpenTTD
Compare commits
2 Commits
86996bc7f8
...
b96da4d7a0
Author | SHA1 | Date |
---|---|---|
|
b96da4d7a0 | |
|
ffed3c7f1c |
|
@ -1226,7 +1226,7 @@ STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Expand a
|
|||
STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Collapse all
|
||||
STR_CONFIG_SETTING_RESET_ALL :{BLACK}Reset all values
|
||||
STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(no explanation available)
|
||||
STR_CONFIG_SETTING_VALUE :{PUSH_COLOUR}{ORANGE}{STRING1}{POP_COLOUR}
|
||||
STR_CONFIG_SETTING_VALUE :{ORANGE}{STRING1}
|
||||
STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Default value: {ORANGE}{STRING1}
|
||||
STR_CONFIG_SETTING_TYPE :{LTBLUE}Setting type: {ORANGE}{STRING}
|
||||
STR_CONFIG_SETTING_TYPE_CLIENT :Client setting (not stored in saves; affects all games)
|
||||
|
@ -3631,17 +3631,17 @@ STR_NEWGRF_LIST_COMPATIBLE :{YELLOW}Found c
|
|||
STR_NEWGRF_LIST_MISSING :{RED}Missing files
|
||||
|
||||
# NewGRF 'it's broken' warnings
|
||||
STR_NEWGRF_BROKEN :{WHITE}Behaviour of NewGRF '{PUSH_COLOUR}{0:RAW_STRING}{POP_COLOUR}' is likely to cause desyncs and/or crashes
|
||||
STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}It changed powered-wagon state for '{PUSH_COLOUR}{1:ENGINE}{POP_COLOUR}' when not inside a depot
|
||||
STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}It changed vehicle length for '{PUSH_COLOUR}{1:ENGINE}{POP_COLOUR}' when not inside a depot
|
||||
STR_NEWGRF_BROKEN_CAPACITY :{WHITE}It changed vehicle capacity for '{PUSH_COLOUR}{1:ENGINE}{POP_COLOUR}' when not inside a depot or refitting
|
||||
STR_NEWGRF_BROKEN :{WHITE}Behaviour of NewGRF '{0:RAW_STRING}' is likely to cause desyncs and/or crashes
|
||||
STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}It changed powered-wagon state for '{1:ENGINE}' when not inside a depot
|
||||
STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}It changed vehicle length for '{1:ENGINE}' when not inside a depot
|
||||
STR_NEWGRF_BROKEN_CAPACITY :{WHITE}It changed vehicle capacity for '{1:ENGINE}' when not inside a depot or refitting
|
||||
STR_BROKEN_VEHICLE_LENGTH :{WHITE}Train '{VEHICLE}' belonging to '{COMPANY}' has invalid length. It is probably caused by problems with NewGRFs. Game may desync or crash
|
||||
|
||||
STR_NEWGRF_BUGGY :{WHITE}NewGRF '{PUSH_COLOUR}{0:RAW_STRING}{POP_COLOUR}' provides incorrect information
|
||||
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Cargo/refit information for '{PUSH_COLOUR}{1:ENGINE}{POP_COLOUR}' differs from purchase list after construction. This might cause autorenew/-replace to fail refitting correctly
|
||||
STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{PUSH_COLOUR}{1:STRING}{POP_COLOUR}' caused an endless loop in the production callback
|
||||
STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:RAW_STRING}' provides incorrect information
|
||||
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Cargo/refit information for '{1:ENGINE}' differs from purchase list after construction. This might cause autorenew/-replace to fail refitting correctly
|
||||
STR_NEWGRF_BUGGY_ENDLESS_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' caused an endless loop in the production callback
|
||||
STR_NEWGRF_BUGGY_UNKNOWN_CALLBACK_RESULT :{WHITE}Callback {1:HEX} returned unknown/invalid result {2:HEX}
|
||||
STR_NEWGRF_BUGGY_INVALID_CARGO_PRODUCTION_CALLBACK :{WHITE}'{PUSH_COLOUR}{1:STRING}{POP_COLOUR}' returned invalid cargo type in the production callback at {2:HEX}
|
||||
STR_NEWGRF_BUGGY_INVALID_CARGO_PRODUCTION_CALLBACK :{WHITE}'{1:STRING}' returned invalid cargo type in the production callback at {2:HEX}
|
||||
|
||||
# 'User removed essential NewGRFs'-placeholders for stuff without specs
|
||||
STR_NEWGRF_INVALID_CARGO :<invalid cargo>
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
{
|
||||
if (!IsValidBaseStation(station_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(::Station::IsValidID(station_id) ? STR_STATION_NAME : STR_WAYPOINT_NAME, station_id));
|
||||
return ::StrMakeValid(::GetString(::Station::IsValidID(station_id) ? STR_STATION_NAME : STR_WAYPOINT_NAME, station_id), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptBaseStation::SetName(StationID station_id, Text *name)
|
||||
|
|
|
@ -135,7 +135,7 @@ static void _DoCommandReturnBuildBridge1(class ScriptInstance *instance)
|
|||
EnforcePrecondition(std::nullopt, vehicle_type == ScriptVehicle::VT_ROAD || vehicle_type == ScriptVehicle::VT_RAIL || vehicle_type == ScriptVehicle::VT_WATER);
|
||||
if (!IsValidBridge(bridge_type)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(vehicle_type == ScriptVehicle::VT_WATER ? STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT : ::GetBridgeSpec(bridge_type)->transport_name[vehicle_type]));
|
||||
return ::StrMakeValid(::GetString(vehicle_type == ScriptVehicle::VT_WATER ? STR_LAI_BRIDGE_DESCRIPTION_AQUEDUCT : ::GetBridgeSpec(bridge_type)->transport_name[vehicle_type]), {});
|
||||
}
|
||||
|
||||
/* static */ SQInteger ScriptBridge::GetMaxSpeed(BridgeType bridge_type)
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
{
|
||||
if (!IsValidCargo(cargo_type)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_JUST_CARGO_LIST, 1ULL << cargo_type));
|
||||
return ::StrMakeValid(::GetString(STR_JUST_CARGO_LIST, 1ULL << cargo_type), {});
|
||||
}
|
||||
|
||||
/* static */ std::optional<std::string> ScriptCargo::GetCargoLabel(CargoType cargo_type)
|
||||
|
|
|
@ -78,7 +78,7 @@
|
|||
company = ResolveCompanyID(company);
|
||||
if (company == ScriptCompany::COMPANY_INVALID) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_COMPANY_NAME, ScriptCompany::FromScriptCompanyID(company)));
|
||||
return ::StrMakeValid(::GetString(STR_COMPANY_NAME, ScriptCompany::FromScriptCompanyID(company)), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptCompany::SetPresidentName(Text *name)
|
||||
|
@ -99,7 +99,7 @@
|
|||
company = ResolveCompanyID(company);
|
||||
if (company == ScriptCompany::COMPANY_INVALID) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_PRESIDENT_NAME, ScriptCompany::FromScriptCompanyID(company)));
|
||||
return ::StrMakeValid(::GetString(STR_PRESIDENT_NAME, ScriptCompany::FromScriptCompanyID(company)), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptCompany::SetPresidentGender(Gender gender)
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
{
|
||||
if (!IsValidEngine(engine_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_ENGINE_NAME, engine_id));
|
||||
return ::StrMakeValid(::GetString(STR_ENGINE_NAME, engine_id), {});
|
||||
}
|
||||
|
||||
/* static */ CargoType ScriptEngine::GetCargoType(EngineID engine_id)
|
||||
|
|
|
@ -34,7 +34,7 @@ std::optional<std::string> ScriptEventEnginePreview::GetName()
|
|||
{
|
||||
if (!this->IsEngineValid()) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_ENGINE_NAME, this->engine));
|
||||
return ::StrMakeValid(::GetString(STR_ENGINE_NAME, this->engine), {});
|
||||
}
|
||||
|
||||
CargoType ScriptEventEnginePreview::GetCargoType()
|
||||
|
|
|
@ -73,7 +73,7 @@
|
|||
{
|
||||
if (!IsValidGroup(group_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_GROUP_NAME, group_id));
|
||||
return ::StrMakeValid(::GetString(STR_GROUP_NAME, group_id), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptGroup::SetParent(GroupID group_id, GroupID parent_group_id)
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
{
|
||||
if (!IsValidIndustry(industry_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_INDUSTRY_NAME, industry_id));
|
||||
return ::StrMakeValid(::GetString(STR_INDUSTRY_NAME, industry_id), {});
|
||||
}
|
||||
|
||||
/* static */ ScriptDate::Date ScriptIndustry::GetConstructionDate(IndustryID industry_id)
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
{
|
||||
if (!IsValidIndustryType(industry_type)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(::GetIndustrySpec(industry_type)->name));
|
||||
return ::StrMakeValid(::GetString(::GetIndustrySpec(industry_type)->name), {});
|
||||
}
|
||||
|
||||
/* static */ ScriptList *ScriptIndustryType::GetProducedCargo(IndustryType industry_type)
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
{
|
||||
EnforcePrecondition(std::nullopt, IsValidObjectType(object_type));
|
||||
|
||||
return ::StrMakeValid(::GetString(ObjectSpec::Get(object_type)->name));
|
||||
return ::StrMakeValid(::GetString(ObjectSpec::Get(object_type)->name), {});
|
||||
}
|
||||
|
||||
/* static */ SQInteger ScriptObjectType::GetViews(ObjectType object_type)
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
{
|
||||
if (!IsRailTypeAvailable(rail_type)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(GetRailTypeInfo((::RailType)rail_type)->strings.menu_text));
|
||||
return ::StrMakeValid(::GetString(GetRailTypeInfo((::RailType)rail_type)->strings.menu_text), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptRail::IsRailTile(TileIndex tile)
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
{
|
||||
if (!IsRoadTypeAvailable(road_type)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(GetRoadTypeInfo((::RoadType)road_type)->strings.name));
|
||||
return ::StrMakeValid(::GetString(GetRoadTypeInfo((::RoadType)road_type)->strings.name), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptRoad::IsRoadTile(TileIndex tile)
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
{
|
||||
if (!IsValidSign(sign_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_SIGN_NAME, sign_id));
|
||||
return ::StrMakeValid(::GetString(STR_SIGN_NAME, sign_id), {});
|
||||
}
|
||||
|
||||
/* static */ TileIndex ScriptSign::GetLocation(SignID sign_id)
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
{
|
||||
if (!IsValidTown(town_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_TOWN_NAME, town_id));
|
||||
return ::StrMakeValid(::GetString(STR_TOWN_NAME, town_id), {});
|
||||
}
|
||||
|
||||
/* static */ bool ScriptTown::SetName(TownID town_id, Text *name)
|
||||
|
|
|
@ -304,7 +304,7 @@
|
|||
{
|
||||
if (!IsPrimaryVehicle(vehicle_id)) return std::nullopt;
|
||||
|
||||
return ::StrMakeValid(::GetString(STR_VEHICLE_NAME, vehicle_id));
|
||||
return ::StrMakeValid(::GetString(STR_VEHICLE_NAME, vehicle_id), {});
|
||||
}
|
||||
|
||||
/* static */ SQInteger ScriptVehicle::GetAge(VehicleID vehicle_id)
|
||||
|
|
|
@ -1091,6 +1091,9 @@ static void FormatString(StringBuilder &builder, std::string_view str_arg, Strin
|
|||
std::stack<StrStackItem, std::vector<StrStackItem>> str_stack;
|
||||
str_stack.emplace(str_arg, orig_first_param_offset, orig_case_index);
|
||||
|
||||
bool appending = builder.AnyBytesWritten();
|
||||
if (appending) builder.PutUtf8(SCC_PUSH_COLOUR);
|
||||
|
||||
for (;;) {
|
||||
try {
|
||||
while (!str_stack.empty() && !str_stack.top().consumer.AnyBytesLeft()) {
|
||||
|
@ -1802,6 +1805,8 @@ static void FormatString(StringBuilder &builder, std::string_view str_arg, Strin
|
|||
builder += "(invalid parameter)";
|
||||
}
|
||||
}
|
||||
|
||||
if (appending) builder.PutUtf8(SCC_POP_COLOUR);
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue