diff --git a/src/3rdparty/squirrel/include/squirrel.h b/src/3rdparty/squirrel/include/squirrel.h index 30a9930ce1..c28ab403d3 100644 --- a/src/3rdparty/squirrel/include/squirrel.h +++ b/src/3rdparty/squirrel/include/squirrel.h @@ -238,6 +238,7 @@ void sq_newclosure(HSQUIRRELVM v,SQFUNCTION func,SQUnsignedInteger nfreevars); SQRESULT sq_setparamscheck(HSQUIRRELVM v,SQInteger nparamscheck,const SQChar *typemask); SQRESULT sq_bindenv(HSQUIRRELVM v,SQInteger idx); void sq_pushstring(HSQUIRRELVM v,const SQChar *s,SQInteger len); +static inline void sq_pushstring(HSQUIRRELVM v, const std::string &str, SQInteger len = -1) { sq_pushstring(v, str.c_str(), len == -1 ? str.size() : len); } void sq_pushfloat(HSQUIRRELVM v,SQFloat f); void sq_pushinteger(HSQUIRRELVM v,SQInteger n); void sq_pushbool(HSQUIRRELVM v,SQBool b); diff --git a/src/ai/ai.hpp b/src/ai/ai.hpp index 667de589eb..fce9c2059c 100644 --- a/src/ai/ai.hpp +++ b/src/ai/ai.hpp @@ -11,7 +11,6 @@ #define AI_HPP #include "../script/api/script_event_types.hpp" -#include "../core/string_compare_type.hpp" #include "ai_scanner.hpp" /** diff --git a/src/ai/ai_scanner.cpp b/src/ai/ai_scanner.cpp index 1c74c34fe6..cda6b3c28d 100644 --- a/src/ai/ai_scanner.cpp +++ b/src/ai/ai_scanner.cpp @@ -17,6 +17,7 @@ #include "../script/api/script_object.hpp" #include "ai_info.hpp" #include "ai_scanner.hpp" +#include "../3rdparty/fmt/format.h" #include "../safeguards.h" @@ -48,9 +49,9 @@ AIScannerInfo::~AIScannerInfo() delete this->info_dummy; } -void AIScannerInfo::GetScriptName(ScriptInfo *info, char *name, const char *last) +std::string AIScannerInfo::GetScriptName(ScriptInfo *info) { - seprintf(name, last, "%s", info->GetName()); + return info->GetName(); } void AIScannerInfo::RegisterAPI(class Squirrel *engine) @@ -92,39 +93,35 @@ AIInfo *AIScannerInfo::SelectRandomAI() const #undef GetAIInfo } -AIInfo *AIScannerInfo::FindInfo(const char *nameParam, int versionParam, bool force_exact_match) +AIInfo *AIScannerInfo::FindInfo(const char *name, int version, bool force_exact_match) { if (this->info_list.size() == 0) return nullptr; - if (nameParam == nullptr) return nullptr; + if (name == nullptr) return nullptr; - char ai_name[1024]; - strecpy(ai_name, nameParam, lastof(ai_name)); - strtolower(ai_name); - - if (versionParam == -1) { + if (version == -1) { /* We want to load the latest version of this AI; so find it */ - if (this->info_single_list.find(ai_name) != this->info_single_list.end()) return static_cast(this->info_single_list[ai_name]); + auto it = this->info_single_list.find(name); + if (it != this->info_single_list.end()) return static_cast(it->second); return nullptr; } if (force_exact_match) { /* Try to find a direct 'name.version' match */ - char ai_name_tmp[1024]; - seprintf(ai_name_tmp, lastof(ai_name_tmp), "%s.%d", ai_name, versionParam); - strtolower(ai_name_tmp); - if (this->info_list.find(ai_name_tmp) != this->info_list.end()) return static_cast(this->info_list[ai_name_tmp]); + std::string name_with_version = fmt::format("{}.{}", name, version); + auto it = this->info_list.find(name_with_version); + if (it != this->info_list.end()) return static_cast(it->second); return nullptr; } AIInfo *info = nullptr; - int version = -1; + int highest_version = -1; /* See if there is a compatible AI which goes by that name, with the highest * version which allows loading the requested version */ for (const auto &item : this->info_list) { AIInfo *i = static_cast(item.second); - if (StrEqualsIgnoreCase(ai_name, i->GetName()) && i->CanLoadFromVersion(versionParam) && (version == -1 || i->GetVersion() > version)) { - version = item.second->GetVersion(); + if (StrEqualsIgnoreCase(name, i->GetName()) && i->CanLoadFromVersion(version) && (highest_version == -1 || i->GetVersion() > highest_version)) { + highest_version = item.second->GetVersion(); info = i; } } @@ -138,10 +135,10 @@ void AIScannerLibrary::Initialize() ScriptScanner::Initialize("AIScanner"); } -void AIScannerLibrary::GetScriptName(ScriptInfo *info, char *name, const char *last) +std::string AIScannerLibrary::GetScriptName(ScriptInfo *info) { AILibrary *library = static_cast(info); - seprintf(name, last, "%s.%s", library->GetCategory(), library->GetInstanceName()); + return fmt::format("{}.{}", library->GetCategory(), library->GetInstanceName()); } void AIScannerLibrary::RegisterAPI(class Squirrel *engine) @@ -152,9 +149,7 @@ void AIScannerLibrary::RegisterAPI(class Squirrel *engine) AILibrary *AIScannerLibrary::FindLibrary(const char *library, int version) { /* Internally we store libraries as 'library.version' */ - char library_name[1024]; - seprintf(library_name, lastof(library_name), "%s.%d", library, version); - strtolower(library_name); + std::string library_name = fmt::format("{}.{}", library, version); /* Check if the library + version exists */ ScriptInfoList::iterator it = this->info_list.find(library_name); diff --git a/src/ai/ai_scanner.hpp b/src/ai/ai_scanner.hpp index 4faee9c62f..4a6a065142 100644 --- a/src/ai/ai_scanner.hpp +++ b/src/ai/ai_scanner.hpp @@ -27,12 +27,12 @@ public: /** * Check if we have an AI by name and version available in our list. - * @param nameParam The name of the AI. - * @param versionParam The version of the AI, or -1 if you want the latest. + * @param name The name of the AI. + * @param version The version of the AI, or -1 if you want the latest. * @param force_exact_match Only match name+version, never latest. * @return nullptr if no match found, otherwise the AI that matched. */ - class AIInfo *FindInfo(const char *nameParam, int versionParam, bool force_exact_match); + class AIInfo *FindInfo(const char *name, int version, bool force_exact_match); /** * Set the Dummy AI. @@ -40,7 +40,7 @@ public: void SetDummyAI(class AIInfo *info); protected: - void GetScriptName(ScriptInfo *info, char *name, const char *last) override; + std::string GetScriptName(ScriptInfo *info) override; const char *GetFileName() const override { return PATHSEP "info.nut"; } Subdirectory GetDirectory() const override { return AI_DIR; } const char *GetScannerName() const override { return "AIs"; } @@ -63,7 +63,7 @@ public: class AILibrary *FindLibrary(const char *library, int version); protected: - void GetScriptName(ScriptInfo *info, char *name, const char *last) override; + std::string GetScriptName(ScriptInfo *info) override; const char *GetFileName() const override { return PATHSEP "library.nut"; } Subdirectory GetDirectory() const override { return AI_LIBRARY_DIR; } const char *GetScannerName() const override { return "AI Libraries"; } diff --git a/src/blitter/factory.hpp b/src/blitter/factory.hpp index 74d777bb62..51799c79ad 100644 --- a/src/blitter/factory.hpp +++ b/src/blitter/factory.hpp @@ -13,7 +13,6 @@ #include "base.hpp" #include "../debug.h" #include "../string_func.h" -#include "../core/string_compare_type.hpp" #include @@ -125,9 +124,8 @@ public: if (GetBlitters().size() == 0) return nullptr; const char *bname = name.empty() ? default_blitter : name.c_str(); - Blitters::iterator it = GetBlitters().begin(); - for (; it != GetBlitters().end(); it++) { - BlitterFactory *b = (*it).second; + for (auto &it : GetBlitters()) { + BlitterFactory *b = it.second; if (StrEqualsIgnoreCase(bname, b->name)) { return b->IsUsable() ? b : nullptr; } @@ -152,9 +150,8 @@ public: static char *GetBlittersInfo(char *p, const char *last) { p += seprintf(p, last, "List of blitters:\n"); - Blitters::iterator it = GetBlitters().begin(); - for (; it != GetBlitters().end(); it++) { - BlitterFactory *b = (*it).second; + for (auto &it : GetBlitters()) { + BlitterFactory *b = it.second; p += seprintf(p, last, "%18s: %s\n", b->name.c_str(), b->GetDescription().c_str()); } p += seprintf(p, last, "\n"); diff --git a/src/cargopacket.cpp b/src/cargopacket.cpp index 6cdae96021..927f0df4e9 100644 --- a/src/cargopacket.cpp +++ b/src/cargopacket.cpp @@ -566,8 +566,7 @@ void VehicleCargoList::AddToMeta(const CargoPacket *cp, MoveToAction action) */ void VehicleCargoList::AgeCargo() { - for (ConstIterator it(this->packets.begin()); it != this->packets.end(); it++) { - CargoPacket *cp = *it; + for (const auto &cp : this->packets) { /* If we're at the maximum, then we can't increase no more. */ if (cp->days_in_transit == UINT16_MAX) continue; diff --git a/src/cheat_gui.cpp b/src/cheat_gui.cpp index b57fbcf5ea..95cd91af25 100644 --- a/src/cheat_gui.cpp +++ b/src/cheat_gui.cpp @@ -299,7 +299,6 @@ struct CheatWindow : Window { default: { int32 val = (int32)ReadValue(ce->variable, ce->type); - char buf[512]; /* Draw [<][>] boxes for settings of an integer-type */ DrawArrowButtons(button_left, y + button_y_offset, COLOUR_YELLOW, clicked - (i * 2), true, true); @@ -311,8 +310,7 @@ struct CheatWindow : Window { /* Draw coloured flag for change company cheat */ case STR_CHEAT_CHANGE_COMPANY: { SetDParam(0, val + 1); - GetString(buf, STR_CHEAT_CHANGE_COMPANY, lastof(buf)); - uint offset = WidgetDimensions::scaled.hsep_indent + GetStringBoundingBox(buf).width; + uint offset = WidgetDimensions::scaled.hsep_indent + GetStringBoundingBox(ce->str).width; DrawCompanyIcon(_local_company, rtl ? text_right - offset - WidgetDimensions::scaled.hsep_indent : text_left + offset, y + icon_y_offset); break; } diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index c6c67092df..ab769a34b1 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -32,7 +32,6 @@ add_files( smallmap_type.hpp smallstack_type.hpp smallvec_type.hpp - string_compare_type.hpp tinystring_type.hpp y_combinator.hpp ) diff --git a/src/core/smallmap_type.hpp b/src/core/smallmap_type.hpp index 1904016a8c..d34635a536 100644 --- a/src/core/smallmap_type.hpp +++ b/src/core/smallmap_type.hpp @@ -40,11 +40,7 @@ struct SmallMap : std::vector > { */ inline typename std::vector::const_iterator Find(const T &key) const { - typename std::vector::const_iterator it; - for (it = std::vector::begin(); it != std::vector::end(); it++) { - if (key == it->first) return it; - } - return it; + return std::find_if(std::vector::begin(), std::vector::end(), [&key](const Pair &pair) { return key == pair.first; }); } /** diff --git a/src/core/string_compare_type.hpp b/src/core/string_compare_type.hpp deleted file mode 100644 index 1c6a411d09..0000000000 --- a/src/core/string_compare_type.hpp +++ /dev/null @@ -1,27 +0,0 @@ -/* - * This file is part of OpenTTD. - * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. - * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . - */ - -/** @file string_compare_type.hpp Comparator class for "const char *" so it can be used as a key for std::map */ - -#ifndef STRING_COMPARE_TYPE_HPP -#define STRING_COMPARE_TYPE_HPP - -/** Comparator for strings. */ -struct StringCompare { - /** - * Compare two strings. - * @param a The first string. - * @param b The second string. - * @return True is the first string is deemed "lower" than the second string. - */ - bool operator () (const char *a, const char *b) const - { - return strcmp(a, b) < 0; - } -}; - -#endif /* STRING_COMPARE_TYPE_HPP */ diff --git a/src/driver.cpp b/src/driver.cpp index 9564791771..38265d9f65 100644 --- a/src/driver.cpp +++ b/src/driver.cpp @@ -105,9 +105,8 @@ bool DriverFactoryBase::SelectDriverImpl(const std::string &name, Driver::Type t if (name.empty()) { /* Probe for this driver, but do not fall back to dedicated/null! */ for (int priority = 10; priority > 0; priority--) { - Drivers::iterator it = GetDrivers().begin(); - for (; it != GetDrivers().end(); ++it) { - DriverFactoryBase *d = (*it).second; + for (auto &it : GetDrivers()) { + DriverFactoryBase *d = it.second; /* Check driver type */ if (d->type != type) continue; @@ -151,9 +150,8 @@ bool DriverFactoryBase::SelectDriverImpl(const std::string &name, Driver::Type t } /* Find this driver */ - Drivers::iterator it = GetDrivers().begin(); - for (; it != GetDrivers().end(); ++it) { - DriverFactoryBase *d = (*it).second; + for (auto &it : GetDrivers()) { + DriverFactoryBase *d = it.second; /* Check driver type */ if (d->type != type) continue; @@ -191,9 +189,8 @@ char *DriverFactoryBase::GetDriversInfo(char *p, const char *last) p += seprintf(p, last, "List of %s drivers:\n", GetDriverTypeName(type)); for (int priority = 10; priority >= 0; priority--) { - Drivers::iterator it = GetDrivers().begin(); - for (; it != GetDrivers().end(); it++) { - DriverFactoryBase *d = (*it).second; + for (auto &it : GetDrivers()) { + DriverFactoryBase *d = it.second; if (d->type != type) continue; if (d->priority != priority) continue; p += seprintf(p, last, "%18s: %s\n", d->name, d->GetDescription()); diff --git a/src/driver.h b/src/driver.h index 93aaf61550..56cccef22d 100644 --- a/src/driver.h +++ b/src/driver.h @@ -11,7 +11,6 @@ #define DRIVER_H #include "core/enum_type.hpp" -#include "core/string_compare_type.hpp" #include "string_type.h" #include diff --git a/src/engine.cpp b/src/engine.cpp index 1bf9b17ff2..f962124842 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -472,9 +472,9 @@ uint Engine::GetDisplayMaxTractiveEffort() const /* Only trains and road vehicles have 'tractive effort'. */ switch (this->type) { case VEH_TRAIN: - return (GROUND_ACCELERATION * this->GetDisplayWeight() * GetEngineProperty(this->index, PROP_TRAIN_TRACTIVE_EFFORT, this->u.rail.tractive_effort)) / 256 / 1000; + return (GROUND_ACCELERATION * this->GetDisplayWeight() * GetEngineProperty(this->index, PROP_TRAIN_TRACTIVE_EFFORT, this->u.rail.tractive_effort)) / 256; case VEH_ROAD: - return (GROUND_ACCELERATION * this->GetDisplayWeight() * GetEngineProperty(this->index, PROP_ROADVEH_TRACTIVE_EFFORT, this->u.road.tractive_effort)) / 256 / 1000; + return (GROUND_ACCELERATION * this->GetDisplayWeight() * GetEngineProperty(this->index, PROP_ROADVEH_TRACTIVE_EFFORT, this->u.road.tractive_effort)) / 256; default: NOT_REACHED(); } diff --git a/src/fileio.cpp b/src/fileio.cpp index b0672dcdb4..c21af0d614 100644 --- a/src/fileio.cpp +++ b/src/fileio.cpp @@ -291,12 +291,12 @@ FILE *FioFOpenFile(const std::string &filename, const char *mode, Subdirectory s } /* Resolve ONE directory link */ - for (TarLinkList::iterator link = _tar_linklist[subdir].begin(); link != _tar_linklist[subdir].end(); link++) { - const std::string &src = link->first; + for (const auto &link : _tar_linklist[subdir]) { + const std::string &src = link.first; size_t len = src.length(); if (resolved_name.length() >= len && resolved_name[len - 1] == PATHSEPCHAR && src.compare(0, len, resolved_name, 0, len) == 0) { /* Apply link */ - resolved_name.replace(0, len, link->second); + resolved_name.replace(0, len, link.second); break; // Only resolve one level } } @@ -672,10 +672,8 @@ bool TarScanner::AddFile(const std::string &filename, size_t basepath_length, co * The destination path must NOT contain any links. * The source path may contain one directory link. */ - for (TarLinkList::iterator link = links.begin(); link != links.end(); link++) { - const std::string &src = link->first; - const std::string &dest = link->second; - TarAddLink(src, dest, this->subdir); + for (auto &it : links) { + TarAddLink(it.first, it.second, this->subdir); } return true; @@ -711,16 +709,16 @@ bool ExtractTar(const std::string &tar_filename, Subdirectory subdir) DEBUG(misc, 8, "Extracting %s to directory %s", tar_filename.c_str(), filename.c_str()); FioCreateDirectory(filename); - for (TarFileList::iterator it2 = _tar_filelist[subdir].begin(); it2 != _tar_filelist[subdir].end(); it2++) { - if (tar_filename != it2->second.tar_filename) continue; + for (auto &it2 : _tar_filelist[subdir]) { + if (tar_filename != it2.second.tar_filename) continue; - filename.replace(p + 1, std::string::npos, it2->first); + filename.replace(p + 1, std::string::npos, it2.first); DEBUG(misc, 9, " extracting %s", filename.c_str()); /* First open the file in the .tar. */ size_t to_copy = 0; - std::unique_ptr in(FioFOpenFileTar(it2->second, &to_copy)); + std::unique_ptr in(FioFOpenFileTar(it2.second, &to_copy)); if (!in) { DEBUG(misc, 6, "Extracting %s failed; could not open %s", filename.c_str(), tar_filename.c_str()); return false; diff --git a/src/game/game.hpp b/src/game/game.hpp index fffa04fa05..9e92130f10 100644 --- a/src/game/game.hpp +++ b/src/game/game.hpp @@ -10,7 +10,6 @@ #ifndef GAME_HPP #define GAME_HPP -#include "../core/string_compare_type.hpp" #include "game_scanner.hpp" #include "../script/api/script_event_types.hpp" diff --git a/src/game/game_gui.cpp b/src/game/game_gui.cpp index 77b11a13b0..3226ddf36a 100644 --- a/src/game/game_gui.cpp +++ b/src/game/game_gui.cpp @@ -199,7 +199,7 @@ struct GSConfigWindow : public Window { StringID str; TextColour colour; uint idx = 0; - if (StrEmpty(config_item.description)) { + if (config_item.description.empty()) { str = STR_JUST_STRING; colour = TC_ORANGE; } else { @@ -217,9 +217,10 @@ struct GSConfigWindow : public Window { } else { DrawArrowButtons(br.left, y + button_y_offset, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, editable && current_value > config_item.min_value, editable && current_value < config_item.max_value); } - if (config_item.labels != nullptr && config_item.labels->Contains(current_value)) { + auto config_iterator = config_item.labels.find(current_value); + if (config_iterator != config_item.labels.end()) { SetDParam(idx++, STR_JUST_RAW_STRING); - SetDParamStr(idx++, config_item.labels->Find(current_value)->second); + SetDParamStr(idx++, config_iterator->second); } else { SetDParam(idx++, STR_JUST_INT); SetDParam(idx++, current_value); @@ -276,9 +277,7 @@ struct GSConfigWindow : public Window { int num = (pt.y - r.top) / this->line_height + this->vscroll->GetPosition(); if (num >= (int)this->visible_settings.size()) break; - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < num; i++) it++; - const ScriptConfigItem config_item = **it; + const ScriptConfigItem &config_item = *this->visible_settings[num]; if (!this->IsEditableItem(config_item)) return; if (this->clicked_row != num) { @@ -317,7 +316,7 @@ struct GSConfigWindow : public Window { DropDownList list; for (int i = config_item.min_value; i <= config_item.max_value; i++) { - list.emplace_back(new DropDownListCharStringItem(config_item.labels->Find(i)->second, i, false)); + list.emplace_back(new DropDownListCharStringItem(config_item.labels.find(i)->second, i, false)); } ShowDropDownListAt(this, std::move(list), old_val, -1, wi_rect, COLOUR_ORANGE); @@ -432,9 +431,7 @@ private: void SetValue(int value) { - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < this->clicked_row; i++) it++; - const ScriptConfigItem config_item = **it; + const ScriptConfigItem &config_item = *this->visible_settings[this->clicked_row]; if (_game_mode == GM_NORMAL && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; this->gs_config->SetSetting(config_item.name, value); this->SetDirty(); diff --git a/src/game/game_scanner.cpp b/src/game/game_scanner.cpp index 367645083b..85b2a77ea5 100644 --- a/src/game/game_scanner.cpp +++ b/src/game/game_scanner.cpp @@ -13,6 +13,8 @@ #include "game_info.hpp" #include "game_scanner.hpp" +#include "../3rdparty/fmt/format.h" + #include "../safeguards.h" @@ -21,9 +23,9 @@ void GameScannerInfo::Initialize() ScriptScanner::Initialize("GSScanner"); } -void GameScannerInfo::GetScriptName(ScriptInfo *info, char *name, const char *last) +std::string GameScannerInfo::GetScriptName(ScriptInfo *info) { - seprintf(name, last, "%s", info->GetName()); + return info->GetName(); } void GameScannerInfo::RegisterAPI(class Squirrel *engine) @@ -31,39 +33,35 @@ void GameScannerInfo::RegisterAPI(class Squirrel *engine) GameInfo::RegisterAPI(engine); } -GameInfo *GameScannerInfo::FindInfo(const char *nameParam, int versionParam, bool force_exact_match) +GameInfo *GameScannerInfo::FindInfo(const char *name, int version, bool force_exact_match) { if (this->info_list.size() == 0) return nullptr; - if (nameParam == nullptr) return nullptr; + if (name == nullptr) return nullptr; - char game_name[1024]; - strecpy(game_name, nameParam, lastof(game_name)); - strtolower(game_name); - - if (versionParam == -1) { + if (version == -1) { /* We want to load the latest version of this Game script; so find it */ - if (this->info_single_list.find(game_name) != this->info_single_list.end()) return static_cast(this->info_single_list[game_name]); + auto it = this->info_single_list.find(name); + if (it != this->info_single_list.end()) return static_cast(it->second); return nullptr; } if (force_exact_match) { /* Try to find a direct 'name.version' match */ - char game_name_tmp[1024]; - seprintf(game_name_tmp, lastof(game_name_tmp), "%s.%d", game_name, versionParam); - strtolower(game_name_tmp); - if (this->info_list.find(game_name_tmp) != this->info_list.end()) return static_cast(this->info_list[game_name_tmp]); + std::string name_with_version = fmt::format("{}.{}", name, version); + auto it = this->info_list.find(name_with_version); + if (it != this->info_list.end()) return static_cast(it->second); return nullptr; } GameInfo *info = nullptr; - int version = -1; + int highest_version = -1; /* See if there is a compatible Game script which goes by that name, with the highest * version which allows loading the requested version */ for (const auto &item : this->info_list) { GameInfo *i = static_cast(item.second); - if (StrEqualsIgnoreCase(game_name, i->GetName()) && i->CanLoadFromVersion(versionParam) && (version == -1 || i->GetVersion() > version)) { - version = item.second->GetVersion(); + if (StrEqualsIgnoreCase(name, i->GetName()) && i->CanLoadFromVersion(version) && (highest_version == -1 || i->GetVersion() > highest_version)) { + highest_version = item.second->GetVersion(); info = i; } } @@ -77,10 +75,10 @@ void GameScannerLibrary::Initialize() ScriptScanner::Initialize("GSScanner"); } -void GameScannerLibrary::GetScriptName(ScriptInfo *info, char *name, const char *last) +std::string GameScannerLibrary::GetScriptName(ScriptInfo *info) { GameLibrary *library = static_cast(info); - seprintf(name, last, "%s.%s", library->GetCategory(), library->GetInstanceName()); + return fmt::format("{}.{}", library->GetCategory(), library->GetInstanceName()); } void GameScannerLibrary::RegisterAPI(class Squirrel *engine) @@ -91,9 +89,7 @@ void GameScannerLibrary::RegisterAPI(class Squirrel *engine) GameLibrary *GameScannerLibrary::FindLibrary(const char *library, int version) { /* Internally we store libraries as 'library.version' */ - char library_name[1024]; - seprintf(library_name, lastof(library_name), "%s.%d", library, version); - strtolower(library_name); + std::string library_name = fmt::format("{}.{}", library, version); /* Check if the library + version exists */ ScriptInfoList::iterator it = this->info_list.find(library_name); diff --git a/src/game/game_scanner.hpp b/src/game/game_scanner.hpp index 6c96bccfdf..c0628fc6a7 100644 --- a/src/game/game_scanner.hpp +++ b/src/game/game_scanner.hpp @@ -18,15 +18,15 @@ public: /** * Check if we have a game by name and version available in our list. - * @param nameParam The name of the game script. - * @param versionParam The version of the game script, or -1 if you want the latest. + * @param name The name of the game script. + * @param version The version of the game script, or -1 if you want the latest. * @param force_exact_match Only match name+version, never latest. * @return nullptr if no match found, otherwise the game script that matched. */ - class GameInfo *FindInfo(const char *nameParam, int versionParam, bool force_exact_match); + class GameInfo *FindInfo(const char *name, int version, bool force_exact_match); protected: - void GetScriptName(ScriptInfo *info, char *name, const char *last) override; + std::string GetScriptName(ScriptInfo *info) override; const char *GetFileName() const override { return PATHSEP "info.nut"; } Subdirectory GetDirectory() const override { return GAME_DIR; } const char *GetScannerName() const override { return "Game Scripts"; } @@ -47,7 +47,7 @@ public: class GameLibrary *FindLibrary(const char *library, int version); protected: - void GetScriptName(ScriptInfo *info, char *name, const char *last) override; + std::string GetScriptName(ScriptInfo *info) override; const char *GetFileName() const override { return PATHSEP "library.nut"; } Subdirectory GetDirectory() const override { return GAME_LIBRARY_DIR; } const char *GetScannerName() const override { return "GS Libraries"; } diff --git a/src/game/game_text.cpp b/src/game/game_text.cpp index b54987ea94..a905c75864 100644 --- a/src/game/game_text.cpp +++ b/src/game/game_text.cpp @@ -385,7 +385,7 @@ void RegisterGameTranslation(Squirrel *engine) int idx = 0; for (const auto &p : _current_data->string_names) { - sq_pushstring(vm, p.c_str(), -1); + sq_pushstring(vm, p, -1); sq_pushinteger(vm, idx); sq_rawset(vm, -3); idx++; diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp index ddf43ece47..70c0d6703c 100644 --- a/src/industry_cmd.cpp +++ b/src/industry_cmd.cpp @@ -207,6 +207,7 @@ Industry::~Industry() void Industry::PostDestructor(size_t index) { InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, IDIWD_FORCE_REBUILD); + SetWindowDirty(WC_BUILD_INDUSTRY, 0); } @@ -2018,6 +2019,7 @@ static void DoCreateNewIndustry(Industry *i, TileIndex tile, IndustryType type, for (uint j = 0; j != 50; j++) PlantRandomFarmField(i); } InvalidateWindowData(WC_INDUSTRY_DIRECTORY, 0, IDIWD_FORCE_REBUILD); + SetWindowDirty(WC_BUILD_INDUSTRY, 0); if (!_generating_world) PopulateStationsNearby(i); if (_game_mode == GM_NORMAL) RegisterGameEvents(GEF_INDUSTRY_CREATE); diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index 13ee387bba..9593234a9e 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -537,14 +537,16 @@ public: icon.bottom = icon.top + this->legend.height - 1; for (uint16 i = this->vscroll->GetPosition(); this->vscroll->IsVisible(i) && i < this->vscroll->GetCount(); i++) { - bool selected = this->selected_type == this->list[i]; - - const IndustrySpec *indsp = GetIndustrySpec(this->list[i]); + IndustryType type = this->list[i]; + bool selected = this->selected_type == type; + const IndustrySpec *indsp = GetIndustrySpec(type); /* Draw the name of the industry in white is selected, otherwise, in orange */ DrawString(text, indsp->name, selected ? TC_WHITE : TC_ORANGE); GfxFillRect(icon, selected ? PC_WHITE : PC_BLACK); GfxFillRect(icon.Shrink(WidgetDimensions::scaled.bevel), indsp->map_colour); + SetDParam(0, Industry::GetIndustryTypeCount(type)); + DrawString(text, STR_JUST_COMMA, TC_BLACK, SA_RIGHT, false, FS_SMALL); text = text.Translate(0, this->resize.step_height); icon = icon.Translate(0, this->resize.step_height); diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index a42c1bb793..2e27f9f2d3 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -192,38 +192,38 @@ STR_COLOUR_WHITE :Wit STR_COLOUR_RANDOM :Lukraak # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mpu -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mpu +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}pk +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}pk +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gelling -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gelling +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gelling{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gelling{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}vt -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}vt +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter string: diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index 118ae3b32c..70cf18a00f 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -190,40 +190,40 @@ STR_COLOUR_GREY :رمادي STR_COLOUR_WHITE :ابيض # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}ميل/س -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}كم/س -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}م/ث +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}ميل/س +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}كم/س +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}م/ث STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}مربعات/ اليوم -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}حصان -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}حصان -STR_UNITS_POWER_SI :{COMMA}{NBSP}ك واط +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}حصان +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}حصان +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}ك واط STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP} طن -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}طن -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}كجم +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP} طن +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}طن +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}كجم -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}طن -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP} طن -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}كجم +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}طن +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP} طن +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}كجم -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}غال -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}ل -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}م3 +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}غال +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}ل +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}م3 -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}جالون -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP} لتر -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}م3 +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}جالون +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP} لتر +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}م3 -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}رطل قوة -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}كيلوغرام قوة -STR_UNITS_FORCE_SI :{COMMA}{NBSP} كيلو نيوتن +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}رطل قوة +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}كيلوغرام قوة +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP} كيلو نيوتن -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP} قدم -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}م -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP} متر +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP} قدم +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}م +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP} متر # Common window strings STR_LIST_FILTER_TITLE :{BLACK}تصفية القائمة: diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 4e7b412531..5f5033454e 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -190,38 +190,38 @@ STR_COLOUR_GREY :Grisa STR_COLOUR_WHITE :Zuria # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tona{P "" k} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tona{P "" k} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tona{P "" k} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tona{P "" k} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galoi{P "" ak} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" ak} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galoi{P "" ak} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litro{P "" ak} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Lokarri iragazkia: diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index ce9dcf18c4..826e92a7f8 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -503,38 +503,38 @@ STR_COLOUR_WHITE :Белы STR_COLOUR_RANDOM :Выпадковы # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}мiл{P я i яў}/г -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/г -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}мiл{P я i яў}/г +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}км/г +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}м/с -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к.с. -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. -STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}к.с. +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}к.с. +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}кВт -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тон{P а ы ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тон{P а ы ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}тон{P а ы ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}тон{P а ы ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал. -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}гал. +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" а аў} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}лiтр{P "" ы аў} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}галон{P "" а аў} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}лiтр{P "" ы аў} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт{P "" а аў}-сілы -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс -STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}фунт{P "" а аў}-сілы +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}кгс +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут{P "" ы аў} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}фут{P "" ы аў} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}м +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фільтар: diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index d07bdfeeea..7a9700df47 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :Branco STR_COLOUR_RANDOM :Aleatório # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}quadrados/dia -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}nós +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}nós -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}cv +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}T -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}T +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton. curta{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton. curta{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gal{P ão ões} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gal{P ão ões} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pé{P "" s} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pé{P "" s} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: @@ -932,8 +932,22 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Colar a # Game options window STR_GAME_OPTIONS_CAPTION :{WHITE}Opções do Jogo +STR_GAME_OPTIONS_TAB_GENERAL :Geral +STR_GAME_OPTIONS_TAB_GENERAL_TT :{BLACK}Escolha as configurações gerais +STR_GAME_OPTIONS_TAB_GRAPHICS :Gráficos +STR_GAME_OPTIONS_TAB_GRAPHICS_TT :{BLACK}Escolha as configurações gráficas +STR_GAME_OPTIONS_TAB_SOUND :Som +STR_GAME_OPTIONS_TAB_SOUND_TT :{BLACK}Escolha as configurações de som e música +STR_GAME_OPTIONS_VOLUME :Volume +STR_GAME_OPTIONS_SFX_VOLUME :Efeitos sonoros +STR_GAME_OPTIONS_MUSIC_VOLUME :Música +STR_GAME_OPTIONS_VOLUME_0 :0% +STR_GAME_OPTIONS_VOLUME_25 :25% +STR_GAME_OPTIONS_VOLUME_50 :50% +STR_GAME_OPTIONS_VOLUME_75 :75% +STR_GAME_OPTIONS_VOLUME_100 :100% STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Unidades monetárias STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Seleção de unidades monetárias @@ -988,6 +1002,10 @@ STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Selecion # Autosave dropdown ###length 5 STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_OFF :Desativado +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_10_MINUTES :A cada 10 minutos +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_30_MINUTES :A cada 30 minutos +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_60_MINUTES :A cada 60 minutos +STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_120_MINUTES :A cada 120 minutos STR_GAME_OPTIONS_LANGUAGE :{BLACK}Idioma STR_GAME_OPTIONS_LANGUAGE_TOOLTIP :{BLACK}Selecionar o idioma da interface do jogo @@ -1153,6 +1171,7 @@ STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Maximiza STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Minimizar tudo STR_CONFIG_SETTING_RESET_ALL :{BLACK}Redefinir todos os parâmetros STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(não há explicação disponível) +STR_CONFIG_SETTING_VALUE :{PUSH_COLOUR}{ORANGE}{STRING}{POP_COLOUR} STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Valor padrão: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Tipo de config.: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE_CLIENT :Config. do cliente (não é guardado em savegames; afeta todos os jogos) @@ -1713,7 +1732,7 @@ STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Quanta memória STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Os intervalos de serviço são em percentagem: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Define se a manutenção de veículos é ativada pelo tempo passado desde a última manutenção ou quando a confiabilidade alcança um certo valor +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Quando ativado, os veículos tentam fazer a manutenção quando sua confiabilidade cai em uma determinada porcentagem da confiabilidade máxima.{}{}Por exemplo, se a confiabilidade máxima de um veículo for 90% e o intervalo de manutenção for 20%, o veículo tentará fazer a manutenção quando atinge 72% de confiabilidade. STR_CONFIG_SETTING_SERVINT_TRAINS :Intervalo padrão de manutenção para trens: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Define o intervalo padrão de manutenção para novos trens, se não for definido individualmente @@ -1918,6 +1937,10 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nenhum STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador do tamanho inicial da cidade: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamanho médio das cidades grandes em relação às cidades no início do jogo +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Atualiza o gráfico de distribuição a cada {STRING}{NBSP}segundo{P 0:2 "" s} +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tempo entre recálculos subseqüentes do gráfico de link. Cada recálculo calcula os planos para um componente do gráfico. Isso significa que um valor X para esta configuração não significa que todo o gráfico será atualizado a cada X segundos. Apenas algum componente o fará. Quanto mais curto você definir, mais tempo de CPU será necessário para calculá-lo. Quanto mais tempo você definir, mais tempo levará até que a distribuição de carga comece em novas rotas +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Usar {STRING}{NBSP}segundo{P 0:2 "" s} para recalcular o gráfico de distribuição +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tempo gasto para cada recálculo de um componente de gráfico de link. Quando um recálculo é iniciado, um thread é gerado e pode ser executado por esse número de segundos. Quanto mais curto você definir, mais provável será que o encadeamento não seja concluído quando deveria. Então o jogo para até que seja ("lag"). Quanto mais tempo você definir, mais tempo levará para a distribuição ser atualizada quando as rotas mudarem. STR_CONFIG_SETTING_DISTRIBUTION_PAX :Modo de distribuição para passageiros: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simétrico" significa que aproximadamente o mesmo número de passageiros irá de uma estação A para uma estação B como de B para A. "Assimétrico" significa que um número arbitrário de passageiros pode ir em qualquer direção. "Manual" significa que não haverá distribuição automática para os passageiros. @@ -3806,6 +3829,8 @@ STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Envia in STR_VEHICLE_LIST_REPLACE_VEHICLES :Substituir veículos STR_VEHICLE_LIST_SEND_FOR_SERVICING :Enviar para Manutenção STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Lucro anual: {CURRENCY_LONG} (último ano: {CURRENCY_LONG}) +STR_VEHICLE_LIST_CARGO :[{CARGO_LIST}] +STR_VEHICLE_LIST_NAME_AND_CARGO :{STRING} {STRING} STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Enviar para Depósito STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Enviar para Garagem @@ -4572,6 +4597,7 @@ STR_AI_CONFIG_RANDOM_AI :IA aleatória STR_AI_CONFIG_NONE :{G=m}(nenhum) STR_AI_CONFIG_NAME_VERSION :{STRING} {YELLOW}v{NUM} STR_AI_CONFIG_MAX_COMPETITORS :{LTBLUE}Número máximo de concorrentes: {ORANGE}{COMMA} +STR_AI_CONFIG_COMPETITORS_INTERVAL :{LTBLUE}Intervalo entre o começo dos competidores: {ORANGE}{COMMA} minuto{P "" s} STR_AI_CONFIG_MOVE_UP :{BLACK}Subir STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Mover a IA selecionada para cima na lista @@ -5086,6 +5112,7 @@ STR_ERROR_NO_BUOY :{WHITE}Não há STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Impossível programar veículo... STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Veículos só podem aguardar em estações STR_ERROR_TIMETABLE_NOT_STOPPING_HERE :{WHITE}Esse veículo não pára nesta estação +STR_ERROR_TIMETABLE_INCOMPLETE :{WHITE}... horário incompleto # Sign related errors STR_ERROR_TOO_MANY_SIGNS :{WHITE}... existem placas demais @@ -5565,11 +5592,13 @@ STR_VEHICLE_NAME :{VEHICLE} STR_WAYPOINT_NAME :{WAYPOINT} STR_JUST_CARGO :{CARGO_LONG} +STR_JUST_RIGHT_ARROW :{RIGHT_ARROW} STR_JUST_CHECKMARK :{CHECKMARK} STR_JUST_COMMA :{COMMA} STR_JUST_CURRENCY_SHORT :{CURRENCY_SHORT} STR_JUST_CURRENCY_LONG :{CURRENCY_LONG} STR_JUST_CARGO_LIST :{CARGO_LIST} +STR_JUST_DECIMAL :{DECIMAL} STR_JUST_INT :{NUM} STR_JUST_DATE_TINY :{DATE_TINY} STR_JUST_DATE_SHORT :{DATE_SHORT} diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index e8640a368f..39335140a1 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -192,38 +192,38 @@ STR_COLOUR_GREY :Сиво STR_COLOUR_WHITE :Бяло # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} мил{P я и}/ч -STR_UNITS_VELOCITY_METRIC :{COMMA} км/ч -STR_UNITS_VELOCITY_SI :{COMMA} м/с +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} мил{P я и}/ч +STR_UNITS_VELOCITY_METRIC :{DECIMAL} км/ч +STR_UNITS_VELOCITY_SI :{DECIMAL} м/с -STR_UNITS_POWER_IMPERIAL :{COMMA} к.с. -STR_UNITS_POWER_METRIC :{COMMA} к.с. -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL} к.с. +STR_UNITS_POWER_METRIC :{DECIMAL} к.с. +STR_UNITS_POWER_SI :{DECIMAL} kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} т. -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} кг. +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}т +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL} т. +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} кг. -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} тон{P "" а} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} тон{P "" а} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} тон{P "" а} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} тон{P "" а} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}гал -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} л. -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}гал +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL} л. +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" и} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}лит{P ър ри} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}куб. м. +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}галон{P "" и} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}лит{P ър ри} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}куб. м. -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}фут +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}м +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Филтриращ низ: diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index 8fb144e603..7c3bba4f7e 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :{G=Masculin}Bla STR_COLOUR_RANDOM :Aleatori # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}cel·les/dia -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}{P nus nusos} +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}{P nus nusos} -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}cv -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}cv +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}cv +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}CV/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}CV/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a es} -STR_UNITS_WEIGHT_LONG_METRIC :{G=Femenin}{COMMA}{NBSP}ton{P a es} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}quilogram{P "" s} +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P a es} +STR_UNITS_WEIGHT_LONG_METRIC :{G=Femenin}{DECIMAL}{NBSP}ton{P a es} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}quilogram{P "" s} -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}L -STR_UNITS_VOLUME_SHORT_SI :{G=Masculin}{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}L +STR_UNITS_VOLUME_SHORT_SI :{G=Masculin}{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gal{P ó ons} -STR_UNITS_VOLUME_LONG_METRIC :{G=Masculin}{COMMA}{NBSP}litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{G=Masculin}{COMMA}{NBSP}metre{P "" s}{NBSP}cúbic{P "" s} +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gal{P ó ons} +STR_UNITS_VOLUME_LONG_METRIC :{G=Masculin}{DECIMAL}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{G=Masculin}{DECIMAL}{NBSP}metre{P "" s}{NBSP}cúbic{P "" s} -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{G=Masculin}{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{G=Masculin}{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{G=Masculin}{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{G=Masculin}{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtre: @@ -2692,8 +2692,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construe STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Selecciona un tipus de estació a mostrar STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Selecciona el tipus de estació a construir -STR_STATION_CLASS_DFLT :Estació predeterminada +STR_STATION_CLASS_DFLT :Per defecte +STR_STATION_CLASS_DFLT_STATION :Estació per defecte +STR_STATION_CLASS_DFLT_ROADSTOP :Parada de vehicles de carretera per defecte STR_STATION_CLASS_WAYP :Punt de pas +STR_STATION_CLASS_WAYP_WAYPOINT :Punt de pas per defecte # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Selecció de senyals diff --git a/src/lang/chuvash.txt b/src/lang/chuvash.txt index cf6eb6e1a6..7a30d71599 100644 --- a/src/lang/chuvash.txt +++ b/src/lang/chuvash.txt @@ -151,11 +151,11 @@ STR_COLOUR_GREY :Сӑрӑ STR_COLOUR_WHITE :Шурӑ # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} мил/с -STR_UNITS_VELOCITY_METRIC :{COMMA} км/с -STR_UNITS_VELOCITY_SI :{COMMA} м/ҫ +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} мил/с +STR_UNITS_VELOCITY_METRIC :{DECIMAL} км/с +STR_UNITS_VELOCITY_SI :{DECIMAL} м/ҫ -STR_UNITS_POWER_SI :{COMMA}кВт +STR_UNITS_POWER_SI :{DECIMAL}кВт diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index 6efb4d1453..0e3a70bdac 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -287,38 +287,38 @@ STR_COLOUR_WHITE :Bijela STR_COLOUR_RANDOM :Nasumično # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}KS -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KS -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}KS +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}KS +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a e e} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a e a} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P a e e} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton{P a e a} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P "" a a} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lit{P ra re ara} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon{P "" a a} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}lit{P ra re ara} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtriraj niz: diff --git a/src/lang/czech.txt b/src/lang/czech.txt index ee69c292d2..ae438602d9 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -266,14 +266,14 @@ STR_COLOUR_WHITE :Bílá STR_COLOUR_RANDOM :Náhodná # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}m{P íle íle il}/h -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}m{P íle íle il}/h +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}políčka/den -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -285,29 +285,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tun{P a y ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tun{P a y ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tun{P a y ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tun{P a y ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" "y" "ů"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P "" y ů} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" "y" "ů"} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr{P "" y ů} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}stop{P a y ""} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}stop{P a y ""} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtrovat řetězec: diff --git a/src/lang/danish.txt b/src/lang/danish.txt index a648b53474..b47b60da5c 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :Hvid STR_COLOUR_RANDOM :Tilfældig # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} miles/t -STR_UNITS_VELOCITY_METRIC :{COMMA} km/t -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} miles/t +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/t +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}felter/dag -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}knob +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}knob -STR_UNITS_POWER_IMPERIAL :{COMMA}hk -STR_UNITS_POWER_METRIC :{COMMA}hk -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hk +STR_UNITS_POWER_METRIC :{DECIMAL}hk +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ton{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} gallon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kp -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kp +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} fod -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} fod +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtrer udtryk: diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index a6f6c3f140..b1b628aff3 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :Wit STR_COLOUR_RANDOM :Willekeurig # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/u -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/u +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}tegels/dag -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}knopen +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}knopen -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}pk +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}pk +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}pk/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: @@ -1170,6 +1170,7 @@ STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Alles ui STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Alles inklappen STR_CONFIG_SETTING_RESET_ALL :{BLACK}Alle waarden terugstellen STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(geen uitleg beschikbaar) +STR_CONFIG_SETTING_VALUE :{PUSH_COLOUR}{ORANGE}{STRING}{POP_COLOUR} STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Standaardwaarde: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Instellingstype: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE_CLIENT :Gebruikersinstellingen (niet opgeslagen in bestand; van invloed op alle spellen) @@ -2690,8 +2691,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Je kunt STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Selecteer een stationsklasse om weer te geven STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Selecteer het type station om te bouwen -STR_STATION_CLASS_DFLT :Standaardstation +STR_STATION_CLASS_DFLT :Standaard +STR_STATION_CLASS_DFLT_STATION :Standaard station +STR_STATION_CLASS_DFLT_ROADSTOP :Standaard wegstation STR_STATION_CLASS_WAYP :Routepunten +STR_STATION_CLASS_WAYP_WAYPOINT :Standaard routepunt # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Seinselectie @@ -3827,6 +3831,8 @@ STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Stuur in STR_VEHICLE_LIST_REPLACE_VEHICLES :Vervang voertuigen STR_VEHICLE_LIST_SEND_FOR_SERVICING :Stuur voor onderhoud STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Winst dit jaar: {CURRENCY_LONG} (vorig jaar: {CURRENCY_LONG}) +STR_VEHICLE_LIST_CARGO :[{CARGO_LIST}] +STR_VEHICLE_LIST_NAME_AND_CARGO :{STRING} {STRING} STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Stuur naar depot STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Stuur naar garage @@ -5588,11 +5594,13 @@ STR_VEHICLE_NAME :{VEHICLE} STR_WAYPOINT_NAME :{WAYPOINT} STR_JUST_CARGO :{CARGO_LONG} +STR_JUST_RIGHT_ARROW :{RIGHT_ARROW} STR_JUST_CHECKMARK :{CHECKMARK} STR_JUST_COMMA :{COMMA} STR_JUST_CURRENCY_SHORT :{CURRENCY_SHORT} STR_JUST_CURRENCY_LONG :{CURRENCY_LONG} STR_JUST_CARGO_LIST :{CARGO_LIST} +STR_JUST_DECIMAL :{DECIMAL} STR_JUST_INT :{NUM} STR_JUST_DATE_TINY :{DATE_TINY} STR_JUST_DATE_SHORT :{DATE_SHORT} diff --git a/src/lang/english.txt b/src/lang/english.txt index 39f58b6ac1..18c9909454 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :White STR_COLOUR_RANDOM :Random # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}tiles/day -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}knots +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}knots -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: @@ -2691,8 +2691,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Build a STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Select a station class to display STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Select the station type to build -STR_STATION_CLASS_DFLT :Default station +STR_STATION_CLASS_DFLT :Default +STR_STATION_CLASS_DFLT_STATION :Default station +STR_STATION_CLASS_DFLT_ROADSTOP :Default road stop STR_STATION_CLASS_WAYP :Waypoints +STR_STATION_CLASS_WAYP_WAYPOINT :Default waypoint # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Signal Selection diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 8867f9a63f..07b9a28865 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :White STR_COLOUR_RANDOM :Random # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}tiles/day -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}knots +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}knots -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: @@ -2691,8 +2691,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Build a STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Select a station class to display STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Select the station type to build -STR_STATION_CLASS_DFLT :Default station +STR_STATION_CLASS_DFLT :Default +STR_STATION_CLASS_DFLT_STATION :Default station +STR_STATION_CLASS_DFLT_ROADSTOP :Default road stop STR_STATION_CLASS_WAYP :Waypoints +STR_STATION_CLASS_WAYP_WAYPOINT :Default waypoint # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Signal Selection diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 4a51f38edb..0eb7e3dda4 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :White STR_COLOUR_RANDOM :Random # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}tiles/day -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}knots +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}knots -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: @@ -2691,8 +2691,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Build a STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Select a station class to display STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Select the station type to build -STR_STATION_CLASS_DFLT :Default station +STR_STATION_CLASS_DFLT :Default +STR_STATION_CLASS_DFLT_STATION :Default station +STR_STATION_CLASS_DFLT_ROADSTOP :Default road stop STR_STATION_CLASS_WAYP :Waypoints +STR_STATION_CLASS_WAYP_WAYPOINT :Default waypoint # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Signal Selection diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index 5dc9b38a42..b6465d78fe 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -190,38 +190,38 @@ STR_COLOUR_GREY :Griza STR_COLOUR_WHITE :Blanka # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ĉp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ĉp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}ĉp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}ĉp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tuno{P "" j} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tuno{P "" j} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tuno{P "" j} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tuno{P "" j} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galono{P "" j} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" j} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galono{P "" j} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litro{P "" j} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtroteksto: diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index bb88f693f3..76f395de51 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -248,14 +248,14 @@ STR_COLOUR_WHITE :Valge STR_COLOUR_RANDOM :Suvaline # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} miili tunnis -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} miili tunnis +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}ruutu/päev -STR_UNITS_POWER_IMPERIAL :{COMMA}hj -STR_UNITS_POWER_METRIC :{COMMA}hj -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hj +STR_UNITS_POWER_METRIC :{DECIMAL}hj +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hj/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hj/t @@ -267,29 +267,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonn{P "" i} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonn{P "" i} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} tonn{P "" i} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tonn{P "" i} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gallon{P "" it} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liit{P er rit} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} gallon{P "" it} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} liit{P er rit} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} meeter -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} meeter +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Märksõna: diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index 1568dce43c..12f9742be9 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -190,31 +190,31 @@ STR_COLOUR_GREY :Grátt STR_COLOUR_WHITE :Hvítt # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/t -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/t +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hp +STR_UNITS_POWER_METRIC :{DECIMAL}hp +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tons -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tons +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lit{P ur rar} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} lit{P ur rar} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtur strong: diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index 22d0ed40b6..80f6cce23f 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :Valkoinen STR_COLOUR_RANDOM :Satunnainen # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}ruutua/vrk -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}solmua +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}solmua -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hv -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hv -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hv +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hv +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hv/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hv/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonni{P "" a} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonni{P "" a} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tonni{P "" a} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonni{P "" a} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallona{P "" a} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litra{P "" a} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallona{P "" a} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litra{P "" a} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Suodatin: diff --git a/src/lang/french.txt b/src/lang/french.txt index 60651b27ba..210a8d8e18 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :Blanc STR_COLOUR_RANDOM :Aléatoire # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}cases/jour -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}nœuds +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}nœuds -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ch -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}ch +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{G=f}{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{G=f}{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{G=f}{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{G=f}{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=f}{COMMA}{NBSP}tonne{P "" s}{NBSP}courte{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{G=f}{COMMA}{NBSP}tonne{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=f}{DECIMAL}{NBSP}tonne{P "" s}{NBSP}courte{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{G=f}{DECIMAL}{NBSP}tonne{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litre{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtre{NBSP}: diff --git a/src/lang/frisian.txt b/src/lang/frisian.txt index 44cbdeb333..0bf9212d83 100644 --- a/src/lang/frisian.txt +++ b/src/lang/frisian.txt @@ -189,38 +189,38 @@ STR_COLOUR_GREY :Griis STR_COLOUR_WHITE :Wyt # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mpo -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/o -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mpo +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/o +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P "" nen} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton{P "" nen} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index 36e4968fe6..63bf8e42a1 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -377,38 +377,38 @@ STR_COLOUR_GREY :Liath STR_COLOUR_WHITE :Geal # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}{P tunna thunna tunnaichean tunna} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}{P tunna thunna tunnaichean tunna} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}{P tunna thunna tunnaichean tunna} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}{P tunna thunna tunnaichean tunna} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}{P ghalan ghalan galanan galan} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}{P liotair liotair liotairean liotair} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}{P ghalan ghalan galanan galan} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}{P liotair liotair liotairean liotair} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Sreang criathraige: diff --git a/src/lang/galician.txt b/src/lang/galician.txt index 237271e217..28a91f4dc3 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :Branco STR_COLOUR_RANDOM :Ao chou # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}cadros/día -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}nudos +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}nudos -STR_UNITS_POWER_IMPERIAL :{COMMA}cv -STR_UNITS_POWER_METRIC :{COMMA}cv -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}cv +STR_UNITS_POWER_METRIC :{DECIMAL}cv +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galón{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} galón{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pés -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} pés +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtrar: diff --git a/src/lang/german.txt b/src/lang/german.txt index eeae660b27..115e0fc3aa 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -192,14 +192,14 @@ STR_COLOUR_WHITE :Weiß STR_COLOUR_RANDOM :Zufällig # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}Kacheln/Tag -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}PS -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}PS -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}PS +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}PS +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}Tonne{P "" n} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}Tonne{P "" n} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}Tonne{P "" n} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}Tonne{P "" n} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}Gallone{P "" n} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}Liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}Gallone{P "" n} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}Liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kp +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}Fuß -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}Fuß +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: diff --git a/src/lang/greek.txt b/src/lang/greek.txt index ccea7e6e2f..be45f3ce8e 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -252,14 +252,14 @@ STR_COLOUR_WHITE :Λευκό STR_COLOUR_RANDOM :Τυχαία # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}μίλια/ώρα -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}χλμ/ώρα -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}μίλια/ώρα +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}χλμ/ώρα +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}τετραγωνίδια/ημέρα -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -270,29 +270,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}τ. -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}τ. -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}τ. +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}τ. +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}τόνο{P ς ι} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}τόνο{P ς ι} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}τόνο{P ς ι} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}τόνο{P ς ι} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}γαλ -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}λ -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}γαλ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}λ +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}γαλόν{P "ι" "ια"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}λίτρ{P ο α} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}γαλόν{P "ι" "ια"} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}λίτρ{P ο α} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}πόδ{P "ι" "ια"} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}μ -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}πόδ{P "ι" "ια"} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}μ +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Φιλτράρισμα λίστας: diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index 781500d23c..a6ab3ea0c8 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -203,39 +203,39 @@ STR_COLOUR_GREY :אפור STR_COLOUR_WHITE :לבן # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} מייל לשעה -STR_UNITS_VELOCITY_METRIC :{COMMA} קמ"ש -STR_UNITS_VELOCITY_SI :{COMMA} מטר\שניה +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} מייל לשעה +STR_UNITS_VELOCITY_METRIC :{DECIMAL} קמ"ש +STR_UNITS_VELOCITY_SI :{DECIMAL} מטר\שניה -STR_UNITS_POWER_IMPERIAL :{COMMA}כ"ס -STR_UNITS_POWER_METRIC :{COMMA}כ"ס -STR_UNITS_POWER_SI :{COMMA}קילו וואט +STR_UNITS_POWER_IMPERIAL :{DECIMAL}כ"ס +STR_UNITS_POWER_METRIC :{DECIMAL}כ"ס +STR_UNITS_POWER_SI :{DECIMAL}קילו וואט STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ט' -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}ט' -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}ק"ג +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}ט' +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}ט' +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}ק"ג -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} טו{P ן נות} -STR_UNITS_WEIGHT_LONG_METRIC :{P 0 "טון " ""}{COMMA}{P "" " טונות"} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} ק"ג +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} טו{P ן נות} +STR_UNITS_WEIGHT_LONG_METRIC :{P 0 "טון " ""}{DECIMAL}{P "" " טונות"} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} ק"ג -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}גל' -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}ל' -STR_UNITS_VOLUME_SHORT_SI :{COMMA}מ'³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}גל' +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}ל' +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}מ'³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} גלו{P ן ים} -STR_UNITS_VOLUME_LONG_METRIC :{P 0 "ליטר " ""}{COMMA}{P "" " ליטרים"} -STR_UNITS_VOLUME_LONG_SI :{COMMA} ³מטר +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} גלו{P ן ים} +STR_UNITS_VOLUME_LONG_METRIC :{P 0 "ליטר " ""}{DECIMAL}{P "" " ליטרים"} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} ³מטר -STR_UNITS_FORCE_IMPERIAL :{COMMA} ליברות כוח -STR_UNITS_FORCE_METRIC :{COMMA} ק"ג -STR_UNITS_FORCE_SI :{COMMA} קילו ניוטן +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} ליברות כוח +STR_UNITS_FORCE_METRIC :{DECIMAL} ק"ג +STR_UNITS_FORCE_SI :{DECIMAL} קילו ניוטן -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} רגל -STR_UNITS_HEIGHT_METRIC :{COMMA} מ' -STR_UNITS_HEIGHT_SI :{COMMA} מ' +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} רגל +STR_UNITS_HEIGHT_METRIC :{DECIMAL} מ' +STR_UNITS_HEIGHT_SI :{DECIMAL} מ' # Common window strings STR_LIST_FILTER_TITLE :{BLACK}מחרוזת סינון: diff --git a/src/lang/hindi.txt b/src/lang/hindi.txt index b01c519b19..879b665d60 100644 --- a/src/lang/hindi.txt +++ b/src/lang/hindi.txt @@ -64,7 +64,7 @@ STR_COLOUR_RED :लाल # Units used in OpenTTD -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 55b306d289..260f4e1a54 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -254,14 +254,14 @@ STR_COLOUR_WHITE :Fehér STR_COLOUR_RANDOM :Véletlenszerű # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mi/h -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mi/h +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}mező/nap -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}LE -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}LE -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}LE +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}LE +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}LE/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}LE/t @@ -273,29 +273,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonna -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonna -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tonna +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonna +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}köbméter +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}köbméter -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kp +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}láb -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}láb +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Szűrő kifejezés: diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index 4b13e27113..798af59b57 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -190,31 +190,31 @@ STR_COLOUR_GREY :Grár STR_COLOUR_WHITE :Hvítur # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mílur/klst -STR_UNITS_VELOCITY_METRIC :{COMMA} km/klst -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mílur/klst +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/klst +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hö. -STR_UNITS_POWER_METRIC :{COMMA}hö. -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hö. +STR_UNITS_POWER_METRIC :{DECIMAL}hö. +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}tonn -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}tonn +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonn -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tonn +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lítr{P i ar} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} lítr{P i ar} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Sía: diff --git a/src/lang/ido.txt b/src/lang/ido.txt index aa1579105f..828b5c41d7 100644 --- a/src/lang/ido.txt +++ b/src/lang/ido.txt @@ -188,31 +188,31 @@ STR_COLOUR_GREY :Griza STR_COLOUR_WHITE :Blanka # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}kp -STR_UNITS_POWER_METRIC :{COMMA}kp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}kp +STR_UNITS_POWER_METRIC :{DECIMAL}kp +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tun{P o i} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tun{P o i} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P o i} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} litr{P o i} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pd -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} pd +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index 5430c15b18..a09156765a 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :Putih STR_COLOUR_RANDOM :Acak # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mil/j -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/jam -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}meter/detik +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mil/j +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/jam +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}meter/detik STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}ubin/hari -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}dk -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}dk -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}dk +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}dk +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/waktu STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ton +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}kaki -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}kaki +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Saring: diff --git a/src/lang/irish.txt b/src/lang/irish.txt index c96d59f467..45505e4a80 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -191,39 +191,39 @@ STR_COLOUR_WHITE :Bán STR_COLOUR_RANDOM :Randamach # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}m/u -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/u -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}m/u +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/u +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}{P th th th dt t}íl/lá -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hp +STR_UNITS_POWER_METRIC :{DECIMAL}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tona -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}{P "th" "th" "th" "dt" "t"}ona -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tona +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}{P "th" "th" "th" "dt" "t"}ona +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galún -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lítear -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galún +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}lítear +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}tr -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}tr +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Teaghrán scagtha: diff --git a/src/lang/italian.txt b/src/lang/italian.txt index e740ac05fd..426e8fd569 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -193,15 +193,15 @@ STR_COLOUR_WHITE :Bianco STR_COLOUR_RANDOM :Casuale # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}caselle/giorno -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}nodi +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}nodi -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -213,29 +213,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonnellat{P a e} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonnellat{P a e} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P e i} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P o i} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P e i} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr{P o i} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}piedi -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}piedi +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: @@ -2732,8 +2732,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Costruis STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Seleziona il tipo di stazioni da mostrare STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Seleziona il tipo di stazione da costruire -STR_STATION_CLASS_DFLT :Stazione predefinita +STR_STATION_CLASS_DFLT :Predefinita +STR_STATION_CLASS_DFLT_STATION :Stazione predefinita +STR_STATION_CLASS_DFLT_ROADSTOP :Fermata stradale predefinita STR_STATION_CLASS_WAYP :Waypoint +STR_STATION_CLASS_WAYP_WAYPOINT :Waypoint predefinito # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Selezione segnale diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index 56772ea119..e34746d670 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :白 STR_COLOUR_RANDOM :ランダム # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}km/h -STR_UNITS_VELOCITY_SI :{COMMA}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}タイル/日 -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}ノット +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}ノット -STR_UNITS_POWER_IMPERIAL :{COMMA}英馬力 -STR_UNITS_POWER_METRIC :{COMMA}仏馬力 -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}英馬力 +STR_UNITS_POWER_METRIC :{DECIMAL}仏馬力 +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t. -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t. +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}米トン -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}トン -STR_UNITS_WEIGHT_LONG_SI :{COMMA}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}米トン +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}トン +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal. -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}ℓ -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal. +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}ℓ +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}ガロン -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}リットル -STR_UNITS_VOLUME_LONG_SI :{COMMA}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}ガロン +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}リットル +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}重量ポンド -STR_UNITS_FORCE_METRIC :{COMMA}kgf -STR_UNITS_FORCE_SI :{COMMA}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}重量ポンド +STR_UNITS_FORCE_METRIC :{DECIMAL}kgf +STR_UNITS_FORCE_SI :{DECIMAL}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}フィート -STR_UNITS_HEIGHT_METRIC :{COMMA}m -STR_UNITS_HEIGHT_SI :{COMMA}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}フィート +STR_UNITS_HEIGHT_METRIC :{DECIMAL}m +STR_UNITS_HEIGHT_SI :{DECIMAL}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}フィルター: diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 362801a0a1..8a66a43255 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :흰색 STR_COLOUR_RANDOM :무작위 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}km/h -STR_UNITS_VELOCITY_SI :{COMMA}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}칸/일 -STR_UNITS_VELOCITY_KNOTS :{COMMA}노트 +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}노트 -STR_UNITS_POWER_IMPERIAL :{COMMA}마력 -STR_UNITS_POWER_METRIC :{COMMA}마력 -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}마력 +STR_UNITS_POWER_METRIC :{DECIMAL}마력 +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}마력/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}마력/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}톤 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}톤 -STR_UNITS_WEIGHT_LONG_SI :{COMMA}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}톤 +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}톤 +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}갤런 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}갤런 +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}갤런 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}리터 -STR_UNITS_VOLUME_LONG_SI :{COMMA}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}갤런 +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}리터 +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}파운드중 -STR_UNITS_FORCE_METRIC :{COMMA}kgf -STR_UNITS_FORCE_SI :{COMMA}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}파운드중 +STR_UNITS_FORCE_METRIC :{DECIMAL}kgf +STR_UNITS_FORCE_SI :{DECIMAL}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}피트 -STR_UNITS_HEIGHT_METRIC :{COMMA}m -STR_UNITS_HEIGHT_SI :{COMMA}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}피트 +STR_UNITS_HEIGHT_METRIC :{DECIMAL}m +STR_UNITS_HEIGHT_SI :{DECIMAL}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}검색: diff --git a/src/lang/latin.txt b/src/lang/latin.txt index 66554994b5..cb87f41701 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -379,38 +379,38 @@ STR_COLOUR_WHITE :Albus STR_COLOUR_RANDOM :Fortuitus # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=fp}{COMMA}{NBSP}tona{P "" e} -STR_UNITS_WEIGHT_LONG_METRIC :{G=fp}{COMMA}{NBSP}tonna{P "" e} -STR_UNITS_WEIGHT_LONG_SI :{G=np}{COMMA}{NBSP}chiliogramma{P "" ta} +STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=fp}{DECIMAL}{NBSP}tona{P "" e} +STR_UNITS_WEIGHT_LONG_METRIC :{G=fp}{DECIMAL}{NBSP}tonna{P "" e} +STR_UNITS_WEIGHT_LONG_SI :{G=np}{DECIMAL}{NBSP}chiliogramma{P "" ta} -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{G=mp}{COMMA}{NBSP}congi{P us i} -STR_UNITS_VOLUME_LONG_METRIC :{G=np}{COMMA}{NBSP}litr{P um a} -STR_UNITS_VOLUME_LONG_SI :{G=np}{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{G=mp}{DECIMAL}{NBSP}congi{P us i} +STR_UNITS_VOLUME_LONG_METRIC :{G=np}{DECIMAL}{NBSP}litr{P um a} +STR_UNITS_VOLUME_LONG_SI :{G=np}{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pedes -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pedes +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Series colans: diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index b5c54257cd..cec14270fa 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -193,14 +193,14 @@ STR_COLOUR_WHITE :Balta STR_COLOUR_RANDOM :Nejaušs # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}jūdzes stundā -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}jūdzes stundā +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}lauciņi/diena -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ZS -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ZS -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}ZS +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}ZS +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}zs/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}zs/l @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonn{P a as u} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonn{P a as u} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tonn{P a as u} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonn{P a as u} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P s i u} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P s i u} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon{P s i u} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr{P s i u} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pēdas -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pēdas +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filters: diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index f2d5ac4f1f..f8e4e1944f 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -386,14 +386,14 @@ STR_COLOUR_WHITE :Balta STR_COLOUR_RANDOM :Atsitiktinė # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}langeliai per dieną -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}AG -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}AG -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}AG +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}AG +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}ag/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg @@ -402,29 +402,29 @@ STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP} STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}ag/Mg STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a os ų} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a os ų} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P a os ų} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton{P a os ų} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P as ai ų} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P as ai ų} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon{P as ai ų} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr{P as ai ų} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Raktažodis: diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index e10ac61b21..2beb5e3d5b 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :Wäiss STR_COLOUR_RANDOM :Zoufälleg # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}Felder/Dag -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bhp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ps -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}bhp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}ps +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}Tonn{P "" en} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}Tonn{P "" en} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}Tonn{P "" en} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}Tonn{P "" en} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}Galloun{P "" en} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}Liter{P "" ""} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}Galloun{P "" en} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}Liter{P "" ""} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: diff --git a/src/lang/macedonian.txt b/src/lang/macedonian.txt index 0ab05ad98c..bd199d3f49 100644 --- a/src/lang/macedonian.txt +++ b/src/lang/macedonian.txt @@ -189,31 +189,31 @@ STR_COLOUR_GREY :Сива STR_COLOUR_WHITE :Бела # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}кс -STR_UNITS_POWER_METRIC :{COMMA}кс -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}кс +STR_UNITS_POWER_METRIC :{DECIMAL}кс +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} тон{P "" и} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} тон{P "" и} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} лит{P ар ри} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} лит{P ар ри} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_OSKTITLE :{BLACK}Внесете филтер низа diff --git a/src/lang/malay.txt b/src/lang/malay.txt index c66ec92406..a28eb9d85c 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -189,33 +189,33 @@ STR_COLOUR_GREY :Kelabu STR_COLOUR_WHITE :Putih # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} bp/j -STR_UNITS_VELOCITY_METRIC :{COMMA} km/j -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} bp/j +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/j +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}kk -STR_UNITS_POWER_METRIC :{COMMA}kk -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}kk +STR_UNITS_POWER_METRIC :{DECIMAL}kk +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tan{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tan -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tan{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tan +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ka -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ka +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Tapis barisan: diff --git a/src/lang/maltese.txt b/src/lang/maltese.txt index 875fb118fe..95e6e337fb 100644 --- a/src/lang/maltese.txt +++ b/src/lang/maltese.txt @@ -142,31 +142,31 @@ STR_COLOUR_GREY :Griż STR_COLOUR_WHITE :Abjad # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hp +STR_UNITS_POWER_METRIC :{DECIMAL}hp +STR_UNITS_POWER_SI :{DECIMAL}kW -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tunnellat{P a i i i} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tunnellat{P a i i i} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litr{P u i i i} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} litr{P u i i i} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_OSKTITLE :{BLACK}Daħħal sentenza għall-iffiltrar diff --git a/src/lang/marathi.txt b/src/lang/marathi.txt index 376237398c..1942587181 100644 --- a/src/lang/marathi.txt +++ b/src/lang/marathi.txt @@ -189,27 +189,27 @@ STR_COLOUR_GREY :करडा STR_COLOUR_WHITE :पांढरा # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} किमी / तास -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} किमी / तास +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hp +STR_UNITS_POWER_METRIC :{DECIMAL}hp -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ट -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}ट -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} किलो +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}ट +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}ट +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} किलो -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} टन -STR_UNITS_WEIGHT_LONG_SI :{COMMA} किलो +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} टन +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} किलो -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}गॅलन -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}लि -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}गॅलन +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}लि +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} लिटर -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} लिटर +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 12405d545e..39970979b8 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -193,40 +193,40 @@ STR_COLOUR_WHITE :Hvit STR_COLOUR_RANDOM :Tilfeldig # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mi/t -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/t -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mi/t +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/t +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}ruter/dag -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hk +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hk +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonn -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonn{P "" ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tonn +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonn{P "" ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL} m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}fot -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}fot +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filterstreng: diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index b18b471f4a..86c1c5f081 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -191,38 +191,38 @@ STR_COLOUR_GREY :Grå STR_COLOUR_WHITE :Kvit # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mi/t -STR_UNITS_VELOCITY_METRIC :{COMMA} km/t -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mi/t +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/t +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA} hk -STR_UNITS_POWER_METRIC :{COMMA} hk -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL} hk +STR_UNITS_POWER_METRIC :{DECIMAL} hk +STR_UNITS_POWER_SI :{DECIMAL} kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL} t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL} t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} britisk{P "" e} ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonn -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} britisk{P "" e} ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tonn +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA} gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL} gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL} l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL} m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} britisk{P "" e} gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} liter -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} britisk{P "" e} gallon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} fot -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} fot +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Søkefilter: diff --git a/src/lang/persian.txt b/src/lang/persian.txt index 77c3508342..b00801d621 100644 --- a/src/lang/persian.txt +++ b/src/lang/persian.txt @@ -189,31 +189,31 @@ STR_COLOUR_GREY :خاکستری STR_COLOUR_WHITE :سفید # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}مایل بر ساعت -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}کیلومتر بر ساعت -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}متر بر ثانیه +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}مایل بر ساعت +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}کیلومتر بر ساعت +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}متر بر ثانیه -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}اسب بخار -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}اسب بخار -STR_UNITS_POWER_SI :{COMMA}{NBSP}کیلووات +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}اسب بخار +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}اسب بخار +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}کیلووات -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}تن -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}کیلوگرم +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}تن +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}کیلوگرم -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}تن -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}کیلوگرم +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}تن +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}کیلوگرم -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}لیتر -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}متر مکعب +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}لیتر +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}متر مکعب -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}لیتر{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}متر مکعب +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}لیتر{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}متر مکعب -STR_UNITS_FORCE_SI :{COMMA}{NBSP}کیلو نیوتن +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}کیلو نیوتن -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}پا -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}متر +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}پا +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}متر # Common window strings STR_LIST_FILTER_TITLE :{BLACK}متن فیلتر: diff --git a/src/lang/polish.txt b/src/lang/polish.txt index d6eb756bc0..0d532fd637 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -570,15 +570,15 @@ STR_COLOUR_WHITE :Biały STR_COLOUR_RANDOM :Losowy # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}p{P ole ola ól}/dzień -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}w. +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}w. -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KM -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}KM +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -590,29 +590,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton{P a y ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton{P a y ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton{P a y ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton{P a y ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon{P "" y ów} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr{P "" y ów} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon{P "" y ów} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr{P "" y ów} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}st{P opa opy óp} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}st{P opa opy óp} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtr: @@ -2983,7 +2983,7 @@ STR_TRANSPARENT_SIGNS_TOOLTIP :{BLACK}Przełą STR_TRANSPARENT_TREES_TOOLTIP :{BLACK}Przełącz przeźroczystość dla drzew. Ctrl+klik, aby zablokować STR_TRANSPARENT_HOUSES_TOOLTIP :{BLACK}Przełącz przeźroczystość dla budynków miejskich. Ctrl+klik, aby zablokować STR_TRANSPARENT_INDUSTRIES_TOOLTIP :{BLACK}Przełącz przeźroczystość dla przedsiębiorstw. Ctrl+klik, aby zablokować -STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Przełącz przeźroczystość dla infrastruktury takiej jak stacje, zajezdnie i pkt. orientacyjne. Ctrl+klik, aby zablokować +STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Przełącz przeźroczystość dla infrastruktury takiej jak stacje, zajezdnie i posterunki. Ctrl+klik, aby zablokować STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Przełącz przeźroczystość dla mostów. Ctrl+klik, aby zablokować STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Przełącz przeźroczystość dla obiektów takich jak latarnie morskie i anteny. Ctrl+klik, aby zablokować STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Przełącz przeźroczystość dla trakcji (linii nośnych). Ctrl+klik, aby zablokować @@ -3071,8 +3071,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Buduj st STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Wybierz rodzaj stacji do pokazania STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Wybierz typ stacji do zbudowania -STR_STATION_CLASS_DFLT :Typowa stacja +STR_STATION_CLASS_DFLT :Standardowa +STR_STATION_CLASS_DFLT_STATION :Standardowa stacja +STR_STATION_CLASS_DFLT_ROADSTOP :Standardowy przystanek STR_STATION_CLASS_WAYP :Posterunki +STR_STATION_CLASS_WAYP_WAYPOINT :Standardowy posterunek # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Wybór sygnałów @@ -3161,7 +3164,7 @@ STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Buduj ka STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Buduj śluzy. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Wybuduj stocznię (do kupowania i serwisowania statków). Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Zbuduj port. Ctrl umożliwia łączenie stacji. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów -STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Ustaw boję, która może być użyta jako pkt. orientacyjny. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów +STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Ustaw boję, która może być użyta jako punkt orientacyjny. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Zbuduj akwedukt. Shift przełącza pomiędzy trybem budowania a szacowaniem jego kosztów STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Stwórz akwen wodny.{}Tworzy kanał, chyba że przytrzymany jest CTRL na poziomie morza, wtedy pobliski teren zostanie zatopiony STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Umieszczanie rzek. Ctrl zaznacza obszar po przekątnej. @@ -4045,7 +4048,7 @@ STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Zmień n STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Wyśrodkuj widok główny na lokalizacji boi. Ctrl+klik otwiera nowy podgląd na jej lokalizację STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Zmień nazwę boi -STR_EDIT_WAYPOINT_NAME :{WHITE}Edytuj nazwę pkt. orientacyjnego +STR_EDIT_WAYPOINT_NAME :{WHITE}Edytuj nazwę posterunku # Finances window STR_FINANCES_CAPTION :{WHITE}Finanse {COMPANY} {BLACK}{COMPANY_NUM} @@ -5250,7 +5253,7 @@ STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Należy STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Przylega do więcej niż jednego istniejącego posterunku STR_ERROR_TOO_CLOSE_TO_ANOTHER_WAYPOINT :{WHITE}Zbyt blisko innego posterunku -STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Nie można budować tutaj punktu orientacyjnego... +STR_ERROR_CAN_T_BUILD_TRAIN_WAYPOINT :{WHITE}Nie można budować tutaj posterunku... STR_ERROR_CAN_T_POSITION_BUOY_HERE :{WHITE}Nie można tutaj ustawić boi... STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Nie można zmienić nazwy posterunku... diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 2de20e0dc4..3c641348c1 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :Branco STR_COLOUR_RANDOM :Aleatório # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP} blocos / dia -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}nós +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}nós -STR_UNITS_POWER_IMPERIAL :{COMMA}cv -STR_UNITS_POWER_METRIC :{COMMA}cv -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}cv +STR_UNITS_POWER_METRIC :{DECIMAL}cv +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} small ton{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} quilogramas +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} small ton{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} quilogramas -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} gal{P ão ões} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA} metros³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} gal{P ão ões} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} metros³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} pé(s) -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} pé(s) +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: @@ -2692,8 +2692,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construi STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Escolher a classe da estação a mostrar STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Escolher o tipo de estação a construir -STR_STATION_CLASS_DFLT :Estação padrão +STR_STATION_CLASS_DFLT :Padrão +STR_STATION_CLASS_DFLT_STATION :Estação padrão +STR_STATION_CLASS_DFLT_ROADSTOP :Paragem rodoviária padrão STR_STATION_CLASS_WAYP :Pontos de passagem +STR_STATION_CLASS_WAYP_WAYPOINT :Ponto de controlo padrão # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Selecção de Sinal diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index 3b4dba8d42..6a7b41c72c 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :Alb STR_COLOUR_RANDOM :Aleator # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}dale/zi -STR_UNITS_POWER_IMPERIAL :{COMMA}cp -STR_UNITS_POWER_METRIC :{COMMA}cp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}cp +STR_UNITS_POWER_METRIC :{DECIMAL}cp +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}cp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}cp/t @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}{P tonă tone "de tone"} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}{P tonă tone "de tone"} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}{P tonă tone "de tone"} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}{P tonă tone "de tone"} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}{P galon galoane "de galoane"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}{P litru litri "de litri"} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}{P galon galoane "de galoane"} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}{P litru litri "de litri"} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtru: diff --git a/src/lang/russian.txt b/src/lang/russian.txt index caa171ae33..9f57366173 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -317,15 +317,15 @@ STR_COLOUR_WHITE :Белый STR_COLOUR_RANDOM :Случайный # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}мил{P я и ь}/ч -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/ч -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}мил{P я и ь}/ч +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}км/ч +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}м/с STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}кл./день -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}уз{P ел ла лов} +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}уз{P ел ла лов} -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}лс -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}лс -STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}лс +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}лс +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}кВт STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}лс/т STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}лс/т @@ -337,29 +337,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}кВт/т STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}Вт/кг -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тонн{P а ы ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тонн{P а ы ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}тонн{P а ы ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}тонн{P а ы ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал. -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}гал. +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галлон{P "" а ов} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}литр{P "" а ов} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}галлон{P "" а ов} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}литр{P "" а ов} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт{P "" а ов}-силы -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс -STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}фунт{P "" а ов}-силы +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}кгс +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фут{P "" а ов} -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}фут{P "" а ов} +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}м +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фильтр: @@ -2862,8 +2862,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Пост STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Выберите класс станций для отображения STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Выберите тип станции для постройки -STR_STATION_CLASS_DFLT :По умолчанию +STR_STATION_CLASS_DFLT :Стандартная станция +STR_STATION_CLASS_DFLT_STATION :Стандартная ж/д станция +STR_STATION_CLASS_DFLT_ROADSTOP :Стандартная остановка STR_STATION_CLASS_WAYP :Точки пути +STR_STATION_CLASS_WAYP_WAYPOINT :Стандартная путевая точка # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Выбор сигналов diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index bc20e4454e..91a35b4e7c 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -379,14 +379,14 @@ STR_COLOUR_WHITE :Bela STR_COLOUR_RANDOM :Nasumična # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} milja na sat -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} milja na sat +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}pločica/dan -STR_UNITS_POWER_IMPERIAL :{COMMA}ks -STR_UNITS_POWER_METRIC :{COMMA}ks -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}ks +STR_UNITS_POWER_METRIC :{DECIMAL}ks +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -398,29 +398,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P a e a} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a e a} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} ton{P a e a} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ton{P a e a} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P "" a a} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lit{P ar ra ara} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} galon{P "" a a} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} lit{P ar ra ara} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Pretraga: diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index d550ddeb9d..5463560ce5 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :白 色 STR_COLOUR_RANDOM :随机 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}英里/小时 -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}千米/小时 -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}米/秒 +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}英里/小时 +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}千米/小时 +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}米/秒 STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}格/天 -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}匹马力 -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹马力 -STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}匹马力 +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}匹马力 +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}千瓦 STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}匹/英吨 STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}匹/吨 @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}千瓦/吨 STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}瓦/千克 -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}英吨 -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}吨 -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}千克 +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}英吨 +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}吨 +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}千克 -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}英吨 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}吨 -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}千克 +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}英吨 +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}吨 +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}千克 -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}加仑 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}升 -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}立方米 +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}加仑 +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}升 +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}立方米 -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}加仑 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}升 -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}立方米 +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}加仑 +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}升 +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}立方米 -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}磅力 -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}千克力 -STR_UNITS_FORCE_SI :{COMMA}{NBSP}千牛 +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}磅力 +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}千克力 +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}千牛 -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}英尺 -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}米 -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}米 +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}英尺 +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}米 +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}米 # Common window strings STR_LIST_FILTER_TITLE :{BLACK}关键字词: diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index bea3ff1063..8d1b59e969 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -255,15 +255,15 @@ STR_COLOUR_WHITE :Biela STR_COLOUR_RANDOM :Náhodná # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}políč{P ko ka ok}/deň -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}uzlov +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}uzlov -STR_UNITS_POWER_IMPERIAL :{COMMA}hp -STR_UNITS_POWER_METRIC :{COMMA}hp -STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}hp +STR_UNITS_POWER_METRIC :{DECIMAL}hp +STR_UNITS_POWER_SI :{DECIMAL}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -275,29 +275,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P "a" "y" ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a y ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} ton{P "a" "y" ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ton{P a y ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galón{P "" "y" "ov"} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lit{P er re rov} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} galón{P "" "y" "ov"} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} lit{P er re rov} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} st{P opa opy ôp} -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} st{P opa opy ôp} +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filter: diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index 2ea7c48a7d..3f858f4c6c 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -342,38 +342,38 @@ STR_COLOUR_GREY :Siva STR_COLOUR_WHITE :Bela # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} mph -STR_UNITS_VELOCITY_METRIC :{COMMA} km/h -STR_UNITS_VELOCITY_SI :{COMMA} m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL} km/h +STR_UNITS_VELOCITY_SI :{DECIMAL} m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}KM -STR_UNITS_POWER_METRIC :{COMMA}KM -STR_UNITS_POWER_SI :{COMMA} kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}KM +STR_UNITS_POWER_METRIC :{DECIMAL}KM +STR_UNITS_POWER_SI :{DECIMAL} kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL} t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ton{P a i e ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ton{P a i e ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} ton{P a i e ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ton{P a i e ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} l -STR_UNITS_VOLUME_SHORT_SI :{COMMA} m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL} l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL} m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} galon{P a i e ""} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} lit{P er ra ri ov} -STR_UNITS_VOLUME_LONG_SI :{COMMA} m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} galon{P a i e ""} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} lit{P er ra ri ov} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA} lbf -STR_UNITS_FORCE_METRIC :{COMMA} kgf -STR_UNITS_FORCE_SI :{COMMA} kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} lbf +STR_UNITS_FORCE_METRIC :{DECIMAL} kgf +STR_UNITS_FORCE_SI :{DECIMAL} kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ft -STR_UNITS_HEIGHT_METRIC :{COMMA} m -STR_UNITS_HEIGHT_SI :{COMMA} m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL} m +STR_UNITS_HEIGHT_SI :{DECIMAL} m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtriraj niz: diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index a40b0552c7..fa7bbba60c 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -192,14 +192,14 @@ STR_COLOUR_WHITE :Blanco STR_COLOUR_RANDOM :Aleatorio # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}casillas/día -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}cv +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gal{P ón ones} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gal{P ón ones} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kp +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pies -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pies +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index b01cb43e4a..76baf78c0f 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -192,14 +192,14 @@ STR_COLOUR_WHITE :Blanco STR_COLOUR_RANDOM :Aleatorio # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}casillas/día -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}cv +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=f}{COMMA}{NBSP}tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_METRIC :{G=f}{COMMA}{NBSP}tonelada{P "" s} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{G=f}{DECIMAL}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_METRIC :{G=f}{DECIMAL}{NBSP}tonelada{P "" s} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP} gal{P ón ones} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litro{P "" s} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP} gal{P ón ones} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litro{P "" s} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kp -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kp +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}pies -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pies +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtrar: diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index 1f3b4b0fa5..4c51e5d8c3 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :Vit STR_COLOUR_RANDOM :Slumpmässig # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}rutor/dag -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hk +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hk +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hk/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hk/t @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon{P "" s} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}liter -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon{P "" s} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}liter +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}fot -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}fot +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Sökfilter: diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index bc4655a735..1b2a7af2ab 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -191,40 +191,40 @@ STR_COLOUR_WHITE :வெள்ள STR_COLOUR_RANDOM :ஏதோவொரு # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}வட்டங்கள்/நாளிற்கு -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}டன் -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}டன் -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}கி.கி. +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}டன் +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}டன் +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}கி.கி. -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}டன்{P "" கள்} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}டன்{P "" கள்} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}கி.கி. +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}டன்{P "" கள்} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}டன்{P "" கள்} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}கி.கி. -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}கேலன் -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}லி -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}மீ³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}கேலன் +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}லி +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}மீ³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}கேலன்{P "" கள்} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}லிட்டர்{P "" கள்} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}மீ³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}கேலன்{P "" கள்} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}லிட்டர்{P "" கள்} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}மீ³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}அடி -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}மீ -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}மீ +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}அடி +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}மீ +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}மீ # Common window strings STR_LIST_FILTER_TITLE :{BLACK}வடிகட்டி தொடர்: diff --git a/src/lang/thai.txt b/src/lang/thai.txt index d960cd76a8..cf8653d758 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -190,38 +190,38 @@ STR_COLOUR_GREY :เทา STR_COLOUR_WHITE :ขาว # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} ไมล์/ชม. -STR_UNITS_VELOCITY_METRIC :{COMMA} กม./ชม. -STR_UNITS_VELOCITY_SI :{COMMA} ม./วิ. +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} ไมล์/ชม. +STR_UNITS_VELOCITY_METRIC :{DECIMAL} กม./ชม. +STR_UNITS_VELOCITY_SI :{DECIMAL} ม./วิ. -STR_UNITS_POWER_IMPERIAL :{COMMA} แรงม้า -STR_UNITS_POWER_METRIC :{COMMA} แรงม้า -STR_UNITS_POWER_SI :{COMMA} กิโลวัตต์ +STR_UNITS_POWER_IMPERIAL :{DECIMAL} แรงม้า +STR_UNITS_POWER_METRIC :{DECIMAL} แรงม้า +STR_UNITS_POWER_SI :{DECIMAL} กิโลวัตต์ -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ตัน -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} ตัน -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} กิโลกรัม +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}ตัน +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL} ตัน +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} กิโลกรัม -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA} ตัน -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} ตัน -STR_UNITS_WEIGHT_LONG_SI :{COMMA} กิโลกรัม +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL} ตัน +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} ตัน +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} กิโลกรัม -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}แกลลอน -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA} ลิตร -STR_UNITS_VOLUME_SHORT_SI :{COMMA} ลบ.ม. +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}แกลลอน +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL} ลิตร +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL} ลบ.ม. -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA} แกลลอน -STR_UNITS_VOLUME_LONG_METRIC :{COMMA} ลิตร -STR_UNITS_VOLUME_LONG_SI :{COMMA} ลบ.ม. +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL} แกลลอน +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL} ลิตร +STR_UNITS_VOLUME_LONG_SI :{DECIMAL} ลบ.ม. -STR_UNITS_FORCE_IMPERIAL :{COMMA} ปอนด์ -STR_UNITS_FORCE_METRIC :{COMMA} กิโลกรัม -STR_UNITS_FORCE_SI :{COMMA} กิโลนิวตัน +STR_UNITS_FORCE_IMPERIAL :{DECIMAL} ปอนด์ +STR_UNITS_FORCE_METRIC :{DECIMAL} กิโลกรัม +STR_UNITS_FORCE_SI :{DECIMAL} กิโลนิวตัน -STR_UNITS_HEIGHT_IMPERIAL :{COMMA} ฟุต -STR_UNITS_HEIGHT_METRIC :{COMMA} เมตร -STR_UNITS_HEIGHT_SI :{COMMA} ม. +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL} ฟุต +STR_UNITS_HEIGHT_METRIC :{DECIMAL} เมตร +STR_UNITS_HEIGHT_SI :{DECIMAL} ม. # Common window strings STR_LIST_FILTER_TITLE :{BLACK}คำกรอง: diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index e95e67d371..66176232ab 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -191,14 +191,14 @@ STR_COLOUR_WHITE :白 STR_COLOUR_RANDOM :隨機 # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}英里/小時 -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}公里/小時 -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}米/秒 +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}英里/小時 +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}公里/小時 +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}米/秒 STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}格/日 -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}匹 -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹 -STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}匹 +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}匹 +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}千瓦 STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}匹/短噸 STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}匹/公噸 @@ -210,29 +210,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}千瓦/公噸 STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}瓦/公斤 -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}短噸 -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}噸 -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}公斤 +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}短噸 +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}噸 +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}公斤 -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}短噸 -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}公噸 -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}公斤 +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}短噸 +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}公噸 +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}公斤 -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}加侖 -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}升 -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}米³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}加侖 +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}升 +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}米³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}加侖 -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}公升 -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}立方米 +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}加侖 +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}公升 +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}立方米 -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}磅力 -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}公斤力 -STR_UNITS_FORCE_SI :{COMMA}{NBSP}千牛頓 +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}磅力 +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}公斤力 +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}千牛頓 -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}英呎 -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}米 -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}公尺 +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}英呎 +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}米 +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}公尺 # Common window strings STR_LIST_FILTER_TITLE :{BLACK}篩選: diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 87b78680d2..598df6d867 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -192,15 +192,15 @@ STR_COLOUR_WHITE :Beyaz STR_COLOUR_RANDOM :Rastgele # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mil/s -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/s -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mil/s +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/s +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}karo/gün -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}hava hızı +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}hava hızı -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bg -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}bg -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}bg +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}bg +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}bg/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}bg/t @@ -212,29 +212,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litre -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litre +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtre: diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index d0dfe09e2b..1a36f91262 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -316,14 +316,14 @@ STR_COLOUR_WHITE :Білий STR_COLOUR_RANDOM :Випадково # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}миль/год -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}км/год -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}м/с +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}миль/год +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}км/год +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}м/с STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}клітинок/день -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к.с. -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. -STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}к.с. +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}к.с. +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}кВт STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}к.с/т STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}к.с./т @@ -335,29 +335,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}кВт/т STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}Вт/кг -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}т +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}кг -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}тонн{P "а" "и" ""} -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}тон{P а и ""} -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}кг +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}тонн{P "а" "и" ""} +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}тон{P а и ""} +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}кг -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}гал -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}л -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}гал +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}л +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}галон{P "" и ів} -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}літр{P "" "а" "ів"} -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}м³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}галон{P "" и ів} +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}літр{P "" "а" "ів"} +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}м³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}фунт-сила -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}кгс -STR_UNITS_FORCE_SI :{COMMA}{NBSP}кН +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}фунт-сила +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}кгс +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}кН -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}фт -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}м -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}м +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}фт +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}м +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}м # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Фільтр: diff --git a/src/lang/urdu.txt b/src/lang/urdu.txt index 47a96f74b9..38bddd848f 100644 --- a/src/lang/urdu.txt +++ b/src/lang/urdu.txt @@ -190,31 +190,31 @@ STR_COLOUR_GREY :سلیٹی STR_COLOUR_WHITE :سفید # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA} میل فی گھنٹھ -STR_UNITS_VELOCITY_METRIC :{COMMA} کلو میٹر فی گھنٹھ -STR_UNITS_VELOCITY_SI :{COMMA} میٹر فی سیکنڈ +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL} میل فی گھنٹھ +STR_UNITS_VELOCITY_METRIC :{DECIMAL} کلو میٹر فی گھنٹھ +STR_UNITS_VELOCITY_SI :{DECIMAL} میٹر فی سیکنڈ -STR_UNITS_POWER_IMPERIAL :{COMMA} ھارس پآور -STR_UNITS_POWER_METRIC :{COMMA} ھارس پآور -STR_UNITS_POWER_SI :{COMMA} کلو واٹ +STR_UNITS_POWER_IMPERIAL :{DECIMAL} ھارس پآور +STR_UNITS_POWER_METRIC :{DECIMAL} ھارس پآور +STR_UNITS_POWER_SI :{DECIMAL} کلو واٹ -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} من -STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL} من +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL} kg -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA} من -STR_UNITS_WEIGHT_LONG_SI :{COMMA} kg +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL} من +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL} kg -STR_UNITS_VOLUME_SHORT_METRIC :I{NBSP}{COMMA} -STR_UNITS_VOLUME_SHORT_SI :{NBSP}{COMMA}کیوبک میٹر +STR_UNITS_VOLUME_SHORT_METRIC :I{NBSP}{DECIMAL} +STR_UNITS_VOLUME_SHORT_SI :{NBSP}{DECIMAL}کیوبک میٹر -STR_UNITS_VOLUME_LONG_METRIC :{NBSP}{COMMA} لیٹر -STR_UNITS_VOLUME_LONG_SI :{NBSP}{COMMA}کیوبک میٹر +STR_UNITS_VOLUME_LONG_METRIC :{NBSP}{DECIMAL} لیٹر +STR_UNITS_VOLUME_LONG_SI :{NBSP}{DECIMAL}کیوبک میٹر -STR_UNITS_FORCE_SI :{NBSP}{COMMA}کلو نیوٹن +STR_UNITS_FORCE_SI :{NBSP}{DECIMAL}کلو نیوٹن -STR_UNITS_HEIGHT_IMPERIAL :{NBSP}{COMMA} فٹ -STR_UNITS_HEIGHT_SI :{NBSP}{COMMA} میٹر +STR_UNITS_HEIGHT_IMPERIAL :{NBSP}{DECIMAL} فٹ +STR_UNITS_HEIGHT_SI :{NBSP}{DECIMAL} میٹر # Common window strings STR_LIST_FILTER_OSKTITLE :{BLACK} چھان کے الفاظ درج کیجیئے diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index 13f3a7ef02..3118280a13 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -191,15 +191,15 @@ STR_COLOUR_WHITE :Trắng STR_COLOUR_RANDOM :Ngẫu nhiên # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s STR_UNITS_VELOCITY_GAMEUNITS :{DECIMAL}{NBSP}ô/ngày -STR_UNITS_VELOCITY_KNOTS :{COMMA}{NBSP}hải lý +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}hải lý -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t @@ -211,29 +211,29 @@ STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}ton -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tấn -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}ton +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tấn +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}gallon -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}lít -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gallon +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}lít +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}ft -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Lọc: diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index 99838f5e96..4c79ce874f 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -190,38 +190,38 @@ STR_COLOUR_GREY :Llwyd STR_COLOUR_WHITE :Gwyn # Units used in OpenTTD -STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mph -STR_UNITS_VELOCITY_METRIC :{COMMA}{NBSP}km/h -STR_UNITS_VELOCITY_SI :{COMMA}{NBSP}m/s +STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}mph +STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}km/h +STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s -STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp -STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp -STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp +STR_UNITS_POWER_SI :{DECIMAL}{NBSP}kW -STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t -STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_SHORT_IMPERIAL :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_METRIC :{DECIMAL}{NBSP}t +STR_UNITS_WEIGHT_SHORT_SI :{DECIMAL}{NBSP}kg -STR_UNITS_WEIGHT_LONG_IMPERIAL :{COMMA}{NBSP}tunell -STR_UNITS_WEIGHT_LONG_METRIC :{COMMA}{NBSP}tunnell -STR_UNITS_WEIGHT_LONG_SI :{COMMA}{NBSP}kg +STR_UNITS_WEIGHT_LONG_IMPERIAL :{DECIMAL}{NBSP}tunell +STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP}tunnell +STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg -STR_UNITS_VOLUME_SHORT_IMPERIAL :{COMMA}gal -STR_UNITS_VOLUME_SHORT_METRIC :{COMMA}{NBSP}l -STR_UNITS_VOLUME_SHORT_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}gal +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_VOLUME_LONG_IMPERIAL :{COMMA}{NBSP}galwyn -STR_UNITS_VOLUME_LONG_METRIC :{COMMA}{NBSP}litr -STR_UNITS_VOLUME_LONG_SI :{COMMA}{NBSP}m³ +STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}galwyn +STR_UNITS_VOLUME_LONG_METRIC :{DECIMAL}{NBSP}litr +STR_UNITS_VOLUME_LONG_SI :{DECIMAL}{NBSP}m³ -STR_UNITS_FORCE_IMPERIAL :{COMMA}{NBSP}lbf -STR_UNITS_FORCE_METRIC :{COMMA}{NBSP}kgf -STR_UNITS_FORCE_SI :{COMMA}{NBSP}kN +STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP}lbf +STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf +STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{COMMA}{NBSP}tr -STR_UNITS_HEIGHT_METRIC :{COMMA}{NBSP}m -STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}tr +STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m +STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Llinyn hidlo: diff --git a/src/linkgraph/flowmapper.cpp b/src/linkgraph/flowmapper.cpp index 85211ff971..240ea52004 100644 --- a/src/linkgraph/flowmapper.cpp +++ b/src/linkgraph/flowmapper.cpp @@ -54,8 +54,8 @@ void FlowMapper::Run(LinkGraphJob &job) const * division by 0 if spawn date == last compression date. This matches * LinkGraph::Monthly(). */ uint runtime = (job.StartDateTicks() / DAY_TICKS) - job.LastCompression() + 1; - for (FlowStatMap::iterator i = flows.begin(); i != flows.end(); ++i) { - i->ScaleToMonthly(runtime); + for (auto &it : flows) { + it.ScaleToMonthly(runtime); } } /* Clear paths. */ diff --git a/src/linkgraph/linkgraph_gui.cpp b/src/linkgraph/linkgraph_gui.cpp index c3329c3c7b..d700934e95 100644 --- a/src/linkgraph/linkgraph_gui.cpp +++ b/src/linkgraph/linkgraph_gui.cpp @@ -412,11 +412,11 @@ void LinkGraphOverlay::Draw(const DrawPixelInfo *dpi) const void LinkGraphOverlay::DrawLinks(const DrawPixelInfo *dpi) const { int width = ScaleGUITrad(this->scale); - for (LinkList::const_iterator i(this->cached_links.begin()); i != this->cached_links.end(); ++i) { - if (!this->IsLinkVisible(i->from_pt, i->to_pt, dpi, width + 2)) continue; - if (!Station::IsValidID(i->from_id)) continue; - if (!Station::IsValidID(i->to_id)) continue; - this->DrawContent(dpi, i->from_pt, i->to_pt, i->prop); + for (const auto &i : this->cached_links) { + if (!this->IsLinkVisible(i.from_pt, i.to_pt, dpi, width + 2)) continue; + if (!Station::IsValidID(i.from_id)) continue; + if (!Station::IsValidID(i.to_id)) continue; + this->DrawContent(dpi, i.from_pt, i.to_pt, i.prop); } } @@ -454,14 +454,14 @@ void LinkGraphOverlay::DrawContent(const DrawPixelInfo *dpi, Point pta, Point pt void LinkGraphOverlay::DrawStationDots(const DrawPixelInfo *dpi) const { int width = ScaleGUITrad(this->scale); - for (StationSupplyList::const_iterator i(this->cached_stations.begin()); i != this->cached_stations.end(); ++i) { - const Point &pt = i->pt; + for (const auto &i : this->cached_stations) { + const Point &pt = i.pt; if (!this->IsPointVisible(pt, dpi, 3 * width)) continue; - const Station *st = Station::GetIfValid(i->id); + const Station *st = Station::GetIfValid(i.id); if (st == nullptr) continue; - uint r = width * 2 + width * 2 * std::min(200, i->quantity) / 200; + uint r = width * 2 + width * 2 * std::min(200, i.quantity) / 200; LinkGraphOverlay::DrawVertex(dpi, pt.x, pt.y, r, _colour_gradient[st->owner != OWNER_NONE ? diff --git a/src/linkgraph/linkgraphschedule.cpp b/src/linkgraph/linkgraphschedule.cpp index 007cc61bc2..ea02398e4e 100644 --- a/src/linkgraph/linkgraphschedule.cpp +++ b/src/linkgraph/linkgraphschedule.cpp @@ -177,8 +177,8 @@ void LinkGraphSchedule::JoinNext() void LinkGraphSchedule::SpawnAll() { std::vector jobs_to_execute; - for (JobList::iterator i = this->running.begin(); i != this->running.end(); ++i) { - jobs_to_execute.emplace_back(i->get()); + for (auto &it : this->running) { + jobs_to_execute.emplace_back(it.get()); } LinkGraphJobGroup::ExecuteJobSet(std::move(jobs_to_execute)); } @@ -188,8 +188,8 @@ void LinkGraphSchedule::SpawnAll() */ /* static */ void LinkGraphSchedule::Clear() { - for (JobList::iterator i(instance.running.begin()); i != instance.running.end(); ++i) { - (*i)->AbortJob(); + for (auto &it : instance.running) { + it->AbortJob(); } instance.running.clear(); instance.schedule.clear(); diff --git a/src/linkgraph/refresh.cpp b/src/linkgraph/refresh.cpp index a06eb3d574..9414cdf1c6 100644 --- a/src/linkgraph/refresh.cpp +++ b/src/linkgraph/refresh.cpp @@ -154,10 +154,10 @@ bool LinkRefresher::HandleRefit(CargoID refit_cargo) */ void LinkRefresher::ResetRefit() { - for (RefitList::iterator it(this->refit_capacities.begin()); it != this->refit_capacities.end(); ++it) { - if (it->remaining == it->capacity) continue; - this->capacities[it->cargo] += it->capacity - it->remaining; - it->remaining = it->capacity; + for (auto &it : this->refit_capacities) { + if (it.remaining == it.capacity) continue; + this->capacities[it.cargo] += it.capacity - it.remaining; + it.remaining = it.capacity; } } diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp index 0aed65a9c0..7631778241 100644 --- a/src/misc_gui.cpp +++ b/src/misc_gui.cpp @@ -1052,7 +1052,7 @@ struct QueryStringWindow : public Window this->editbox.text.UpdateSize(); - if ((flags & QSF_ACCEPT_UNCHANGED) == 0) this->editbox.orig = stredup(this->editbox.text.buf); + if ((flags & QSF_ACCEPT_UNCHANGED) == 0) this->editbox.orig = this->editbox.text.buf; this->querystrings[WID_QS_TEXT] = &this->editbox; this->editbox.caption = caption; @@ -1114,14 +1114,10 @@ struct QueryStringWindow : public Window void OnOk() { - if (this->editbox.orig == nullptr || strcmp(this->editbox.text.buf, this->editbox.orig) != 0) { - /* If the parent is nullptr, the editbox is handled by general function - * HandleOnEditText */ - if (this->parent != nullptr) { - this->parent->OnQueryTextFinished(this->editbox.text.buf); - } else { - NOT_REACHED(); - } + if (!this->editbox.orig.has_value() || this->editbox.text.buf != this->editbox.orig) { + assert(this->parent != nullptr); + + this->parent->OnQueryTextFinished(this->editbox.text.buf); this->editbox.handled = true; } } diff --git a/src/music_gui.cpp b/src/music_gui.cpp index c852802411..215fe7cb0e 100644 --- a/src/music_gui.cpp +++ b/src/music_gui.cpp @@ -420,9 +420,9 @@ void MusicSystem::SaveCustomPlaylist(PlaylistChoices pl) size_t num = 0; MemSetT(settings_pl, 0, NUM_SONGS_PLAYLIST); - for (Playlist::const_iterator song = this->standard_playlists[pl].begin(); song != this->standard_playlists[pl].end(); ++song) { + for (const auto &song : this->standard_playlists[pl]) { /* Music set indices in the settings playlist are 1-based, 0 means unused slot */ - settings_pl[num++] = (byte)song->set_index + 1; + settings_pl[num++] = (byte)song.set_index + 1; } } @@ -517,10 +517,10 @@ struct MusicTrackSelectionWindow : public Window { case WID_MTS_LIST_LEFT: case WID_MTS_LIST_RIGHT: { Dimension d = {0, 0}; - for (MusicSystem::Playlist::const_iterator song = _music.music_set.begin(); song != _music.music_set.end(); ++song) { - SetDParam(0, song->tracknr); + for (const auto &song : _music.music_set) { + SetDParam(0, song.tracknr); SetDParam(1, 2); - SetDParamStr(2, song->songname); + SetDParamStr(2, song.songname); Dimension d2 = GetStringBoundingBox(STR_PLAYLIST_TRACK_NAME); d.width = std::max(d.width, d2.width); d.height += d2.height; @@ -540,10 +540,10 @@ struct MusicTrackSelectionWindow : public Window { GfxFillRect(r.Shrink(WidgetDimensions::scaled.bevel), PC_BLACK); Rect tr = r.Shrink(WidgetDimensions::scaled.framerect); - for (MusicSystem::Playlist::const_iterator song = _music.music_set.begin(); song != _music.music_set.end(); ++song) { - SetDParam(0, song->tracknr); + for (const auto &song : _music.music_set) { + SetDParam(0, song.tracknr); SetDParam(1, 2); - SetDParamStr(2, song->songname); + SetDParamStr(2, song.songname); DrawString(tr, STR_PLAYLIST_TRACK_NAME); tr.top += FONT_HEIGHT_SMALL; } @@ -554,10 +554,10 @@ struct MusicTrackSelectionWindow : public Window { GfxFillRect(r.Shrink(WidgetDimensions::scaled.bevel), PC_BLACK); Rect tr = r.Shrink(WidgetDimensions::scaled.framerect); - for (MusicSystem::Playlist::const_iterator song = _music.active_playlist.begin(); song != _music.active_playlist.end(); ++song) { - SetDParam(0, song->tracknr); + for (const auto &song : _music.active_playlist) { + SetDParam(0, song.tracknr); SetDParam(1, 2); - SetDParamStr(2, song->songname); + SetDParamStr(2, song.songname); DrawString(tr, STR_PLAYLIST_TRACK_NAME); tr.top += FONT_HEIGHT_SMALL; } @@ -705,8 +705,8 @@ struct MusicWindow : public Window { case WID_M_TRACK_NAME: { Dimension d = GetStringBoundingBox(STR_MUSIC_TITLE_NONE); - for (MusicSystem::Playlist::const_iterator song = _music.music_set.begin(); song != _music.music_set.end(); ++song) { - SetDParamStr(0, song->songname); + for (const auto &song : _music.music_set) { + SetDParamStr(0, song.songname); d = maxdim(d, GetStringBoundingBox(STR_MUSIC_TITLE_NAME)); } d.width += padding.width; diff --git a/src/newgrf_storage.cpp b/src/newgrf_storage.cpp index 15214d91bb..100f0de83f 100644 --- a/src/newgrf_storage.cpp +++ b/src/newgrf_storage.cpp @@ -91,9 +91,9 @@ void AddChangedPersistentStorage(BasePersistentStorageArray *storage) } /* Discard all temporary changes */ - for (std::set::iterator it = _changed_storage_arrays->begin(); it != _changed_storage_arrays->end(); it++) { - DEBUG(desync, 1, "Discarding persistent storage changes: Feature %d, GrfID %08X, Tile %d", (*it)->feature, BSWAP32((*it)->grfid), (*it)->tile); - (*it)->ClearChanges(); + for (auto &it : *_changed_storage_arrays) { + DEBUG(desync, 1, "Discarding persistent storage changes: Feature %d, GrfID %08X, Tile %d", it->feature, BSWAP32(it->grfid), it->tile); + it->ClearChanges(); } _changed_storage_arrays->clear(); } diff --git a/src/newgrf_town.cpp b/src/newgrf_town.cpp index 31c1857545..7e63c3a3f5 100644 --- a/src/newgrf_town.cpp +++ b/src/newgrf_town.cpp @@ -36,9 +36,8 @@ grfid = this->ro.grffile->grfid; } - std::list::iterator iter; - for (iter = this->t->psa_list.begin(); iter != this->t->psa_list.end(); iter++) { - if ((*iter)->grfid == grfid) return (*iter)->GetValue(parameter); + for (auto &it : this->t->psa_list) { + if (it->grfid == grfid) return it->GetValue(parameter); } return 0; @@ -146,10 +145,9 @@ if (grfid != this->ro.grffile->grfid) return; /* Check if the storage exists. */ - std::list::iterator iter; - for (iter = t->psa_list.begin(); iter != t->psa_list.end(); iter++) { - if ((*iter)->grfid == grfid) { - (*iter)->StoreValue(pos, value); + for (auto &it : t->psa_list) { + if (it->grfid == grfid) { + it->StoreValue(pos, value); return; } } diff --git a/src/osk_gui.cpp b/src/osk_gui.cpp index 144e43eeb5..f7a50dfceb 100644 --- a/src/osk_gui.cpp +++ b/src/osk_gui.cpp @@ -39,7 +39,7 @@ struct OskWindow : public Window { QueryString *qs; ///< text-input int text_btn; ///< widget number of parent's text field Textbuf *text; ///< pointer to parent's textbuffer (to update caret position) - char *orig_str_buf; ///< Original string. + std::string orig_str; ///< Original string. bool shift; ///< Is the shift effectively pressed? OskWindow(WindowDesc *desc, Window *parent, int button) : Window(desc) @@ -58,7 +58,7 @@ struct OskWindow : public Window { this->querystrings[WID_OSK_TEXT] = this->qs; /* make a copy in case we need to reset later */ - this->orig_str_buf = stredup(this->qs->text.buf); + this->orig_str = this->qs->text.buf; this->InitNested(0); this->SetFocusedWidget(WID_OSK_TEXT); @@ -69,11 +69,6 @@ struct OskWindow : public Window { this->UpdateOskState(); } - ~OskWindow() - { - free(this->orig_str_buf); - } - /** * Only show valid characters; do not show characters that would * only insert a space when we have a spacebar to do that or @@ -162,7 +157,7 @@ struct OskWindow : public Window { break; case WID_OSK_OK: - if (this->qs->orig == nullptr || strcmp(this->qs->text.buf, this->qs->orig) != 0) { + if (!this->qs->orig.has_value() || this->qs->text.buf != this->qs->orig) { /* pass information by simulating a button press on parent window */ if (this->qs->ok_button >= 0) { this->parent->OnClick(pt, this->qs->ok_button, 1); @@ -179,7 +174,7 @@ struct OskWindow : public Window { /* Window gets deleted when the parent window removes itself. */ return; } else { // or reset to original string - qs->text.Assign(this->orig_str_buf); + qs->text.Assign(this->orig_str.c_str()); qs->text.MovePos(WKC_END); this->OnEditboxChanged(WID_OSK_TEXT); delete this; @@ -425,8 +420,7 @@ void UpdateOSKOriginalText(const Window *parent, int button) OskWindow *osk = dynamic_cast(FindWindowById(WC_OSK, 0)); if (osk == nullptr || osk->parent != parent || osk->text_btn != button) return; - free(osk->orig_str_buf); - osk->orig_str_buf = stredup(osk->qs->text.buf); + osk->orig_str = osk->qs->text.buf; osk->SetDirty(); } diff --git a/src/querystring_gui.h b/src/querystring_gui.h index 79eadc7993..4deee010a7 100644 --- a/src/querystring_gui.h +++ b/src/querystring_gui.h @@ -14,6 +14,8 @@ #include "textbuf_gui.h" #include "window_gui.h" +#include + /** * Data stored about a string that can be modified in the GUI */ @@ -27,7 +29,7 @@ struct QueryString { int ok_button; ///< Widget button of parent window to simulate when pressing OK in OSK. int cancel_button; ///< Widget button of parent window to simulate when pressing CANCEL in OSK. Textbuf text; - const char *orig; + std::optional orig; bool handled; /** @@ -35,18 +37,10 @@ struct QueryString { * @param size Maximum size in bytes. * @param chars Maximum size in chars. */ - QueryString(uint16 size, uint16 chars = UINT16_MAX) : ok_button(ACTION_NOTHING), cancel_button(ACTION_DESELECT), text(size, chars), orig(nullptr) + QueryString(uint16 size, uint16 chars = UINT16_MAX) : ok_button(ACTION_NOTHING), cancel_button(ACTION_DESELECT), text(size, chars) { } - /** - * Make sure everything gets freed. - */ - ~QueryString() - { - free(this->orig); - } - public: void DrawEditBox(const Window *w, int wid) const; void ClickEditBox(Window *w, Point pt, int wid, int click_count, bool focus_changed); diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index f4c1f3f6d1..5686cebe3b 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -52,8 +52,7 @@ static RailType _cur_railtype; ///< Rail type of the current build-rail toolbar. static bool _remove_button_clicked; ///< Flag whether 'remove' toggle-button is currently enabled static DiagDirection _build_depot_direction; ///< Currently selected depot direction -static uint _waypoint_count = 1; ///< Number of waypoint types -static uint _cur_waypoint_type; ///< Currently selected waypoint type +static uint16_t _cur_waypoint_type; ///< Currently selected waypoint type static bool _convert_signal_button; ///< convert signal button in the signal GUI pressed static bool _trace_restrict_button; ///< trace restrict button in the signal GUI pressed static bool _program_signal_button; ///< program signal button in the signal GUI pressed @@ -688,9 +687,8 @@ struct BuildRailToolbarWindow : Window { case WID_RAT_BUILD_WAYPOINT: this->last_user_action = widget; - _waypoint_count = StationClass::Get(STAT_CLASS_WAYP)->GetSpecCount(); if (HandlePlacePushButton(this, WID_RAT_BUILD_WAYPOINT, SPR_CURSOR_WAYPOINT, HT_RECT)) { - if (_waypoint_count > 1) { + if (StationClass::Get(STAT_CLASS_WAYP)->GetSpecCount() > 1) { ShowBuildWaypointPicker(this); } else { _cur_waypoint_type = 0; @@ -1414,7 +1412,7 @@ public: StationClass *stclass = StationClass::Get(station_class); for (uint j = 0; j < stclass->GetSpecCount(); j++) { const StationSpec *statspec = stclass->GetSpec(j); - SetDParam(0, (statspec != nullptr && statspec->name != 0) ? statspec->name : STR_STATION_CLASS_DFLT); + SetDParam(0, (statspec != nullptr && statspec->name != 0) ? statspec->name : STR_STATION_CLASS_DFLT_STATION); d = maxdim(d, GetStringBoundingBox(str)); } } @@ -1519,7 +1517,7 @@ public: { if (widget == WID_BRAS_SHOW_NEWST_TYPE) { const StationSpec *statspec = StationClass::Get(_railstation.station_class)->GetSpec(_railstation.station_type); - SetDParam(0, (statspec != nullptr && statspec->name != 0) ? statspec->name : STR_STATION_CLASS_DFLT); + SetDParam(0, (statspec != nullptr && statspec->name != 0) ? statspec->name : STR_STATION_CLASS_DFLT_STATION); } } @@ -2410,8 +2408,18 @@ static void ShowBuildTrainDepotPicker(Window *parent) } struct BuildRailWaypointWindow : PickerWindowBase { - BuildRailWaypointWindow(WindowDesc *desc, Window *parent) : PickerWindowBase(desc, parent) + using WaypointList = GUIList; + static const uint FILTER_LENGTH = 20; + + const StationClass *waypoints; + WaypointList list; + StringFilter string_filter; ///< Filter for waypoint name + QueryString editbox; ///< Filter editbox + + BuildRailWaypointWindow(WindowDesc *desc, Window *parent) : PickerWindowBase(desc, parent), editbox(FILTER_LENGTH * MAX_CHAR_LENGTH, FILTER_LENGTH) { + this->waypoints = StationClass::Get(STAT_CLASS_WAYP); + this->CreateNestedTree(); NWidgetMatrix *matrix = this->GetWidget(WID_BRW_WAYPOINT_MATRIX); @@ -2419,9 +2427,61 @@ struct BuildRailWaypointWindow : PickerWindowBase { this->FinishInitNested(TRANSPORT_RAIL); - matrix->SetCount(_waypoint_count); - if (_cur_waypoint_type >= _waypoint_count) _cur_waypoint_type = 0; - matrix->SetClicked(_cur_waypoint_type); + this->querystrings[WID_BRW_FILTER] = &this->editbox; + this->editbox.cancel_button = QueryString::ACTION_CLEAR; + + this->list.ForceRebuild(); + this->BuildPickerList(); + } + + bool FilterByText(const StationSpec *statspec) + { + if (this->string_filter.IsEmpty()) return true; + this->string_filter.ResetState(); + if (statspec == nullptr) { + this->string_filter.AddLine(GetString(STR_STATION_CLASS_WAYP_WAYPOINT)); + } else { + this->string_filter.AddLine(GetString(statspec->name)); + if (statspec->grf_prop.grffile != nullptr) { + const GRFConfig *gc = GetGRFConfig(statspec->grf_prop.grffile->grfid); + this->string_filter.AddLine(gc->GetName()); + } + } + return this->string_filter.GetState(); + } + + void BuildPickerList() + { + if (!this->list.NeedRebuild()) return; + + this->list.clear(); + this->list.reserve(this->waypoints->GetSpecCount()); + for (uint i = 0; i < this->waypoints->GetSpecCount(); i++) { + const StationSpec *statspec = this->waypoints->GetSpec(i); + if (!FilterByText(statspec)) continue; + + this->list.push_back(i); + } + this->list.RebuildDone(); + + NWidgetMatrix *matrix = this->GetWidget(WID_BRW_WAYPOINT_MATRIX); + matrix->SetCount((int)this->list.size()); + matrix->SetClicked(this->UpdateSelection(_cur_waypoint_type)); + } + + uint UpdateSelection(uint type) + { + auto found = std::find(std::begin(this->list), std::end(this->list), type); + if (found != std::end(this->list)) return found - std::begin(this->list); + + /* Selection isn't in the list, default to first */ + if (this->list.empty()) { + _cur_waypoint_type = 0; + return -1; + } else { + _cur_waypoint_type = this->list.front(); + return 0; + } } virtual ~BuildRailWaypointWindow() @@ -2433,9 +2493,9 @@ struct BuildRailWaypointWindow : PickerWindowBase { { switch (widget) { case WID_BRW_WAYPOINT_MATRIX: - /* Three blobs high and wide. */ + /* Two blobs high and three wide. */ size->width += resize->width * 2; - size->height += resize->height * 2; + size->height += resize->height * 1; /* Resizing in X direction only at blob size, but at pixel level in Y. */ resize->height = 1; @@ -2448,12 +2508,34 @@ struct BuildRailWaypointWindow : PickerWindowBase { } } + void SetStringParameters(int widget) const override + { + if (widget == WID_BRW_NAME) { + if (!this->list.empty() && IsInsideBS(_cur_waypoint_type, 0, this->waypoints->GetSpecCount())) { + const StationSpec *statspec = this->waypoints->GetSpec(_cur_waypoint_type); + if (statspec == nullptr) { + SetDParam(0, STR_STATION_CLASS_WAYP_WAYPOINT); + } else { + SetDParam(0, statspec->name); + } + } else { + SetDParam(0, STR_EMPTY); + } + } + } + + void OnPaint() override + { + this->BuildPickerList(); + this->DrawWidgets(); + } + void DrawWidget(const Rect &r, int widget) const override { switch (GB(widget, 0, 16)) { case WID_BRW_WAYPOINT: { - uint type = GB(widget, 16, 16); - const StationSpec *statspec = StationClass::Get(STAT_CLASS_WAYP)->GetSpec(type); + uint16_t type = this->list.at(GB(widget, 16, 16)); + const StationSpec *statspec = this->waypoints->GetSpec(type); DrawPixelInfo tmp_dpi; if (FillDrawPixelInfo(&tmp_dpi, r.left, r.top, r.Width(), r.Height())) { @@ -2474,15 +2556,16 @@ struct BuildRailWaypointWindow : PickerWindowBase { { switch (GB(widget, 0, 16)) { case WID_BRW_WAYPOINT: { - uint type = GB(widget, 16, 16); - this->GetWidget(WID_BRW_WAYPOINT_MATRIX)->SetClicked(_cur_waypoint_type); + uint16_t sel = GB(widget, 16, 16); + assert(sel < this->list.size()); + uint16_t type = this->list.at(sel); /* Check station availability callback */ - const StationSpec *statspec = StationClass::Get(STAT_CLASS_WAYP)->GetSpec(type); + const StationSpec *statspec = this->waypoints->GetSpec(type); if (!IsStationAvailable(statspec)) return; _cur_waypoint_type = type; - this->GetWidget(WID_BRW_WAYPOINT_MATRIX)->SetClicked(_cur_waypoint_type); + this->GetWidget(WID_BRW_WAYPOINT_MATRIX)->SetClicked(sel); if (_settings_client.sound.click_beep) SndPlayFx(SND_15_BEEP); this->SetDirty(); break; @@ -2495,9 +2578,28 @@ struct BuildRailWaypointWindow : PickerWindowBase { CheckRedrawWaypointCoverage(this, false); } - void SelectWaypointSpec(int spec_id) + void SelectWaypointSpec(uint16 spec_id) { - this->OnClick({}, WID_BRW_WAYPOINT | (spec_id << 16), 1); + for (uint i = 0; i < (uint)this->list.size(); i++) { + if (this->list[i] == spec_id) { + this->OnClick({}, WID_BRW_WAYPOINT | (i << 16), 1); + break; + } + } + } + + void OnInvalidateData(int data = 0, bool gui_scope = true) override + { + if (!gui_scope) return; + this->list.ForceRebuild(); + } + + void OnEditboxChanged(int wid) override + { + if (wid == WID_BRW_FILTER) { + this->string_filter.SetFilterTerm(this->editbox.text.buf); + this->InvalidateData(); + } } }; @@ -2508,16 +2610,22 @@ static const NWidgetPart _nested_build_waypoint_widgets[] = { NWidget(WWT_CAPTION, COLOUR_DARK_GREEN), SetDataTip(STR_WAYPOINT_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), NWidget(WWT_DEFSIZEBOX, COLOUR_DARK_GREEN), EndContainer(), + NWidget(WWT_PANEL, COLOUR_DARK_GREEN), + NWidget(WWT_EDITBOX, COLOUR_DARK_GREEN, WID_BRW_FILTER), SetPadding(2), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_LIST_FILTER_OSKTITLE, STR_LIST_FILTER_TOOLTIP), + EndContainer(), NWidget(NWID_HORIZONTAL), - NWidget(WWT_PANEL, COLOUR_DARK_GREEN), + NWidget(WWT_PANEL, COLOUR_DARK_GREEN), SetScrollbar(WID_BRW_SCROLL), NWidget(NWID_MATRIX, COLOUR_DARK_GREEN, WID_BRW_WAYPOINT_MATRIX), SetPIP(0, 2, 0), SetPadding(3), SetScrollbar(WID_BRW_SCROLL), - NWidget(WWT_PANEL, COLOUR_DARK_GREEN, WID_BRW_WAYPOINT), SetMinimalSize(66, 60), SetDataTip(0x0, STR_WAYPOINT_GRAPHICS_TOOLTIP), SetScrollbar(WID_BRW_SCROLL), EndContainer(), + NWidget(WWT_PANEL, COLOUR_GREY, WID_BRW_WAYPOINT), SetDataTip(0x0, STR_WAYPOINT_GRAPHICS_TOOLTIP), SetScrollbar(WID_BRW_SCROLL), EndContainer(), EndContainer(), EndContainer(), - NWidget(NWID_VERTICAL), - NWidget(NWID_VSCROLLBAR, COLOUR_DARK_GREEN, WID_BRW_SCROLL), - NWidget(WWT_RESIZEBOX, COLOUR_DARK_GREEN), + NWidget(NWID_VSCROLLBAR, COLOUR_DARK_GREEN, WID_BRW_SCROLL), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_PANEL, COLOUR_DARK_GREEN), + NWidget(WWT_TEXT, COLOUR_DARK_GREEN, WID_BRW_NAME), SetPadding(2), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_JUST_STRING, STR_NULL), SetTextStyle(TC_ORANGE), SetAlignment(SA_CENTER), EndContainer(), + NWidget(WWT_RESIZEBOX, COLOUR_DARK_GREEN), EndContainer(), }; @@ -2749,7 +2857,7 @@ void ShowBuildRailStationPickerAndSelect(StationType station_type, const Station trigger_widget(WID_RAT_BUILD_WAYPOINT); BuildRailWaypointWindow *waypoint_window = dynamic_cast(FindWindowById(WC_BUILD_WAYPOINT, TRANSPORT_RAIL)); - if (waypoint_window != nullptr) waypoint_window->SelectWaypointSpec(spec_id); + if (waypoint_window != nullptr) waypoint_window->SelectWaypointSpec((uint16)spec_id); } else { trigger_widget(WID_RAT_BUILD_STATION); diff --git a/src/road_gui.cpp b/src/road_gui.cpp index ba2b330828..32be407135 100644 --- a/src/road_gui.cpp +++ b/src/road_gui.cpp @@ -1535,7 +1535,7 @@ public: RoadStopClass *rs_class = RoadStopClass::Get(roadstop_class); for (uint j = 0; j < rs_class->GetSpecCount(); j++) { const RoadStopSpec *roadstopspec = rs_class->GetSpec(j); - SetDParam(0, (roadstopspec != nullptr && roadstopspec->name != 0) ? roadstopspec->name : STR_STATION_CLASS_DFLT); + SetDParam(0, (roadstopspec != nullptr && roadstopspec->name != 0) ? roadstopspec->name : STR_STATION_CLASS_DFLT_ROADSTOP); d = maxdim(d, GetStringBoundingBox(str)); } } @@ -1665,7 +1665,7 @@ public: void SetStringParameters(int widget) const override { if (widget == WID_BROS_SHOW_NEWST_TYPE) { const RoadStopSpec *roadstopspec = RoadStopClass::Get(_roadstop_gui_settings.roadstop_class)->GetSpec(_roadstop_gui_settings.roadstop_type); - SetDParam(0, (roadstopspec != nullptr && roadstopspec->name != 0) ? roadstopspec->name : STR_STATION_CLASS_DFLT); + SetDParam(0, (roadstopspec != nullptr && roadstopspec->name != 0) ? roadstopspec->name : STR_STATION_CLASS_DFLT_ROADSTOP); } } diff --git a/src/roadstop.cpp b/src/roadstop.cpp index 7991e5ea17..9c4a7bcf8b 100644 --- a/src/roadstop.cpp +++ b/src/roadstop.cpp @@ -436,8 +436,8 @@ Vehicle *FindVehiclesInRoadStop(Vehicle *v, void *data) if (rv->state < RVSB_IN_ROAD_STOP) return nullptr; /* Do not add duplicates! */ - for (RVList::iterator it = rserh->vehicles.begin(); it != rserh->vehicles.end(); it++) { - if (rv == *it) return nullptr; + for (const auto &it : rserh->vehicles) { + if (rv == it) return nullptr; } rserh->vehicles.push_back(rv); @@ -467,8 +467,8 @@ void RoadStop::Entry::Rebuild(const RoadStop *rs, int side) } this->occupied = 0; - for (RVList::iterator it = rserh.vehicles.begin(); it != rserh.vehicles.end(); it++) { - this->occupied += (*it)->gcache.cached_total_length; + for (const auto &it : rserh.vehicles) { + this->occupied += it->gcache.cached_total_length; } } diff --git a/src/saveload/afterload.cpp b/src/saveload/afterload.cpp index 8ebd546f11..a759333c0d 100644 --- a/src/saveload/afterload.cpp +++ b/src/saveload/afterload.cpp @@ -300,9 +300,9 @@ static void InitializeWindowsAndCaches() } } for (Town *t : Town::Iterate()) { - for (std::list::iterator it = t->psa_list.begin(); it != t->psa_list.end(); ++it) { - (*it)->feature = GSF_FAKE_TOWNS; - (*it)->tile = t->xy; + for (auto &it : t->psa_list) { + it->feature = GSF_FAKE_TOWNS; + it->tile = t->xy; } } for (RoadVehicle *rv : RoadVehicle::Iterate()) { diff --git a/src/script/api/script_controller.cpp b/src/script/api/script_controller.cpp index ac5bee7ef5..f9062ddec0 100644 --- a/src/script/api/script_controller.cpp +++ b/src/script/api/script_controller.cpp @@ -21,6 +21,7 @@ #include "../script_gui.h" #include "../../settings_type.h" #include "../../network/network.h" +#include "../../3rdparty/fmt/format.h" #include "../../safeguards.h" @@ -75,16 +76,6 @@ ScriptController::ScriptController(CompanyID company) : ScriptObject::SetCompany(company); } -ScriptController::~ScriptController() -{ - for (const auto &item : this->loaded_library) { - free(item.second); - free(item.first); - } - - this->loaded_library.clear(); -} - /* static */ uint ScriptController::GetTick() { return ScriptObject::GetActiveInstance()->GetController()->ticks; @@ -124,24 +115,22 @@ ScriptController::~ScriptController() } /* Internally we store libraries as 'library.version' */ - char library_name[1024]; - seprintf(library_name, lastof(library_name), "%s.%d", library, version); - strtolower(library_name); + std::string library_name = fmt::format("{}.{}", library, version); /* Get the current table/class we belong to */ HSQOBJECT parent; sq_getstackobj(vm, 1, &parent); - char fake_class[1024]; + std::string fake_class; LoadedLibraryList::iterator it = controller->loaded_library.find(library_name); if (it != controller->loaded_library.end()) { - strecpy(fake_class, (*it).second, lastof(fake_class)); + fake_class = (*it).second; } else { int next_number = ++controller->loaded_library_count; /* Create a new fake internal name */ - seprintf(fake_class, lastof(fake_class), "_internalNA%d", next_number); + fake_class = fmt::format("_internalNA{}", next_number); /* Load the library in a 'fake' namespace, so we can link it to the name the user requested */ sq_pushroottable(vm); @@ -157,7 +146,7 @@ ScriptController::~ScriptController() sq_newslot(vm, -3, SQFalse); sq_pop(vm, 1); - controller->loaded_library[stredup(library_name)] = stredup(fake_class); + controller->loaded_library[library_name] = fake_class; } /* Find the real class inside the fake class (like 'sets.Vector') */ diff --git a/src/script/api/script_controller.hpp b/src/script/api/script_controller.hpp index c5c7261c59..c2dab8d45c 100644 --- a/src/script/api/script_controller.hpp +++ b/src/script/api/script_controller.hpp @@ -11,7 +11,7 @@ #define SCRIPT_CONTROLLER_HPP #include "script_types.hpp" -#include "../../core/string_compare_type.hpp" +#include "../../string_func.h" #include /** @@ -55,11 +55,6 @@ public: */ ScriptController(CompanyID company); - /** - * Destructor of the ScriptController. - */ - ~ScriptController(); - #else /** * This function is called to start your script. Your script starts here. If you @@ -215,7 +210,7 @@ public: static HSQOBJECT Import(const char *library, const char *class_name, int version); private: - typedef std::map LoadedLibraryList; ///< The type for loaded libraries. + typedef std::map LoadedLibraryList; ///< The type for loaded libraries. uint ticks; ///< The amount of ticks we're sleeping. LoadedLibraryList loaded_library; ///< The libraries we loaded. diff --git a/src/script/api/script_engine.cpp b/src/script/api/script_engine.cpp index 0755e02c27..952dae5885 100644 --- a/src/script/api/script_engine.cpp +++ b/src/script/api/script_engine.cpp @@ -171,7 +171,7 @@ if (GetVehicleType(engine_id) != ScriptVehicle::VT_RAIL && GetVehicleType(engine_id) != ScriptVehicle::VT_ROAD) return -1; if (IsWagon(engine_id)) return -1; - return ::Engine::Get(engine_id)->GetDisplayMaxTractiveEffort(); + return ::Engine::Get(engine_id)->GetDisplayMaxTractiveEffort() / 1000; } /* static */ ScriptDate::Date ScriptEngine::GetDesignDate(EngineID engine_id) diff --git a/src/script/api/script_list.cpp b/src/script/api/script_list.cpp index 0a5c449607..0821b8368a 100644 --- a/src/script/api/script_list.cpp +++ b/src/script/api/script_list.cpp @@ -564,9 +564,9 @@ void ScriptList::AddList(ScriptList *list) this->modifications++; } else { ScriptListMap *list_items = &list->items; - for (ScriptListMap::iterator iter = list_items->begin(); iter != list_items->end(); iter++) { - this->AddItem((*iter).first); - this->SetValue((*iter).first, (*iter).second); + for (auto &it : *list_items) { + this->AddItem(it.first); + this->SetValue(it.first, it.second); } } } diff --git a/src/script/script_config.cpp b/src/script/script_config.cpp index 29ab7af430..e3ed8f2174 100644 --- a/src/script/script_config.cpp +++ b/src/script/script_config.cpp @@ -14,6 +14,7 @@ #include "api/script_object.hpp" #include "../textfile_gui.h" #include "../string_func.h" +#include "../3rdparty/fmt/format.h" #include "../safeguards.h" @@ -24,8 +25,7 @@ void ScriptConfig::Change(const char *name, int version, bool force_exact_match, this->info = (name == nullptr) ? nullptr : this->FindInfo(this->name, version, force_exact_match); this->version = (info == nullptr) ? -1 : info->GetVersion(); this->is_random = is_random; - if (this->config_list != nullptr) delete this->config_list; - this->config_list = (info == nullptr) ? nullptr : new ScriptConfigItemList(); + this->config_list.reset(); this->to_load_data.reset(); this->ClearConfigList(); @@ -48,12 +48,11 @@ ScriptConfig::ScriptConfig(const ScriptConfig *config) this->name = (config->name == nullptr) ? nullptr : stredup(config->name); this->info = config->info; this->version = config->version; - this->config_list = nullptr; this->is_random = config->is_random; this->to_load_data.reset(); for (const auto &item : config->settings) { - this->settings[stredup(item.first)] = item.second; + this->settings[item.first] = item.second; } /* Virtual functions get called statically in constructors, so make it explicit to remove any confusion. */ @@ -64,7 +63,6 @@ ScriptConfig::~ScriptConfig() { free(this->name); this->ResetSettings(); - if (this->config_list != nullptr) delete this->config_list; this->to_load_data.reset(); } @@ -77,16 +75,13 @@ const ScriptConfigItemList *ScriptConfig::GetConfigList() { if (this->info != nullptr) return this->info->GetConfigList(); if (this->config_list == nullptr) { - this->config_list = new ScriptConfigItemList(); + this->config_list = std::make_unique(); } - return this->config_list; + return this->config_list.get(); } void ScriptConfig::ClearConfigList() { - for (const auto &item : this->settings) { - free(item.first); - } this->settings.clear(); } @@ -99,14 +94,14 @@ void ScriptConfig::AnchorUnchangeableSettings() } } -int ScriptConfig::GetSetting(const char *name) const +int ScriptConfig::GetSetting(const std::string &name) const { const auto it = this->settings.find(name); if (it == this->settings.end()) return this->info->GetSettingDefaultValue(name); return (*it).second; } -void ScriptConfig::SetSetting(const char *name, int value) +void ScriptConfig::SetSetting(const std::string &name, int value) { /* You can only set Script specific settings if an Script is selected. */ if (this->info == nullptr) return; @@ -116,19 +111,11 @@ void ScriptConfig::SetSetting(const char *name, int value) value = Clamp(value, config_item->min_value, config_item->max_value); - const auto it = this->settings.find(name); - if (it != this->settings.end()) { - (*it).second = value; - } else { - this->settings[stredup(name)] = value; - } + this->settings[name] = value; } void ScriptConfig::ResetSettings() { - for (const auto &item : this->settings) { - free(item.first); - } this->settings.clear(); } @@ -144,7 +131,6 @@ void ScriptConfig::ResetEditableSettings(bool yet_to_start) bool visible = _settings_client.gui.ai_developer_tools || (config_item->flags & SCRIPTCONFIG_DEVELOPER) == 0; if (editable && visible) { - free(it->first); it = this->settings.erase(it); } else { it++; @@ -209,29 +195,16 @@ void ScriptConfig::StringToSettings(const std::string &value) std::string ScriptConfig::SettingsToString() const { - char string[1024]; - char *last = lastof(string); - char *s = string; - *s = '\0'; + if (this->settings.empty()) return {}; + + std::string result; for (const auto &item : this->settings) { - char no[INT32_DIGITS_WITH_SIGN_AND_TERMINATION]; - seprintf(no, lastof(no), "%d", item.second); - - /* Check if the string would fit in the destination */ - size_t needed_size = strlen(item.first) + 1 + strlen(no); - /* If it doesn't fit, skip the next settings */ - if (s + needed_size > last) break; - - s = strecat(s, item.first, last); - s = strecat(s, "=", last); - s = strecat(s, no, last); - s = strecat(s, ",", last); + fmt::format_to(std::back_inserter(result), "{}={},", item.first, item.second); } - /* Remove the last ',', but only if at least one setting was saved. */ - if (s != string) s[-1] = '\0'; - - return string; + /* Remove the last ','. */ + result.resize(result.size() - 1); + return result; } const char *ScriptConfig::GetTextfile(TextfileType type, CompanyID slot) const diff --git a/src/script/script_config.hpp b/src/script/script_config.hpp index be788d0526..777766c790 100644 --- a/src/script/script_config.hpp +++ b/src/script/script_config.hpp @@ -13,7 +13,6 @@ #include #include #include "../core/smallmap_type.hpp" -#include "../core/string_compare_type.hpp" #include "../company_type.h" #include "../textfile_gui.h" #include "script_instance.hpp" @@ -30,26 +29,26 @@ enum ScriptConfigFlags { SCRIPTCONFIG_DEVELOPER = 0x8, ///< This setting will only be visible when the Script development tools are active. }; -typedef SmallMap LabelMapping; ///< Map-type used to map the setting numbers to labels. +typedef std::map LabelMapping; ///< Map-type used to map the setting numbers to labels. /** Info about a single Script setting. */ struct ScriptConfigItem { - const char *name; ///< The name of the configuration setting. - const char *description; ///< The description of the configuration setting. - int min_value; ///< The minimal value this configuration setting can have. - int max_value; ///< The maximal value this configuration setting can have. - int custom_value; ///< The default value on custom difficulty setting. - int easy_value; ///< The default value on easy difficulty setting. - int medium_value; ///< The default value on medium difficulty setting. - int hard_value; ///< The default value on hard difficulty setting. - int random_deviation; ///< The maximum random deviation from the default value. - int step_size; ///< The step size in the gui. - ScriptConfigFlags flags; ///< Flags for the configuration setting. - LabelMapping *labels; ///< Text labels for the integer values. - bool complete_labels; ///< True if all values have a label. + std::string name; ///< The name of the configuration setting. + std::string description; ///< The description of the configuration setting. + int min_value = 0; ///< The minimal value this configuration setting can have. + int max_value = 1; ///< The maximal value this configuration setting can have. + int custom_value = 0; ///< The default value on custom difficulty setting. + int easy_value = 0; ///< The default value on easy difficulty setting. + int medium_value = 0; ///< The default value on medium difficulty setting. + int hard_value = 0; ///< The default value on hard difficulty setting. + int random_deviation = 0; ///< The maximum random deviation from the default value. + int step_size = 1; ///< The step size in the gui. + ScriptConfigFlags flags = SCRIPTCONFIG_NONE; ///< Flags for the configuration setting. + LabelMapping labels; ///< Text labels for the integer values. + bool complete_labels = false; ///< True if all values have a label. }; -typedef std::list ScriptConfigItemList; ///< List of ScriptConfig items. +typedef std::vector ScriptConfigItemList; ///< List of ScriptConfig items. /** * Script settings. @@ -57,14 +56,13 @@ typedef std::list ScriptConfigItemList; ///< List of ScriptCon class ScriptConfig { protected: /** List with name=>value pairs of all script-specific settings */ - typedef std::map SettingValueList; + typedef std::map SettingValueList; public: ScriptConfig() : name(nullptr), version(-1), info(nullptr), - config_list(nullptr), is_random(false), to_load_data(nullptr) {} @@ -125,12 +123,12 @@ public: * @return The (default) value of the setting, or -1 if the setting was not * found. */ - int GetSetting(const char *name) const; + int GetSetting(const std::string &name) const; /** * Set the value of a setting for this config. */ - void SetSetting(const char *name, int value); + void SetSetting(const std::string &name, int value); /** * Reset all settings to their default value. @@ -196,7 +194,7 @@ protected: int version; ///< Version of the Script class ScriptInfo *info; ///< ScriptInfo object for related to this Script version SettingValueList settings; ///< List with all setting=>value pairs that are configure for this Script - ScriptConfigItemList *config_list; ///< List with all settings defined by this Script + std::unique_ptr config_list; ///< List with all settings defined by this Script bool is_random; ///< True if the AI in this slot was randomly chosen. std::unique_ptr to_load_data; ///< Data to load after the Script start. diff --git a/src/script/script_gui.cpp b/src/script/script_gui.cpp index b49dcb0ef9..8aae6518a9 100644 --- a/src/script/script_gui.cpp +++ b/src/script/script_gui.cpp @@ -176,9 +176,9 @@ struct ScriptListWindow : public Window { if (this->selected == -1) { GetConfig(slot)->Change(nullptr); } else { - ScriptInfoList::const_iterator it = this->info_list->begin(); - for (int i = 0; i < this->selected; i++) it++; - GetConfig(slot)->Change((*it).second->GetName(), (*it).second->GetVersion()); + ScriptInfoList::const_iterator it = this->info_list->cbegin(); + std::advance(it, this->selected); + GetConfig(slot)->Change(it->second->GetName(), it->second->GetVersion()); if (_game_mode == GM_NORMAL && slot == OWNER_DEITY) Game::StartNew(); } InvalidateWindowData(WC_GAME_OPTIONS, slot == OWNER_DEITY ? WN_GAME_OPTIONS_GS : WN_GAME_OPTIONS_AI); @@ -392,7 +392,7 @@ struct ScriptSettingsWindow : public Window { StringID str; TextColour colour; uint idx = 0; - if (StrEmpty(config_item.description)) { + if (config_item.description.empty()) { str = STR_JUST_STRING; colour = TC_ORANGE; } else { @@ -410,9 +410,11 @@ struct ScriptSettingsWindow : public Window { } else { DrawArrowButtons(br.left, y + button_y_offset, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, editable && current_value > config_item.min_value, editable && current_value < config_item.max_value); } - if (config_item.labels != nullptr && config_item.labels->Contains(current_value)) { + + auto config_iterator = config_item.labels.find(current_value); + if (config_iterator != config_item.labels.end()) { SetDParam(idx++, STR_JUST_RAW_STRING); - SetDParamStr(idx++, config_item.labels->Find(current_value)->second); + SetDParamStr(idx++, config_iterator->second); } else { SetDParam(idx++, STR_JUST_INT); SetDParam(idx++, current_value); @@ -441,9 +443,7 @@ struct ScriptSettingsWindow : public Window { int num = (pt.y - r.top) / this->line_height + this->vscroll->GetPosition(); if (num >= (int)this->visible_settings.size()) break; - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < num; i++) it++; - const ScriptConfigItem config_item = **it; + const ScriptConfigItem &config_item = *this->visible_settings[num]; if (!this->IsEditableItem(config_item)) return; if (this->clicked_row != num) { @@ -482,7 +482,7 @@ struct ScriptSettingsWindow : public Window { DropDownList list; for (int i = config_item.min_value; i <= config_item.max_value; i++) { - list.emplace_back(new DropDownListCharStringItem(config_item.labels->Find(i)->second, i, false)); + list.emplace_back(new DropDownListCharStringItem(config_item.labels.find(i)->second, i, false)); } ShowDropDownListAt(this, std::move(list), old_val, -1, wi_rect, COLOUR_ORANGE); @@ -591,9 +591,7 @@ private: void SetValue(int value) { - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < this->clicked_row; i++) it++; - const ScriptConfigItem config_item = **it; + const ScriptConfigItem &config_item = *this->visible_settings[this->clicked_row]; if (_game_mode == GM_NORMAL && ((this->slot == OWNER_DEITY) || Company::IsValidID(this->slot)) && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; this->script_config->SetSetting(config_item.name, value); this->SetDirty(); diff --git a/src/script/script_info.cpp b/src/script/script_info.cpp index 59e49bc358..9f815f3e21 100644 --- a/src/script/script_info.cpp +++ b/src/script/script_info.cpp @@ -19,19 +19,6 @@ ScriptInfo::~ScriptInfo() { - /* Free all allocated strings */ - for (const auto &item : this->config_list) { - free(item.name); - free(item.description); - if (item.labels != nullptr) { - for (auto &lbl_map : *item.labels) { - free(lbl_map.second); - } - delete item.labels; - } - } - this->config_list.clear(); - free(this->author); free(this->name); free(this->short_name); @@ -112,9 +99,6 @@ bool ScriptInfo::GetSettings() SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) { ScriptConfigItem config; - memset(&config, 0, sizeof(config)); - config.max_value = 1; - config.step_size = 1; uint items = 0; /* Read the table, and find all properties we care about */ @@ -127,21 +111,17 @@ SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) if (strcmp(key, "name") == 0) { const SQChar *sqvalue; if (SQ_FAILED(sq_getstring(vm, -1, &sqvalue))) return SQ_ERROR; - char *name = stredup(sqvalue); - char *s; - StrMakeValidInPlace(name); /* Don't allow '=' and ',' in configure setting names, as we need those * 2 chars to nicely store the settings as a string. */ - while ((s = strchr(name, '=')) != nullptr) *s = '_'; - while ((s = strchr(name, ',')) != nullptr) *s = '_'; - config.name = name; + auto replace_with_underscore = [](auto c) { return c == '=' || c == ','; }; + config.name = StrMakeValid(sqvalue); + std::replace_if(config.name.begin(), config.name.end(), replace_with_underscore, '_'); items |= 0x001; } else if (strcmp(key, "description") == 0) { const SQChar *sqdescription; if (SQ_FAILED(sq_getstring(vm, -1, &sqdescription))) return SQ_ERROR; - config.description = stredup(sqdescription); - StrMakeValidInPlace(const_cast(config.description)); + config.description = StrMakeValid(sqdescription); items |= 0x002; } else if (strcmp(key, "min_value") == 0) { SQInteger res; @@ -218,7 +198,7 @@ SQInteger ScriptInfo::AddSetting(HSQUIRRELVM vm) return SQ_ERROR; } - this->config_list.push_back(config); + this->config_list.emplace_back(config); return 0; } @@ -230,7 +210,7 @@ SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) ScriptConfigItem *config = nullptr; for (auto &item : this->config_list) { - if (strcmp(item.name, setting_name) == 0) config = &item; + if (item.name == setting_name) config = &item; } if (config == nullptr) { @@ -239,9 +219,7 @@ SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) this->engine->ThrowError(error); return SQ_ERROR; } - if (config->labels != nullptr) return SQ_ERROR; - - config->labels = new LabelMapping; + if (!config->labels.empty()) return SQ_ERROR; /* Read the table and find all labels */ sq_pushnull(vm); @@ -262,8 +240,7 @@ SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) int key = atoi(key_string) * sign; StrMakeValidInPlace(const_cast(label)); - /* !Contains() prevents stredup from leaking. */ - if (!config->labels->Contains(key)) config->labels->Insert(key, stredup(label)); + config->labels[key] = label; sq_pop(vm, 2); } @@ -272,7 +249,7 @@ SQInteger ScriptInfo::AddLabels(HSQUIRRELVM vm) /* Check labels for completeness */ config->complete_labels = true; for (int value = config->min_value; value <= config->max_value; value++) { - if (!config->labels->Contains(value)) { + if (config->labels.find(value) == config->labels.end()) { config->complete_labels = false; break; } @@ -286,18 +263,18 @@ const ScriptConfigItemList *ScriptInfo::GetConfigList() const return &this->config_list; } -const ScriptConfigItem *ScriptInfo::GetConfigItem(const char *name) const +const ScriptConfigItem *ScriptInfo::GetConfigItem(const std::string &name) const { for (const auto &item : this->config_list) { - if (strcmp(item.name, name) == 0) return &item; + if (item.name == name) return &item; } return nullptr; } -int ScriptInfo::GetSettingDefaultValue(const char *name) const +int ScriptInfo::GetSettingDefaultValue(const std::string &name) const { for (const auto &item : this->config_list) { - if (strcmp(item.name, name) != 0) continue; + if (item.name != name) continue; /* The default value depends on the difficulty level */ switch (GetGameSettings().script.settings_profile) { case SP_EASY: return item.easy_value; diff --git a/src/script/script_info.hpp b/src/script/script_info.hpp index d3e35c4245..0120e8a1bc 100644 --- a/src/script/script_info.hpp +++ b/src/script/script_info.hpp @@ -122,7 +122,7 @@ public: /** * Get the description of a certain Script config option. */ - const ScriptConfigItem *GetConfigItem(const char *name) const; + const ScriptConfigItem *GetConfigItem(const std::string &name) const; /** * Set a setting. @@ -137,7 +137,7 @@ public: /** * Get the default value for a setting. */ - int GetSettingDefaultValue(const char *name) const; + int GetSettingDefaultValue(const std::string &name) const; /** * Can this script be selected by developers only? diff --git a/src/script/script_instance.cpp b/src/script/script_instance.cpp index 21aca7683d..ed4864b864 100644 --- a/src/script/script_instance.cpp +++ b/src/script/script_instance.cpp @@ -653,7 +653,7 @@ bool ScriptInstance::IsPaused() } if (std::holds_alternative(value)) { - sq_pushstring(vm, std::get(value).c_str(), -1); + sq_pushstring(vm, std::get(value), -1); return true; } diff --git a/src/script/script_scanner.cpp b/src/script/script_scanner.cpp index b412c4733b..4e539ec95b 100644 --- a/src/script/script_scanner.cpp +++ b/src/script/script_scanner.cpp @@ -20,6 +20,7 @@ #include "../network/network_content.h" #include "../3rdparty/md5/md5.h" #include "../tar_type.h" +#include "../3rdparty/fmt/format.h" #include "../safeguards.h" @@ -84,12 +85,8 @@ void ScriptScanner::RescanDir() void ScriptScanner::Reset() { for (const auto &item : this->info_list) { - free(item.first); delete item.second; } - for (const auto &item : this->info_single_list) { - free(item.first); - } this->info_list.clear(); this->info_single_list.clear(); @@ -97,12 +94,8 @@ void ScriptScanner::Reset() void ScriptScanner::RegisterScript(ScriptInfo *info) { - char script_original_name[1024]; - this->GetScriptName(info, script_original_name, lastof(script_original_name)); - strtolower(script_original_name); - - char script_name[1024]; - seprintf(script_name, lastof(script_name), "%s.%d", script_original_name, info->GetVersion()); + std::string script_original_name = this->GetScriptName(info); + std::string script_name = fmt::format("{}.{}", script_original_name, info->GetVersion()); /* Check if GetShortName follows the rules */ if (strlen(info->GetShortName()) != 4) { @@ -132,15 +125,16 @@ void ScriptScanner::RegisterScript(ScriptInfo *info) return; } - this->info_list[stredup(script_name)] = info; + this->info_list[script_name] = info; if (!info->IsDeveloperOnly() || _settings_client.gui.ai_developer_tools) { /* Add the script to the 'unique' script list, where only the highest version * of the script is registered. */ - if (this->info_single_list.find(script_original_name) == this->info_single_list.end()) { - this->info_single_list[stredup(script_original_name)] = info; - } else if (this->info_single_list[script_original_name]->GetVersion() < info->GetVersion()) { + auto it = this->info_single_list.find(script_original_name); + if (it == this->info_single_list.end()) { this->info_single_list[script_original_name] = info; + } else if (it->second->GetVersion() < info->GetVersion()) { + it->second = info; } } } diff --git a/src/script/script_scanner.hpp b/src/script/script_scanner.hpp index 9781e07b69..707eade0cd 100644 --- a/src/script/script_scanner.hpp +++ b/src/script/script_scanner.hpp @@ -12,9 +12,9 @@ #include #include "../fileio_func.h" -#include "../core/string_compare_type.hpp" +#include "../string_func.h" -typedef std::map ScriptInfoList; ///< Type for the list of scripts. +typedef std::map ScriptInfoList; ///< Type for the list of scripts. /** Scanner to help finding scripts. */ class ScriptScanner : public FileScanner { @@ -99,7 +99,7 @@ protected: /** * Get the script name how to store the script in memory. */ - virtual void GetScriptName(ScriptInfo *info, char *name, const char *last) = 0; + virtual std::string GetScriptName(ScriptInfo *info) = 0; /** * Get the filename to scan for this type of script. diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index c5b71592ad..921203f9af 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -1539,8 +1539,8 @@ bool ConditionallyHiddenSettingEntry::UpdateFilterState(SettingFilter &filter, b */ void SettingsContainer::Init(byte level) { - for (EntryVector::iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - (*it)->Init(level); + for (auto &it : this->entries) { + it->Init(level); } } @@ -1555,16 +1555,16 @@ void SettingsContainer::ResetAll() /** Recursively close all folds of sub-pages */ void SettingsContainer::FoldAll() { - for (EntryVector::iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - (*it)->FoldAll(); + for (auto &it : this->entries) { + it->FoldAll(); } } /** Recursively open all folds of sub-pages */ void SettingsContainer::UnFoldAll() { - for (EntryVector::iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - (*it)->UnFoldAll(); + for (auto &it : this->entries) { + it->UnFoldAll(); } } @@ -1575,8 +1575,8 @@ void SettingsContainer::UnFoldAll() */ void SettingsContainer::GetFoldingState(bool &all_folded, bool &all_unfolded) const { - for (EntryVector::const_iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - (*it)->GetFoldingState(all_folded, all_unfolded); + for (auto &it : this->entries) { + it->GetFoldingState(all_folded, all_unfolded); } } @@ -1607,8 +1607,8 @@ bool SettingsContainer::UpdateFilterState(SettingFilter &filter, bool force_visi */ bool SettingsContainer::IsVisible(const BaseSettingEntry *item) const { - for (EntryVector::const_iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - if ((*it)->IsVisible(item)) return true; + for (const auto &it : this->entries) { + if (it->IsVisible(item)) return true; } return false; } @@ -1617,8 +1617,8 @@ bool SettingsContainer::IsVisible(const BaseSettingEntry *item) const uint SettingsContainer::Length() const { uint length = 0; - for (EntryVector::const_iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - length += (*it)->Length(); + for (const auto &it : this->entries) { + length += it->Length(); } return length; } @@ -1632,8 +1632,8 @@ uint SettingsContainer::Length() const BaseSettingEntry *SettingsContainer::FindEntry(uint row_num, uint *cur_row) { BaseSettingEntry *pe = nullptr; - for (EntryVector::iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - pe = (*it)->FindEntry(row_num, cur_row); + for (const auto &it : this->entries) { + pe = it->FindEntry(row_num, cur_row); if (pe != nullptr) { break; } @@ -1649,8 +1649,8 @@ BaseSettingEntry *SettingsContainer::FindEntry(uint row_num, uint *cur_row) uint SettingsContainer::GetMaxHelpHeight(int maxw) { uint biggest = 0; - for (EntryVector::const_iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - biggest = std::max(biggest, (*it)->GetMaxHelpHeight(maxw)); + for (const auto &it : this->entries) { + biggest = std::max(biggest, it->GetMaxHelpHeight(maxw)); } return biggest; } @@ -1671,11 +1671,9 @@ uint SettingsContainer::GetMaxHelpHeight(int maxw) */ uint SettingsContainer::Draw(GameSettings *settings_ptr, int left, int right, int y, uint first_row, uint max_row, BaseSettingEntry *selected, uint cur_row, uint parent_last) const { - for (EntryVector::const_iterator it = this->entries.begin(); it != this->entries.end(); ++it) { - cur_row = (*it)->Draw(settings_ptr, left, right, y, first_row, max_row, selected, cur_row, parent_last); - if (cur_row >= max_row) { - break; - } + for (const auto &it : this->entries) { + cur_row = it->Draw(settings_ptr, left, right, y, first_row, max_row, selected, cur_row, parent_last); + if (cur_row >= max_row) break; } return cur_row; } @@ -2802,7 +2800,7 @@ struct GameSettingsWindow : Window { this->closing_dropdown = false; const NWidgetBase *wid = this->GetWidget(WID_GS_OPTIONSPANEL); - int rel_y = (pt.y - (int)wid->pos_y - WidgetDimensions::scaled.framerect.top) % wid->resize_y; + int rel_y = (pt.y - wid->pos_y - WidgetDimensions::scaled.framerect.top) % wid->resize_y; Rect wi_rect; wi_rect.left = pt.x - (_current_text_dir == TD_RTL ? SETTING_BUTTON_WIDTH - 1 - x : x); diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 73bf260b66..3b0c0973e2 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -4388,9 +4388,9 @@ void RerouteCargo(Station *st, CargoID c, StationID avoid, StationID avoid2) /* Reroute cargo staged to be transferred. */ for (Vehicle *v : st->loading_vehicles) { - for (; v != nullptr; v = v->Next()) { - if (v->cargo_type != c) continue; - v->cargo.Reroute(UINT_MAX, &v->cargo, avoid, avoid2, &ge); + for (Vehicle *u = v; u != nullptr; u = u->Next()) { + if (u->cargo_type != c) continue; + u->cargo.Reroute(UINT_MAX, &u->cargo, avoid, avoid2, &ge); } } } @@ -5557,8 +5557,7 @@ void FlowStatMap::PassOnFlow(StationID origin, StationID via, uint flow) */ void FlowStatMap::FinalizeLocalConsumption(StationID self) { - for (FlowStatMap::iterator i = this->begin(); i != this->end(); ++i) { - FlowStat &fs = *i; + for (FlowStat &fs : *this) { uint local = fs.GetShare(INVALID_STATION); if (local > INT_MAX) { // make sure it fits in an int fs.ChangeShare(self, -INT_MAX); @@ -5602,8 +5601,8 @@ StationIDStack FlowStatMap::DeleteFlows(StationID via) */ void FlowStatMap::RestrictFlows(StationID via) { - for (FlowStatMap::iterator it = this->begin(); it != this->end(); ++it) { - it->RestrictShare(via); + for (FlowStat &it : *this) { + it.RestrictShare(via); } } @@ -5614,9 +5613,9 @@ void FlowStatMap::RestrictFlows(StationID via) uint FlowStatMap::GetFlow() const { uint ret = 0; - for (FlowStatMap::const_iterator i = this->begin(); i != this->end(); ++i) { - if (i->IsInvalid()) continue; - ret += (i->end() - 1)->first; + for (const FlowStat &it : *this) { + if (it.IsInvalid()) continue; + ret += (it.end() - 1)->first; } return ret; } @@ -5629,9 +5628,9 @@ uint FlowStatMap::GetFlow() const uint FlowStatMap::GetFlowVia(StationID via) const { uint ret = 0; - for (FlowStatMap::const_iterator i = this->begin(); i != this->end(); ++i) { - if (i->IsInvalid()) continue; - ret += i->GetShare(via); + for (const FlowStat &it : *this) { + if (it.IsInvalid()) continue; + ret += it.GetShare(via); } return ret; } diff --git a/src/station_gui.cpp b/src/station_gui.cpp index 0049e6d995..16058c2338 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -1184,9 +1184,9 @@ CargoDataEntry::~CargoDataEntry() void CargoDataEntry::Clear() { if (this->children != nullptr) { - for (CargoDataSet::iterator i = this->children->begin(); i != this->children->end(); ++i) { - assert(*i != this); - delete *i; + for (auto &it : *this->children) { + assert(it != this); + delete it; } this->children->clear(); } @@ -1650,19 +1650,19 @@ struct StationViewWindow : public Window { cargo_entry->Clear(); const FlowStatMap &flows = st->goods[i].flows; - for (FlowStatMap::const_iterator it = flows.begin(); it != flows.end(); ++it) { - StationID from = it->GetOrigin(); + for (const auto &it : flows) { + StationID from = it.GetOrigin(); CargoDataEntry *source_entry = cargo_entry->InsertOrRetrieve(from); uint32 prev_count = 0; - for (FlowStat::const_iterator flow_it = it->begin(); flow_it != it->end(); ++flow_it) { - StationID via = flow_it->second; + for (const auto &flow_it : it) { + StationID via = flow_it.second; CargoDataEntry *via_entry = source_entry->InsertOrRetrieve(via); if (via == this->window_number) { - via_entry->InsertOrRetrieve(via)->Update(flow_it->first - prev_count); + via_entry->InsertOrRetrieve(via)->Update(flow_it.first - prev_count); } else { - EstimateDestinations(i, from, via, flow_it->first - prev_count, via_entry); + EstimateDestinations(i, from, via, flow_it.first - prev_count, via_entry); } - prev_count = flow_it->first; + prev_count = flow_it.first; } } } diff --git a/src/string.cpp b/src/string.cpp index 55495cd107..5c4bd4cdb4 100644 --- a/src/string.cpp +++ b/src/string.cpp @@ -410,22 +410,6 @@ bool StrEndsWith(const std::string_view str, const std::string_view suffix) return str.compare(str.size() - suffix_len, suffix_len, suffix, 0, suffix_len) == 0; } -const char *StrConsumeToSeparator(std::string &result, const char *str) -{ - if (str == nullptr) { - result = ""; - return nullptr; - } - - const char *end = str; - while (*end != '\0' && *end != 0x1F) { - end++; - } - result.assign(str, end); - if (*end == 0x1F) return end + 1; - return nullptr; -} - /** Case insensitive implementation of the standard character type traits. */ struct CaseInsensitiveCharTraits : public std::char_traits { static bool eq(char c1, char c2) { return toupper(c1) == toupper(c2); } diff --git a/src/string_func.h b/src/string_func.h index 7c655809eb..82467209d9 100644 --- a/src/string_func.h +++ b/src/string_func.h @@ -63,7 +63,10 @@ void StrTrimInPlace(std::string &str); [[nodiscard]] bool StrEqualsIgnoreCase(const std::string_view str1, const std::string_view str2); [[nodiscard]] int StrNaturalCompare(std::string_view s1, std::string_view s2, bool ignore_garbage_at_front = false); -const char *StrConsumeToSeparator(std::string &result, const char *str); +/** Case insensitive comparator for strings, for example for use in std::map. */ +struct CaseInsensitiveComparator { + bool operator()(const std::string_view s1, const std::string_view s2) const { return StrCompareIgnoreCase(s1, s2) < 0; } +}; /** * Check if a string buffer is empty. diff --git a/src/strings.cpp b/src/strings.cpp index 5e767c305e..32950e7802 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -40,6 +40,7 @@ #include "core/backup_type.hpp" #include "core/y_combinator.hpp" #include +#include #include "table/strings.h" #include "table/control_codes.h" @@ -701,8 +702,7 @@ static const char *ParseStringChoice(const char *b, uint form, char **dst, const /** Helper for unit conversion. */ struct UnitConversion { - int multiplier; ///< Amount to multiply upon conversion. - int shift; ///< Amount to shift upon conversion. + double factor; ///< Amount to multiply or divide upon conversion. /** * Convert value from OpenTTD's internal unit into the displayed value. @@ -712,7 +712,9 @@ struct UnitConversion { */ int64 ToDisplay(int64 input, bool round = true) const { - return ((input * this->multiplier) + (round && this->shift != 0 ? 1 << (this->shift - 1) : 0)) >> this->shift; + return round + ? (int64_t)std::round(input * this->factor) + : (int64_t)(input * this->factor); } /** @@ -724,7 +726,9 @@ struct UnitConversion { */ int64 FromDisplay(int64 input, bool round = true, int64 divider = 1) const { - return ((input << this->shift) + (round ? (this->multiplier * divider) - 1 : 0)) / (this->multiplier * divider); + return round + ? (int64_t)std::round(input / this->factor / divider) + : (int64_t)(input / this->factor / divider); } }; @@ -740,63 +744,64 @@ struct UnitsLong { UnitConversion c; ///< Conversion StringID s; ///< String for the short variant of the unit StringID l; ///< String for the long variant of the unit + unsigned int decimal_places; ///< Number of decimal places embedded in the value. For example, 1 if the value is in tenths, and 3 if the value is in thousandths. }; /** Unit conversions for velocity. */ static const Units _units_velocity[] = { - { { 1, 0}, STR_UNITS_VELOCITY_IMPERIAL, 0 }, - { { 103, 6}, STR_UNITS_VELOCITY_METRIC, 0 }, - { { 1831, 12}, STR_UNITS_VELOCITY_SI, 0 }, - { { 37888, 16}, STR_UNITS_VELOCITY_GAMEUNITS, 1 }, - { { 7289499, 23}, STR_UNITS_VELOCITY_KNOTS, 0 }, + { { 1.0 }, STR_UNITS_VELOCITY_IMPERIAL, 0 }, + { { 1.609344 }, STR_UNITS_VELOCITY_METRIC, 0 }, + { { 0.44704 }, STR_UNITS_VELOCITY_SI, 0 }, + { { 0.578125 }, STR_UNITS_VELOCITY_GAMEUNITS, 1 }, + { { 0.868976 }, STR_UNITS_VELOCITY_KNOTS, 0 }, }; /** Unit conversions for power. */ static const Units _units_power[] = { - { { 1, 0}, STR_UNITS_POWER_IMPERIAL, 0 }, - { {4153, 12}, STR_UNITS_POWER_METRIC, 0 }, - { {6109, 13}, STR_UNITS_POWER_SI, 0 }, + { { 1.0 }, STR_UNITS_POWER_IMPERIAL, 0 }, + { { 1.01387 }, STR_UNITS_POWER_METRIC, 0 }, + { { 0.745699 }, STR_UNITS_POWER_SI, 0 }, }; /** Unit conversions for power to weight. */ static const Units _units_power_to_weight[] = { - { { 29, 5}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL, 1}, - { { 1, 0}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC, 1}, - { { 1, 0}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI, 1}, - { { 59, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL, 1}, - { { 65, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC, 1}, - { { 65, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_SI, 1}, - { { 173, 8}, STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL, 1}, - { { 3, 2}, STR_UNITS_POWER_SI_TO_WEIGHT_METRIC, 1}, - { { 3, 2}, STR_UNITS_POWER_SI_TO_WEIGHT_SI, 1}, + { { 0.907185 }, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL, 1 }, + { { 1.0 }, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC, 1 }, + { { 1.0 }, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI, 1 }, + { { 0.919768 }, STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL, 1 }, + { { 1.01387 }, STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC, 1 }, + { { 1.01387 }, STR_UNITS_POWER_METRIC_TO_WEIGHT_SI, 1 }, + { { 0.676487 }, STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL, 1 }, + { { 0.745699 }, STR_UNITS_POWER_SI_TO_WEIGHT_METRIC, 1 }, + { { 0.745699 }, STR_UNITS_POWER_SI_TO_WEIGHT_SI, 1 }, }; /** Unit conversions for weight. */ static const UnitsLong _units_weight[] = { - { {4515, 12}, STR_UNITS_WEIGHT_SHORT_IMPERIAL, STR_UNITS_WEIGHT_LONG_IMPERIAL }, - { { 1, 0}, STR_UNITS_WEIGHT_SHORT_METRIC, STR_UNITS_WEIGHT_LONG_METRIC }, - { {1000, 0}, STR_UNITS_WEIGHT_SHORT_SI, STR_UNITS_WEIGHT_LONG_SI }, + { { 1.102311 }, STR_UNITS_WEIGHT_SHORT_IMPERIAL, STR_UNITS_WEIGHT_LONG_IMPERIAL, 0 }, + { { 1.0 }, STR_UNITS_WEIGHT_SHORT_METRIC, STR_UNITS_WEIGHT_LONG_METRIC, 0 }, + { { 1000.0 }, STR_UNITS_WEIGHT_SHORT_SI, STR_UNITS_WEIGHT_LONG_SI, 0 }, }; /** Unit conversions for volume. */ static const UnitsLong _units_volume[] = { - { {4227, 4}, STR_UNITS_VOLUME_SHORT_IMPERIAL, STR_UNITS_VOLUME_LONG_IMPERIAL }, - { {1000, 0}, STR_UNITS_VOLUME_SHORT_METRIC, STR_UNITS_VOLUME_LONG_METRIC }, - { { 1, 0}, STR_UNITS_VOLUME_SHORT_SI, STR_UNITS_VOLUME_LONG_SI }, + { { 264.172 }, STR_UNITS_VOLUME_SHORT_IMPERIAL, STR_UNITS_VOLUME_LONG_IMPERIAL, 0 }, + { { 1000.0 }, STR_UNITS_VOLUME_SHORT_METRIC, STR_UNITS_VOLUME_LONG_METRIC, 0 }, + { { 1.0 }, STR_UNITS_VOLUME_SHORT_SI, STR_UNITS_VOLUME_LONG_SI, 0 }, }; /** Unit conversions for force. */ static const Units _units_force[] = { - { {3597, 4}, STR_UNITS_FORCE_IMPERIAL, 0 }, - { {3263, 5}, STR_UNITS_FORCE_METRIC, 0 }, - { { 1, 0}, STR_UNITS_FORCE_SI, 0 }, + { { 0.224809 }, STR_UNITS_FORCE_IMPERIAL, 0 }, + { { 0.101972 }, STR_UNITS_FORCE_METRIC, 0 }, + { { 0.001 }, STR_UNITS_FORCE_SI, 0 }, }; /** Unit conversions for height. */ static const Units _units_height[] = { - { { 3, 0}, STR_UNITS_HEIGHT_IMPERIAL, 0 }, // "Wrong" conversion factor for more nicer GUI values - { { 1, 0}, STR_UNITS_HEIGHT_METRIC, 0 }, - { { 1, 0}, STR_UNITS_HEIGHT_SI, 0 }, + { { 3.0 }, STR_UNITS_HEIGHT_IMPERIAL, 0 }, // "Wrong" conversion factor for more nicer GUI values + { { 1.0 }, STR_UNITS_HEIGHT_METRIC, 0 }, + { { 1.0 }, STR_UNITS_HEIGHT_SI, 0 }, }; /** @@ -913,7 +918,7 @@ uint ConvertDisplayPowerToPower(uint power) * @param force the force to convert * @return the converted force. */ -uint ConvertForceToDisplayForce(uint force) +int64 ConvertForceToDisplayForce(int64 force) { return _units_force[_settings_game.locale.units_force].c.ToDisplay(force); } @@ -923,14 +928,14 @@ uint ConvertForceToDisplayForce(uint force) * @param force the force to convert * @return the converted force. */ -uint ConvertDisplayForceToForce(uint force) +int64 ConvertDisplayForceToForce(int64 force) { return _units_force[_settings_game.locale.units_force].c.FromDisplay(force); } -static void ConvertWeightRatioToDisplay(const Units &unit, uint ratio, int64 &value, int64 &decimals) +static void ConvertWeightRatioToDisplay(const Units &unit, int64 ratio, int64 &value, int64 &decimals) { - int64 input = ratio * 100; + int64 input = ratio; decimals = 2; if (_settings_game.locale.units_weight == 2) { input *= 1000; @@ -939,11 +944,11 @@ static void ConvertWeightRatioToDisplay(const Units &unit, uint ratio, int64 &va const UnitConversion &weight_conv = _units_weight[_settings_game.locale.units_weight].c; UnitConversion conv = unit.c; - conv.multiplier <<= weight_conv.shift; + conv.factor /= weight_conv.factor; - value = conv.ToDisplay(input) / (100 * weight_conv.multiplier); + value = conv.ToDisplay(input); - if (unit.c.multiplier >> unit.c.shift > 100) { + if (unit.c.factor > 100) { value /= 100; decimals -= 2; } @@ -953,10 +958,10 @@ static uint ConvertDisplayToWeightRatio(const Units &unit, double in) { const UnitConversion &weight_conv = _units_weight[_settings_game.locale.units_weight].c; UnitConversion conv = unit.c; - conv.multiplier <<= weight_conv.shift; + conv.factor /= weight_conv.factor; int64 multiplier = _settings_game.locale.units_weight == 2 ? 1000 : 1; - return conv.FromDisplay(in * 100 * multiplier * weight_conv.multiplier, true, multiplier); + return conv.FromDisplay(in * 100 * multiplier, true, multiplier); } static char *FormatUnitWeightRatio(char *buff, const char *last, const Units &unit, int64 raw_value) @@ -965,10 +970,9 @@ static char *FormatUnitWeightRatio(char *buff, const char *last, const Units &un const char *weight_str = GetStringPtr(_units_weight[_settings_game.locale.units_weight].s); char tmp_buffer[32]; - strecpy(tmp_buffer, unit_str, lastof(tmp_buffer)); - char *insert_pt = str_replace_wchar(tmp_buffer, lastof(tmp_buffer), SCC_COMMA, SCC_DECIMAL); + char *insert_pt = strecpy(tmp_buffer, unit_str, lastof(tmp_buffer)); strecpy(insert_pt, weight_str, lastof(tmp_buffer)); - str_replace_wchar(insert_pt, lastof(tmp_buffer), SCC_COMMA, '/'); + str_replace_wchar(insert_pt, lastof(tmp_buffer), SCC_DECIMAL, '/'); str_replace_wchar(insert_pt, lastof(tmp_buffer), 0xA0 /* NBSP */, 0); int64 value, decimals; @@ -986,7 +990,7 @@ static char *FormatUnitWeightRatio(char *buff, const char *last, const Units &un * @param value the output value * @param decimals the output decimal offset */ -void ConvertPowerWeightRatioToDisplay(uint ratio, int64 &value, int64 &decimals) +void ConvertPowerWeightRatioToDisplay(int64 ratio, int64 &value, int64 &decimals) { ConvertWeightRatioToDisplay(_units_power[_settings_game.locale.units_power], ratio, value, decimals); } @@ -997,7 +1001,7 @@ void ConvertPowerWeightRatioToDisplay(uint ratio, int64 &value, int64 &decimals) * @param value the output value * @param decimals the output decimal offset */ -void ConvertForceWeightRatioToDisplay(uint ratio, int64 &value, int64 &decimals) +void ConvertForceWeightRatioToDisplay(int64 ratio, int64 &value, int64 &decimals) { ConvertWeightRatioToDisplay(_units_force[_settings_game.locale.units_force], ratio, value, decimals); } @@ -1597,36 +1601,36 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg case SCC_FORCE: { // {FORCE} assert(_settings_game.locale.units_force < lengthof(_units_force)); - int64 args_array[1] = {_units_force[_settings_game.locale.units_force].c.ToDisplay(args->GetInt64())}; + const auto &x = _units_force[_settings_game.locale.units_force]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_force[_settings_game.locale.units_force].s), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_HEIGHT: { // {HEIGHT} assert(_settings_game.locale.units_height < lengthof(_units_height)); - int64 args_array[] = {_units_height[_settings_game.locale.units_height].c.ToDisplay(args->GetInt64())}; + const auto &x = _units_height[_settings_game.locale.units_height]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_height[_settings_game.locale.units_height].s), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_POWER: { // {POWER} assert(_settings_game.locale.units_power < lengthof(_units_power)); - int64 args_array[1] = {_units_power[_settings_game.locale.units_power].c.ToDisplay(args->GetInt64())}; + const auto &x = _units_power[_settings_game.locale.units_power]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_power[_settings_game.locale.units_power].s), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_POWER_TO_WEIGHT: { // {POWER_TO_WEIGHT} auto setting = _settings_game.locale.units_power * 3u + _settings_game.locale.units_weight; assert(setting < lengthof(_units_power_to_weight)); - - auto const &x = _units_power_to_weight[setting]; - + const auto &x = _units_power_to_weight[setting]; int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; - StringParameters tmp_params(args_array); buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; @@ -1638,42 +1642,46 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg VehicleType vt = static_cast(GB(arg, 56, 8)); byte units = GetVelocityUnits(vt); assert(units < lengthof(_units_velocity)); - unsigned int decimal_places = _units_velocity[units].decimal_places; - uint64 args_array[] = {ConvertKmhishSpeedToDisplaySpeed(GB(arg, 0, 56), vt), decimal_places}; - StringParameters tmp_params(args_array, decimal_places ? 2 : 1, nullptr); - buff = FormatString(buff, GetStringPtr(_units_velocity[units].s), &tmp_params, last); + const auto &x = _units_velocity[units]; + int64 args_array[] = {ConvertKmhishSpeedToDisplaySpeed(GB(arg, 0, 56), vt), x.decimal_places}; + StringParameters tmp_params(args_array); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_VOLUME_SHORT: { // {VOLUME_SHORT} assert(_settings_game.locale.units_volume < lengthof(_units_volume)); - int64 args_array[1] = {_units_volume[_settings_game.locale.units_volume].c.ToDisplay(args->GetInt64())}; + const auto &x = _units_volume[_settings_game.locale.units_volume]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_volume[_settings_game.locale.units_volume].s), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_VOLUME_LONG: { // {VOLUME_LONG} assert(_settings_game.locale.units_volume < lengthof(_units_volume)); - int64 args_array[1] = {_units_volume[_settings_game.locale.units_volume].c.ToDisplay(args->GetInt64(SCC_VOLUME_LONG))}; + const auto &x = _units_volume[_settings_game.locale.units_volume]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64(SCC_VOLUME_LONG)), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_volume[_settings_game.locale.units_volume].l), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.l), &tmp_params, last); break; } case SCC_WEIGHT_SHORT: { // {WEIGHT_SHORT} assert(_settings_game.locale.units_weight < lengthof(_units_weight)); - int64 args_array[1] = {_units_weight[_settings_game.locale.units_weight].c.ToDisplay(args->GetInt64())}; + const auto &x = _units_weight[_settings_game.locale.units_weight]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_weight[_settings_game.locale.units_weight].s), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); break; } case SCC_WEIGHT_LONG: { // {WEIGHT_LONG} assert(_settings_game.locale.units_weight < lengthof(_units_weight)); - int64 args_array[1] = {_units_weight[_settings_game.locale.units_weight].c.ToDisplay(args->GetInt64(SCC_WEIGHT_LONG))}; + const auto &x = _units_weight[_settings_game.locale.units_weight]; + int64 args_array[] = {x.c.ToDisplay(args->GetInt64(SCC_WEIGHT_LONG)), x.decimal_places}; StringParameters tmp_params(args_array); - buff = FormatString(buff, GetStringPtr(_units_weight[_settings_game.locale.units_weight].l), &tmp_params, last); + buff = FormatString(buff, GetStringPtr(x.l), &tmp_params, last); break; } diff --git a/src/table/newgrf_debug_data.h b/src/table/newgrf_debug_data.h index a5bd7c670f..5c1cc073cc 100644 --- a/src/table/newgrf_debug_data.h +++ b/src/table/newgrf_debug_data.h @@ -1681,9 +1681,8 @@ class NIHTown : public NIHelper { { Town *t = Town::Get(index); - std::list::iterator iter; - for (iter = t->psa_list.begin(); iter != t->psa_list.end(); iter++) { - if ((*iter)->grfid == grfid) return (int32 *)(&(*iter)->storage[0]); + for (const auto &it : t->psa_list) { + if (it->grfid == grfid) return &it->storage[0]; } return nullptr; diff --git a/src/tbtr_template_gui_create.cpp b/src/tbtr_template_gui_create.cpp index bd2212f067..bd1c46311e 100644 --- a/src/tbtr_template_gui_create.cpp +++ b/src/tbtr_template_gui_create.cpp @@ -340,7 +340,7 @@ public: SetDParam(2, this->virtual_train->GetDisplayMaxSpeed()); SetDParam(1, gcache->cached_power); SetDParam(0, gcache->cached_weight); - SetDParam(3, gcache->cached_max_te / 1000); + SetDParam(3, gcache->cached_max_te); DrawString(8, r.right, y, original_acceleration ? STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED : STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE); uint32 full_cargo_weight = 0; for (Train *train = this->virtual_train; train != nullptr; train = train->Next()) { @@ -355,7 +355,7 @@ public: SetDParam(2, STR_VEHICLE_INFO_POWER_WEIGHT_RATIO); SetDParam(3, (100 * this->virtual_train->gcache.cached_power) / std::max(1, full_weight)); SetDParam(4, this->virtual_train->GetAccelerationType() == 2 ? STR_EMPTY : STR_VEHICLE_INFO_TE_WEIGHT_RATIO); - SetDParam(5, (this->virtual_train->gcache.cached_max_te / 10) / std::max(1, full_weight)); + SetDParam(5, (100 * this->virtual_train->gcache.cached_max_te) / std::max(1, full_weight)); } else { SetDParam(1, STR_EMPTY); } diff --git a/src/tbtr_template_gui_main.cpp b/src/tbtr_template_gui_main.cpp index 5cc31acfa9..ff7810920e 100644 --- a/src/tbtr_template_gui_main.cpp +++ b/src/tbtr_template_gui_main.cpp @@ -795,7 +795,7 @@ public: SetDParam(2, STR_VEHICLE_INFO_POWER_WEIGHT_RATIO); SetDParam(3, (100 * tmp->power) / std::max(1, tmp->full_weight)); SetDParam(4, GetRailTypeInfo(tmp->railtype)->acceleration_type == 2 ? STR_EMPTY : STR_VEHICLE_INFO_TE_WEIGHT_RATIO); - SetDParam(5, (tmp->max_te / 10) / std::max(1, tmp->full_weight)); + SetDParam(5, (100 * tmp->max_te) / std::max(1, tmp->full_weight)); } else { SetDParam(1, STR_EMPTY); } diff --git a/src/terraform_cmd.cpp b/src/terraform_cmd.cpp index 1cd3fa57e4..3ff930e745 100644 --- a/src/terraform_cmd.cpp +++ b/src/terraform_cmd.cpp @@ -223,9 +223,7 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin * Pass == 0: Collect tileareas which are caused to be auto-cleared. * Pass == 1: Collect the actual cost. */ for (int pass = 0; pass < 2; pass++) { - for (TileIndexSet::const_iterator it = ts.dirty_tiles.begin(); it != ts.dirty_tiles.end(); it++) { - TileIndex t = *it; - + for (const auto &t : ts.dirty_tiles) { assert(t < MapSize()); /* MP_VOID tiles can be terraformed but as tunnels and bridges * cannot go under / over these tiles they don't need checking. */ @@ -309,18 +307,17 @@ CommandCost CmdTerraformLand(TileIndex tile, DoCommandFlag flags, uint32 p1, uin if (flags & DC_EXEC) { /* Mark affected areas dirty. */ - for (TileIndexSet::const_iterator it = ts.dirty_tiles.begin(); it != ts.dirty_tiles.end(); it++) { - MarkTileDirtyByTile(*it); - TileIndexToHeightMap::const_iterator new_height = ts.tile_to_new_height.find(*it); + for (const auto &t : ts.dirty_tiles) { + MarkTileDirtyByTile(t); + TileIndexToHeightMap::const_iterator new_height = ts.tile_to_new_height.find(t); if (new_height == ts.tile_to_new_height.end()) continue; - MarkTileDirtyByTile(*it, VMDF_NONE, 0, new_height->second); + MarkTileDirtyByTile(t, VMDF_NONE, 0, new_height->second); } /* change the height */ - for (TileIndexToHeightMap::const_iterator it = ts.tile_to_new_height.begin(); - it != ts.tile_to_new_height.end(); it++) { - TileIndex t = it->first; - int height = it->second; + for (const auto &it : ts.tile_to_new_height) { + TileIndex t = it.first; + int height = it.second; SetTileHeight(t, (uint)height); } diff --git a/src/tracerestrict_gui.cpp b/src/tracerestrict_gui.cpp index 1bd7bf6663..bec5b4c463 100644 --- a/src/tracerestrict_gui.cpp +++ b/src/tracerestrict_gui.cpp @@ -1003,8 +1003,8 @@ static uint ConvertIntegerValue(TraceRestrictValueType type, uint in, bool to_di case TRVT_FORCE: return to_display - ? ConvertForceToDisplayForce(in) - : ConvertDisplayForceToForce(in); + ? ConvertForceToDisplayForce(static_cast(in) * 1000) + : static_cast(ConvertDisplayForceToForce(in) / 1000); break; case TRVT_PF_PENALTY: @@ -1031,7 +1031,7 @@ static void ConvertValueToDecimal(TraceRestrictValueType type, uint in, int64 &v break; case TRVT_FORCE_WEIGHT_RATIO: - ConvertForceWeightRatioToDisplay(in, value, decimal); + ConvertForceWeightRatioToDisplay(static_cast(in) * 1000, value, decimal); break; case TRVT_SPEED: @@ -1054,7 +1054,7 @@ static uint ConvertDecimalToValue(TraceRestrictValueType type, double in) return ConvertDisplayToPowerWeightRatio(in); case TRVT_FORCE_WEIGHT_RATIO: - return ConvertDisplayToForceWeightRatio(in); + return ConvertDisplayToForceWeightRatio(in) / 1000; case TRVT_SPEED: return ConvertDisplaySpeedToKmhishSpeed(in * (_settings_game.locale.units_velocity == 3 ? 10 : 1), VEH_TRAIN); @@ -1393,7 +1393,8 @@ static void DrawInstructionString(const TraceRestrictProgram *prog, TraceRestric case TRVT_FORCE: instruction_string = STR_TRACE_RESTRICT_CONDITIONAL_COMPARE_FORCE; - DrawInstructionStringConditionalIntegerCommon(item, properties); + DrawInstructionStringConditionalCommon(item, properties); + SetDParam(3, GetTraceRestrictValue(item) * 1000); break; case TRVT_POWER_WEIGHT_RATIO: @@ -1403,7 +1404,8 @@ static void DrawInstructionString(const TraceRestrictProgram *prog, TraceRestric case TRVT_FORCE_WEIGHT_RATIO: instruction_string = STR_TRACE_RESTRICT_CONDITIONAL_COMPARE_FORCE_WEIGHT_RATIO; - DrawInstructionStringConditionalIntegerCommon(item, properties); + DrawInstructionStringConditionalCommon(item, properties); + SetDParam(3, GetTraceRestrictValue(item) * 1000); break; case TRVT_SLOT_INDEX: diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index 746ae5a0a7..4013fa3a00 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -2206,10 +2206,15 @@ CommandCost CmdMoveRailVehicle(TileIndex tile, DoCommandFlag flags, uint32 p1, u DeleteNewGRFInspectWindow(GSF_TRAINS, src->index); SetWindowDirty(WC_COMPANY, _current_company); - /* Delete orders, group stuff and the unit number as we're not the - * front of any vehicle anymore. */ + if (src_head != nullptr && src_head->IsFrontEngine()) { + /* Cases #?b: Transfer order, unit number and other stuff + * to the new front engine. */ + src_head->orders = src->orders; + if (src_head->orders != nullptr) src_head->AddToShared(src); + src_head->CopyVehicleConfigAndStatistics(src); + } + /* Remove stuff not valid anymore for non-front engines. */ DeleteVehicleOrders(src); - RemoveVehicleFromGroup(src); src->unitnumber = 0; if (HasBit(src->vehicle_flags, VF_HAVE_SLOT)) { TraceRestrictRemoveVehicleFromAllSlots(src->index); diff --git a/src/unit_conversion.h b/src/unit_conversion.h index 76c189e49b..d71b149f2d 100644 --- a/src/unit_conversion.h +++ b/src/unit_conversion.h @@ -17,10 +17,10 @@ uint ConvertWeightToDisplayWeight(uint weight); uint ConvertDisplayWeightToWeight(uint weight); uint ConvertPowerToDisplayPower(uint power); uint ConvertDisplayPowerToPower(uint power); -uint ConvertForceToDisplayForce(uint force); -uint ConvertDisplayForceToForce(uint force); -void ConvertPowerWeightRatioToDisplay(uint ratio, int64 &value, int64 &decimals); -void ConvertForceWeightRatioToDisplay(uint ratio, int64 &value, int64 &decimals); +int64 ConvertForceToDisplayForce(int64 force); +int64 ConvertDisplayForceToForce(int64 force); +void ConvertPowerWeightRatioToDisplay(int64 ratio, int64 &value, int64 &decimals); +void ConvertForceWeightRatioToDisplay(int64 ratio, int64 &value, int64 &decimals); uint ConvertDisplayToPowerWeightRatio(double in); uint ConvertDisplayToForceWeightRatio(double in); diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index 2088790906..1016229a00 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -3142,7 +3142,7 @@ struct VehicleDetailsWindow : Window { SetDParam(2, PackVelocity(v->GetDisplayMaxSpeed(), v->type)); SetDParam(1, gcache->cached_power); SetDParam(0, gcache->cached_weight); - SetDParam(3, gcache->cached_max_te / 1000); + SetDParam(3, gcache->cached_max_te); if (v->type == VEH_TRAIN && (_settings_game.vehicle.train_acceleration_model == AM_ORIGINAL || GetRailTypeInfo(Train::From(v)->railtype)->acceleration_type == 2)) { string = STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED; @@ -3171,7 +3171,7 @@ struct VehicleDetailsWindow : Window { SetDParam(0, STR_VEHICLE_INFO_POWER_WEIGHT_RATIO); SetDParam(1, (100 * Train::From(v)->gcache.cached_power) / std::max(1, Train::From(v)->gcache.cached_weight)); SetDParam(2, Train::From(v)->GetAccelerationType() == 2 ? STR_EMPTY : STR_VEHICLE_INFO_TE_WEIGHT_RATIO); - SetDParam(3, (Train::From(v)->gcache.cached_max_te / 10) / std::max(1, Train::From(v)->gcache.cached_weight)); + SetDParam(3, (100 * Train::From(v)->gcache.cached_max_te) / std::max(1, Train::From(v)->gcache.cached_weight)); DrawString(tr, STR_VEHICLE_INFO_WEIGHT_RATIOS); tr.top += FONT_HEIGHT_NORMAL; } diff --git a/src/widget.cpp b/src/widget.cpp index 70c6dfbe0d..25deb6dac5 100644 --- a/src/widget.cpp +++ b/src/widget.cpp @@ -2039,11 +2039,11 @@ NWidgetCore *NWidgetMatrix::GetWidgetFromPos(int x, int y) bool rtl = _current_text_dir == TD_RTL; int widget_col = (rtl ? - -x + (int)this->pip_post + (int)this->pos_x + base_offs_x + (int)this->widget_w - 1 - (int)this->pip_inter : - x - (int)this->pip_pre - (int)this->pos_x - base_offs_x + -x + (int)this->pip_post + this->pos_x + base_offs_x + this->widget_w - 1 - (int)this->pip_inter : + x - (int)this->pip_pre - this->pos_x - base_offs_x ) / this->widget_w; - int widget_row = (y - base_offs_y - (int)this->pip_pre - (int)this->pos_y) / this->widget_h; + int widget_row = (y - base_offs_y - (int)this->pip_pre - this->pos_y) / this->widget_h; int sub_wid = (widget_row + start_y) * this->widgets_x + start_x + widget_col; if (sub_wid >= this->count) return nullptr; diff --git a/src/widgets/rail_widget.h b/src/widgets/rail_widget.h index 286ec18534..950c01113a 100644 --- a/src/widgets/rail_widget.h +++ b/src/widgets/rail_widget.h @@ -132,9 +132,11 @@ enum BuildRailDepotWidgets { /** Widgets of the #BuildRailWaypointWindow class. */ enum BuildRailWaypointWidgets { + WID_BRW_FILTER, ///< Text filter. WID_BRW_WAYPOINT_MATRIX, ///< Matrix with waypoints. WID_BRW_WAYPOINT, ///< A single waypoint. WID_BRW_SCROLL, ///< Scrollbar for the matrix. + WID_BRW_NAME, ///< Name of selected waypoint. }; #endif /* WIDGETS_RAIL_WIDGET_H */ diff --git a/src/window.cpp b/src/window.cpp index ddeb7a53a5..117b69d27f 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -217,8 +217,8 @@ int Window::GetRowFromWidget(int clickpos, int widget, int padding, int line_hei { const NWidgetBase *wid = this->GetWidget(widget); if (line_height < 0) line_height = wid->resize_y; - if (clickpos < (int)wid->pos_y + padding) return INT_MAX; - return (clickpos - (int)wid->pos_y - padding) / line_height; + if (clickpos < wid->pos_y + padding) return INT_MAX; + return (clickpos - wid->pos_y - padding) / line_height; } /** @@ -758,7 +758,7 @@ static void DispatchLeftClickEvent(Window *w, int x, int y, int click_count) case WWT_RESIZEBOX: /* When the resize widget is on the left size of the window * we assume that that button is used to resize to the left. */ - StartWindowSizing(w, (int)nw->pos_x < (w->width / 2)); + StartWindowSizing(w, nw->pos_x < (w->width / 2)); nw->SetDirty(w); return;