From 183c2a35bd6ec194e063267155bcc63e59891525 Mon Sep 17 00:00:00 2001 From: translators Date: Mon, 10 Feb 2020 19:45:41 +0100 Subject: [PATCH 01/13] Update: Translations from eints dutch: 2 changes by JanWillem spanish (mexican): 2 changes by Absay --- src/lang/dutch.txt | 2 ++ src/lang/spanish_MX.txt | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index 67273ad3ce..b993a76a6c 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -2168,6 +2168,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Ongeldig STR_NETWORK_ERROR_SERVER_FULL :{WHITE}De server is vol STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Je bent verbannen van deze server STR_NETWORK_ERROR_KICKED :{WHITE}Je bent van de server geschopt +STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Reden: {STRING} STR_NETWORK_ERROR_CHEATER :{WHITE}Valsspelen is niet toegestaan op deze server STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Je stuurde te veel commando's naar de server STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Het invoeren van het wachtwoord duurde te lang @@ -2227,6 +2228,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ga STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Je gaf {2:CURRENCY_LONG} aan {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}De server heeft de sessie gesloten STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}De server wordt opnieuw gestart...{}Wacht alstublieft... +STR_NETWORK_MESSAGE_KICKED :*** {STRING} is eruit geschopt. Reden: ({STRING}) # Content downloading window STR_CONTENT_TITLE :{WHITE}Download extra inhoud diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index 0d46dd2d5f..11f97a3dfc 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -2169,6 +2169,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Contrase STR_NETWORK_ERROR_SERVER_FULL :{WHITE}El servidor está completo STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Se te ha prohibido el acceso al servidor STR_NETWORK_ERROR_KICKED :{WHITE}Has sido expulsado del servidor +STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Razón: {STRING} STR_NETWORK_ERROR_CHEATER :{WHITE}No se permiten trucos en este servidor STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Estabas enviando demasiados comandos al servidor STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Tardaste demasiado en introducir la contraseña @@ -2228,6 +2229,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} le STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {2:CURRENCY_LONG} cedidos a la empresa {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}El servidor ha cerrado la sesión STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Se está reiniciando el servidor...{}Espera por favor... +STR_NETWORK_MESSAGE_KICKED :*** {STRING} ha sido expulsado. Razón: ({STRING}) # Content downloading window STR_CONTENT_TITLE :{WHITE}Descarga de contenido From 2196cd3cf87f2fa164ad746b87e2686e2b207158 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Charl=C3=A8ne?= Date: Tue, 11 Feb 2020 12:45:36 +0100 Subject: [PATCH 02/13] Fix: OpenBSD endianness detection --- src/core/endian_type.hpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/core/endian_type.hpp b/src/core/endian_type.hpp index b674928ee6..1b927ef45a 100644 --- a/src/core/endian_type.hpp +++ b/src/core/endian_type.hpp @@ -33,6 +33,13 @@ # else # define TTD_ENDIAN TTD_BIG_ENDIAN # endif +#elif defined(__OpenBSD__) +# include +# if BYTE_ORDER == LITTLE_ENDIAN +# define TTD_ENDIAN TTD_LITTLE_ENDIAN +# else +# define TTD_ENDIAN TTD_BIG_ENDIAN +# endif #elif !defined(TESTING) # include # if __BYTE_ORDER == __LITTLE_ENDIAN From acb3d10832c92c9f93c3a4d50b00774274bac8c7 Mon Sep 17 00:00:00 2001 From: Quipyowert2 <38995150+Quipyowert2@users.noreply.github.com> Date: Wed, 12 Feb 2020 21:04:53 -0800 Subject: [PATCH 03/13] Codechange: Format unsigned integers with %u instead of %i or %d. --- src/fios.cpp | 2 +- src/newgrf_profiling.cpp | 2 +- src/pathfinder/npf/queue.cpp | 10 +++++----- src/strgen/strgen.cpp | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/fios.cpp b/src/fios.cpp index 24487174b8..61f08d93a9 100644 --- a/src/fios.cpp +++ b/src/fios.cpp @@ -697,7 +697,7 @@ public: if (f == nullptr) return false; ScenarioIdentifier id; - int fret = fscanf(f, "%i", &id.scenid); + int fret = fscanf(f, "%u", &id.scenid); FioFCloseFile(f); if (fret != 1) return false; strecpy(id.filename, filename, lastof(id.filename)); diff --git a/src/newgrf_profiling.cpp b/src/newgrf_profiling.cpp index e9a0dd92d2..17f32384d7 100644 --- a/src/newgrf_profiling.cpp +++ b/src/newgrf_profiling.cpp @@ -109,7 +109,7 @@ uint32 NewGRFProfiler::Finish() fputs("Tick,Sprite,Feature,Item,CallbackID,Microseconds,Depth,Result\n", f); for (const Call &c : this->calls) { - fprintf(f, "%u,%u,0x%X,%d,0x%X,%u,%u,%u\n", c.tick, c.root_sprite, c.feat, c.item, (uint)c.cb, c.time, c.subs, c.result); + fprintf(f, "%u,%u,0x%X,%u,0x%X,%u,%u,%u\n", c.tick, c.root_sprite, c.feat, c.item, (uint)c.cb, c.time, c.subs, c.result); total_microseconds += c.time; } diff --git a/src/pathfinder/npf/queue.cpp b/src/pathfinder/npf/queue.cpp index 64ea3bfcae..960cda8e5c 100644 --- a/src/pathfinder/npf/queue.cpp +++ b/src/pathfinder/npf/queue.cpp @@ -305,16 +305,16 @@ void Hash::PrintStatistics() const } printf( "---\n" - "Hash size: %d\n" - "Nodes used: %d\n" - "Non empty buckets: %d\n" - "Max collision: %d\n", + "Hash size: %u\n" + "Nodes used: %u\n" + "Non empty buckets: %u\n" + "Max collision: %u\n", this->num_buckets, this->size, used_buckets, max_collision ); printf("{ "); for (i = 0; i <= max_collision; i++) { if (usage[i] > 0) { - printf("%d:%d ", i, usage[i]); + printf("%u:%u ", i, usage[i]); #if 0 if (i > 0) { uint j; diff --git a/src/strgen/strgen.cpp b/src/strgen/strgen.cpp index c59be0021d..87bac5ab63 100644 --- a/src/strgen/strgen.cpp +++ b/src/strgen/strgen.cpp @@ -310,7 +310,7 @@ struct HeaderFileWriter : HeaderWriter, FileWriter { fprintf(this->fh, "\n" "static const uint LANGUAGE_PACK_VERSION = 0x%X;\n" - "static const uint LANGUAGE_MAX_PLURAL = %d;\n" + "static const uint LANGUAGE_MAX_PLURAL = %u;\n" "static const uint LANGUAGE_MAX_PLURAL_FORMS = %d;\n\n", (uint)data.Version(), (uint)lengthof(_plural_forms), max_plural_forms ); From 05b50aa437cd8049f6cc822264cfa74851957710 Mon Sep 17 00:00:00 2001 From: translators Date: Fri, 14 Feb 2020 19:45:39 +0100 Subject: [PATCH 04/13] Update: Translations from eints afrikaans: 179 changes by Maccie123 chinese (traditional): 4 changes by firetimer chinese (simplified): 100 changes by firetimer --- src/lang/afrikaans.txt | 189 +++++++++++++++++++++++++++++-- src/lang/simplified_chinese.txt | 115 ++++++++++++++++--- src/lang/traditional_chinese.txt | 4 + 3 files changed, 283 insertions(+), 25 deletions(-) diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 2d7202a86e..bcf3e0efe6 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -188,6 +188,8 @@ STR_COLOUR_ORANGE :Oranje STR_COLOUR_BROWN :Bruin STR_COLOUR_GREY :Grys STR_COLOUR_WHITE :Wit +STR_COLOUR_RANDOM :Lukraak +STR_COLOUR_DEFAULT :Default # Units used in OpenTTD STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}mpu @@ -234,6 +236,8 @@ STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Kies kri STR_BUTTON_SORT_BY :{BLACK}Sorteer volgens STR_BUTTON_LOCATION :{BLACK}Ligging STR_BUTTON_RENAME :{BLACK}Hernoem +STR_BUTTON_CATCHMENT :{BLACK}Dekking +STR_TOOLTIP_CATCHMENT :{BLACK}Wissel dekking van die vertoonarea STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Maak venster toe STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Venster titel - sleep om venster te beweeg @@ -262,6 +266,7 @@ STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Deur hie STR_BUTTON_DEFAULT :{BLACK}Gewone STR_BUTTON_CANCEL :{BLACK}Kanselleer STR_BUTTON_OK :{BLACK}OK +STR_WARNING_PASSWORD_SECURITY :{YELLOW}Waarskuwing: bedieneradministrateurs kan moontlik die teks wat hier ingevoer is, lees. # On screen keyboard window STR_OSK_KEYBOARD_LAYOUT :`1234567890-=\qwertyuiop[]asdfghjkl;' zxcvbnm,./ . @@ -335,6 +340,7 @@ STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Vergroot STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Verklein die skerm STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Bou spoorweg spoor STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Bou paaie +STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Bou trempaaie STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Bou skip hawe STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Bou lughawens STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Maak die landargitektuur nutsbalk oop om, land te verhoog/verlaag, boome beplant, ens. @@ -355,6 +361,7 @@ STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Landskap STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Dorp generasie STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Nywerheid generasie STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Pad konstruksie +STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Tremweg konstruksie STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Plant bome. Shift skakel gebou/wys koste beraaming STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Plaas teken STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Plaas voorwerp. Shift skakel tussen bou/aanduiding koste beraming @@ -463,6 +470,7 @@ STR_TOOLBAR_SOUND_MUSIC :Klank/musiek ############ range for message menu starts STR_NEWS_MENU_LAST_MESSAGE_NEWS_REPORT :Laaste boodskap/nuus verslag STR_NEWS_MENU_MESSAGE_HISTORY_MENU :Boodskapgeskiedenis +STR_NEWS_MENU_DELETE_ALL_MESSAGES :Vee alle boodskappe uit ############ range ends here ############ range for about menu starts @@ -471,6 +479,7 @@ STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_TOGGLE_CONSOLE :Skakel terminaal STR_ABOUT_MENU_AI_DEBUG :AI/Spel skript ontfout STR_ABOUT_MENU_SCREENSHOT :Skermskoot +STR_ABOUT_MENU_SHOW_FRAMERATE :Wys raamkoers STR_ABOUT_MENU_ABOUT_OPENTTD :Oor 'OpenTTD' STR_ABOUT_MENU_SPRITE_ALIGNER :"Sprite" rigter STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :skakel beperkte bokse @@ -643,6 +652,7 @@ STR_MUSIC_EFFECTS_VOLUME :{TINY_FONT}{BLA STR_MUSIC_TRACK_NONE :{TINY_FONT}{DKGREEN}-- STR_MUSIC_TRACK_DIGIT :{TINY_FONT}{DKGREEN}{ZEROFILL_NUM} STR_MUSIC_TITLE_NONE :{TINY_FONT}{DKGREEN}------ +STR_MUSIC_TITLE_NOMUSIC :{TINY_FONT}{DKGREEN}Geen musiek beskikbaar STR_MUSIC_TITLE_NAME :{TINY_FONT}{DKGREEN}"{STRING}" STR_MUSIC_TRACK :{TINY_FONT}{BLACK}Liedjie STR_MUSIC_XTITLE :{TINY_FONT}{BLACK}Titel @@ -663,11 +673,14 @@ STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Skakel m STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Vertoon musiek snit keuse venster # Playlist window +STR_PLAYLIST_MUSIC_SELECTION_SETNAME :{WHITE}Musiek Program - '{STRING}' STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}" STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Liedjie Indeks STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Program - '{STRING}' STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Maak skoon +STR_PLAYLIST_CHANGE_SET :{BLACK}Verander stel STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Maak huidige musiek keuse skoon (slegs Bestelling1 of Bestelling2) +STR_PLAYLIST_TOOLTIP_CHANGE_SET :{BLACK}Verander musiekkeuse na 'n ander geïnstalleerde stel STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Klik op 'n liedjie om by huidige musieklys by te sit (slegs Bestelling1 of Bestelling2) STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Klik op musiek lied om te verwyder van huidige program (Slegs Gewoonte1 of Gewoonte2) @@ -803,6 +816,7 @@ STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLAC STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Bestuurder) STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} borg konstruksie van nuwe dorp {TOWN}! +STR_NEWS_NEW_TOWN_UNSPONSORED :{BLACK}{BIG_FONT}'n Nuwe dorp genaamd {TOWN} is gebou! STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLACK}'n Nuwe {STRING} word naby {TOWN} gebou! STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nuwe {STRING} word naby {TOWN} beplant! @@ -851,6 +865,7 @@ STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLAC STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nuwe {STRING} nou beskikbaar! - {ENGINE} +STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Maak die groepvenster oop en fokus op die voertuiggroep STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} aanvaar nie meer {STRING} nie STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} aanvaar nie meer {STRING} of {STRING} nie @@ -871,9 +886,9 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLAC # Extra view window STR_EXTRA_VIEW_PORT_TITLE :{WHITE}Toonvenster {COMMA} -STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Kopie na toonvenster +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Verander toonvenster STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Dupliseer die ligging van die hooftoonvenster na die toonvenster -STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Plak vanaf toonvenster +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Verander hoofaansig STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Plak die lokasie van die gesigspunt na die hoofskerm # Game options window @@ -916,6 +931,11 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :Suid Afrikaanse STR_GAME_OPTIONS_CURRENCY_CUSTOM :Pasmaak... STR_GAME_OPTIONS_CURRENCY_GEL :Georgiaanse Lari (GEL) STR_GAME_OPTIONS_CURRENCY_IRR :Iraanse Rial (IRR) +STR_GAME_OPTIONS_CURRENCY_RUB :Nuwe Russiese Ruble (RUB) +STR_GAME_OPTIONS_CURRENCY_MXN :Mexikaanse peso (MXN) +STR_GAME_OPTIONS_CURRENCY_NTD :Nuwe Taiwan dollar (NTD) +STR_GAME_OPTIONS_CURRENCY_CNY :Chinese Renminbi (CNY) +STR_GAME_OPTIONS_CURRENCY_HKD :Hong Kong Dollar (HKD) ############ end of currency region STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Pad voertuie @@ -978,7 +998,11 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normaal STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dubbel groote STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Quad grootte +STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Skrifgrootte +STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Normaal +STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dubbele grootte +STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Quad grootte STR_GAME_OPTIONS_BASE_GRF :{BLACK}Basis-grafikastel STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Kies die basis-grafikastel stel om te gebruik @@ -1162,6 +1186,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Laat landargite STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Laat Landargitektuur onder geboue en spore sonder om dit te verwyder STR_CONFIG_SETTING_CATCHMENT :Laat meer realisties groote opvangsgebied toe: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Laat verskillende groote opvang gebiede toe vir verskillende tipes stasies en lughawens +STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Maatskappy stasies kan industriëe bedien met aangehegte neutrale stasies: {STRING} +STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Indien gekies, kan industrieë met aangeslote stasies (soos Olie Rigs) ook bedien word deur maatskappybesitte stasies wat in die omgewing gebou word. As dit af is, mag hierdie industrieë slegs deur hul aangeslote stasies bedien word. Enige nabygeleë maatskappystasies sal dit nie kan bedien nie, en die aangehegte stasie sal ook niks anders as die industrie bedien nie STR_CONFIG_SETTING_EXTRADYNAMITE :Laat verwydering van meer stad-besite paaie, bruge, ens toe: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Maak dit makliker om dorps eiendom en infrastruktuur te verwyder STR_CONFIG_SETTING_TRAIN_LENGTH :Maximum lengte van treine: {STRING} @@ -1178,8 +1204,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Die steilte van STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Krans helling vir pad vervoer: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Die steilte van die helling vir 'n pad voertuig. Hoër waardes maak dit moeliker om teen die helling uit te klim -STR_CONFIG_SETTING_FORBID_90_DEG :Verbied triene en skepe om 90 graad draaie te maak: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 grade draaie kom voor wanneer 'n horisontale spoor direk gevolg deur 'n vertikale spoor op die aangrensende teël, dus waardeur die trein 'n 90 grade draai maak deur die teël rand in plaas van die gewone 45 grade vir 'n ander spoor kombinasies. Dit geld ook vir die draai radius van skepe +STR_CONFIG_SETTING_FORBID_90_DEG :Verbied treine om 90° draaie te maak: {STRING} +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 grade draaie kom voor wanneer 'n horisontale spoor direk gevolg deur 'n vertikale spoor op die aangrensende teël, dus waardeur die trein 'n 90 grade draai maak deur die teël rand in plaas van die gewone 45 grade vir 'n ander spoor kombinasies. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Laat toe dat stasies lanks mekaar gebind kan word: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Laat die toevoeging van dele van 'n stasie sonder om direk aan die bestaande dele te raak toe. Ctrl+klik om die nuwe dele te plaas STR_CONFIG_SETTING_INFLATION :Inflasie: {STRING} @@ -1235,7 +1261,7 @@ STR_CONFIG_SETTING_PLANE_SPEED :Vlegtuig spoed STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Stel die relatiewe spoed van vliegtuie, met vergelyking van ander voertuig tipes, om so die bedrag van die inkomste van vliegtuie te verminder. STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_CRASHES :Aantal vliegtuig botsings: {STRING} -STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Stel die kans van 'n vliegtuig ongeluk om te gebeur +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Stel die kans van 'n vliegtuig ongeluk om te gebeur.{}* Groot vliegtuie het altyd risiko om neer te stort wanneer hulle op klein lughawens beland STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Geen STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Verminderd STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normaal @@ -1247,6 +1273,8 @@ STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Verander STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Infrastruktuur onderhoud: {STRING} STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :As dit geaktiveer is sal dit veroorsaak dat infrastruktuur onderhoudskoste verhoog. Die koste groei oor-proporsioneel met die netwerk grootte, wat groter maatskappye meer as kleiner maatskappye benadeel +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Maatskappy beginkleur: {STRING} +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Kies beginkleur vir die maatskappy STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Lughawes verval nooit nie: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Wanner hierdie stelling geaktiveer is, maak dit dat alle lughawens ewig beskikbaar bly, na hul bekendstelling datum @@ -1281,6 +1309,8 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL :Toon stadsbevol STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :Vertoon die bevolking van 'n stad in die naametiket op die kaart STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Dikte van lyn in grafieke: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Wydte van kaartlyne. A dun lyn is meer akkuraat om te lees, maar 'n dikker lyn is makliker om te sien en te onderskei van ander lyne. +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Toon die NewGRF se naam in die bou van voertuie skerm: {STRING} +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Voeg 'n lyn by die venster vir die bou van voertuie wat wys uit watter NewGRF die geselekteerde voertuig kom. STR_CONFIG_SETTING_LANDSCAPE :Landskap: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Die landskap beheer die basies spelopsies vir verskillende vrag en hoe dorpe groei. NewGRF en spelskrips gee meer opsies. @@ -1292,7 +1322,7 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :Tipe terrein: { STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Slegs TerraGenesis) Bergagtigheid van die land STR_CONFIG_SETTING_INDUSTRY_DENSITY :Nywerheidsdigtheid: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Kies hoeveel nywerhede geskep gaan word en hoeveel gedurende die spel te handhaaf -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimum afstand vanaf rand vir olieraffinaderye: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksimum afstand vanaf rand vir olie industrieë: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Olieraffinaderye word net naby die kaart kant gebou, dit is, teen die kus vir eiland kaarte STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Sneeu lyn hoogte: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Beheer die hoogte van die sneeuvlak. Die sneeuvlak bepaal ook hoeveel nywerhede geskep word en hoe vinnig dorpe groei. @@ -1331,6 +1361,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Kleur van die t STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :Groen STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Donkergroen STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Violet +STR_CONFIG_SETTING_SCROLLMODE_RMB :Skuif kaart met RMB STR_CONFIG_SETTING_SMOOTH_SCROLLING :Maak kykpoort beweegings glad: {STRING} STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Beheer hoe die hoofvertoonvenster skuif na 'n spesifieke posisie - as dit geaktiveer is, dan skuif die venster glad na die posisie toe, andersins skuif die venster direk na die posisie toe. STR_CONFIG_SETTING_MEASURE_TOOLTIP :Toon 'n meting wanneer jy verskeie bou-gereedskap gebruik: {STRING} @@ -1362,6 +1393,7 @@ STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND :Command-klik STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_CONTROL :Ctrl-klik STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_OFF :Af +STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE :Maak venster toe met regter-klik: {STRING} STR_CONFIG_SETTING_AUTOSAVE :Outostoor: {STRING} STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT :Tyd tussen outomatiese spelstore @@ -1449,6 +1481,8 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Laat AI in mult STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Laat AI Rekenaaar spelers by 'n multi-speler spel toe STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes voor die skripte gestaak word: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Die maksimum hoeveelheid berekeningstappe wat 'n skrip kan vat in een beurt +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Maksimum geheueverbruik per skript: {STRING} +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Hoeveel geheue 'n enkele skrif kan verbruik voordat dit met geweld beëindig word. Dit kan moontlik vergroot word vir groot kaarte. STR_CONFIG_SETTING_SERVINT_ISPERCENT :Diens pouse is in persente: {STRING} STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Kies of voertuie gediens word gebasseer op tydsduur vanaf vorige diens of as die voertuig se betroubaarheid met 'n sekere persentasie geval het van die maksimum @@ -1507,10 +1541,16 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :Vol STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :Gekleurde nuus verskyn in: {STRING} STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :In watter jaar begin koerante in kleur vertoon. Voor dit is hulle swart en wit. STR_CONFIG_SETTING_STARTING_YEAR :Jaar om te begin: {STRING} +STR_CONFIG_SETTING_ENDING_YEAR :Telling jaareinde: {STRING} +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Die jaar wat die speletjie eindig vir telling doeleindes. Aan die einde van hierdie jaar word die maatskappy se telling aangeteken en die skerm met 'n hoogste telling word vertoon, maar die spelers kan daarna speel.{} As dit voor die beginjaar is, word die skerm met 'n hoogste telling nooit vertoon nie. +STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} +STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nooit STR_CONFIG_SETTING_SMOOTH_ECONOMY :Aktiveer geleike ekonomie (meer, kleiner veranderings): {STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :As dit geaktiveer is sal nywerheidsvervaarding meer gereeld verander met kleiner veranderinge elke keer. Hierdie stelling het gewoonlik geen effek met nywerhede van NewGRFs nie. STR_CONFIG_SETTING_ALLOW_SHARES :Laat die koop van aandeele van ander maatskappye toe: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :As dit geaktiveer is, kan aandele in maatskappye gekoop en verkoop word. Aandele is net in maatskappye beskikbaar na 'n sekere aantal jaar. +STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Minimum maatskappyouderdom om aandele te verhandel: {STRING} +STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES_HELPTEXT :Stel die minimum ouderdom van 'n maatskappy in vir ander om aandele by hulle te kan koop en verkoop. STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Persentasie van wins om te betaal in voerder systeem: {STRING} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Persentasie wins wat gedeel word met die tussengangerstasies in oordragstelsels vir beter beheer oor die wins STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Wanneer die muis gesleep word, plaas 'n sein elke: {STRING} @@ -1551,6 +1591,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Aktiveering van STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Verbode STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Toegelaat STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Toegelaat, eie dorp uitleg +STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Stad-vragproduksie: {STRING} +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hoeveel vrag word deur huise in dorpe geproduseer, relatief tot die algemene bevolking van die stad.{} Kwadratiese groei: 'n Dorp wat twee keer so groot is, genereer vier keer soveel passasiers.{} Lineêre groei: 'n Stad twee keer so groot, genereer twee keer soveel passasiers. +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kwadraties (oorspronklik) +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineêre STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Binne speletjie plasing van bome: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Beheer die ewekansige voorkoms van bome tydens die spel. Dit kan 'n invloed op nywerhede hê wat staatmaak op die groei van bome, byvoorbeeld hout meulens @@ -1791,6 +1835,7 @@ STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Verander STR_CHEAT_SETUP_PROD :{LTBLUE}Aktiveer modifisering van produksie waardes: {ORANGE}{STRING} # Livery window +STR_LIVERY_CAPTION :{WHITE}{COMPANY} - Kleur Skema STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Toon algemene kleurskemas STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Wys trein kleur skemas @@ -2050,6 +2095,7 @@ STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Loskoppe STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Verskaffer is beskerm. Voer wagwoord in STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Maatskappy is beskerm. Voer wagwoord in +STR_NETWORK_COMPANY_LIST_CLIENT_LIST_CAPTION :{WHITE}Kliëntelys # Network company list added strings STR_NETWORK_COMPANY_LIST_CLIENT_LIST :Klient Lys @@ -2098,7 +2144,7 @@ STR_NETWORK_CHAT_ALL :[Almal] {STRING STR_NETWORK_CHAT_OSKTITLE :{BLACK}Tik boodskap vir klets # Network messages -STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Geen netwerk ontwerp gevind of voldoen sonder ENABLE_NETWORK +STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Geen netwerk toestelle gevind STR_NETWORK_ERROR_NOSERVER :{WHITE}Kan nie enige netwerk speletjies vind nie STR_NETWORK_ERROR_NOCONNECTION :{WHITE}Die verskaffer het nie die versoek geantwoord nie STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Kan nie konnekteer te danke aan newgrf mispas nie @@ -2114,6 +2160,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Verkeerd STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Die verskaffer is vol STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Jy is verban op hierdie server STR_NETWORK_ERROR_KICKED :{WHITE}Jy is van die spel geskop +STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Rede: {STRING} STR_NETWORK_ERROR_CHEATER :{WHITE}Kullery word nie toegelaat op hierdie bediener STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Jy het te veel opdragte na die bediener gestuur STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE} Jy het te lank gevat om die wagwoord in te sleutel @@ -2173,6 +2220,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} he STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Jy het {1:STRING} {2:CURRENCY_LONG} gegee STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Die verskaffer het die sessie toegemaak STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Die verskaffer is besig om te weerbegin...{}Wag asb... +STR_NETWORK_MESSAGE_KICKED :*** {STRING} is geskop. Rede: ({STRING}) # Content downloading window STR_CONTENT_TITLE :{WHITE}Laai Inhoud af @@ -2265,6 +2313,7 @@ STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Vragvers STR_LINKGRAPH_LEGEND_ALL :{BLACK}Almal STR_LINKGRAPH_LEGEND_NONE :{BLACK}Geen STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Kies maatskappye om te ws +STR_LINKGRAPH_LEGEND_COMPANY_TOOLTIP :{BLACK}{STRING}{}{COMPANY} # Linkgraph legend window and linkgraph legend in smallmap STR_LINKGRAPH_LEGEND_UNUSED :{TINY_FONT}{BLACK}ongebruik @@ -2349,9 +2398,9 @@ STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Kombinas STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Pad aanwyser (robot){}Laat meer as een trein per blok toe solank die trein 'n bestemming veilig kan bereik. Gewone pad aanwysers word geïgnoreer as 'n trein in die teenoorgestelde rigting ry STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Een-rigting pad aanwyser (robot){}Laat meer as een trein per blok toe solank die trein 'n bestemming veilig kan bereik. 'n Een-rigting pad aanwysers laat verkeer slegs in een rigting toe STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Verander Sinjaal{}Klik op 'n bestaande sinjaal om dit na die verkose tipe te verander, Ctrl+klik om na die bestaande tipe te verander. Shift+klik vir kwotasie -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Sein sleep digtheid -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Verminder sein sleep digtheid -STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Verhoog sein sleep digtheid +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Sein sleep afstand +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Verminder sein sleep afstand +STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Verhoog sein sleep afstand # Bridge selection window STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Kies Spoor Brug @@ -2389,7 +2438,11 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Bou pad STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Bou tonnel. Shift kies tussen bou/kwotasie STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Skakel bou/verwydering van pad konstruksie STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Skakel bou/verwyder vir tremweg konstruksie +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Skakel om / opgradeer die tipe pad. Shift wissel tussen gebou / toon kosteberaming +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Die tipe tram omskakel / opgradeer. Shift wissel tussen gebou/toon kosteberaming +STR_ROAD_NAME_ROAD :Pad +STR_ROAD_NAME_TRAM :Tremweg # Road depot construction window STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Pad Depot Oriëntering @@ -2573,8 +2626,12 @@ STR_LAND_AREA_INFORMATION_AIRPORTTILE_NAME :{BLACK}Lughawe STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NuweGRF: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}Vrag aangeneem: {LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) +STR_LANG_AREA_INFORMATION_RAIL_TYPE :{BLACK}Spoor tipe: {LTBLUE}{STRING} +STR_LANG_AREA_INFORMATION_ROAD_TYPE :{BLACK}Padtipe: {LTBLUE}{STRING} +STR_LANG_AREA_INFORMATION_TRAM_TYPE :{BLACK}Tremtipe: {LTBLUE}{STRING} STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Spoorlyn spoed limiet: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Pad spoedgrens: {LTBLUE}{VELOCITY} +STR_LANG_AREA_INFORMATION_TRAM_SPEED_LIMIT :{BLACK}Trem spoedgrens: {LTBLUE}{VELOCITY} # Description of land area of different tiles STR_LAI_CLEAR_DESCRIPTION_ROCKS :Rotse @@ -2674,9 +2731,44 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2019 Die OpenTTD span # Framerate display window +STR_FRAMERATE_CAPTION :{WHITE}Raamkoers +STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x) +STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Simulasietempo: {STRING} +STR_FRAMERATE_RATE_BLITTER :{BLACK}Grafiekraamkoers: {STRING} +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Aantal videorame per sekonde gelewer. +STR_FRAMERATE_SPEED_FACTOR :{BLACK}Huidige spel spoed faktor: {DECIMAL}x +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Hoe vinnig die spel tans werk, in vergelyking met die verwagte snelheid teen normale simulasietempo. +STR_FRAMERATE_CURRENT :{WHITE}Huidig +STR_FRAMERATE_AVERAGE :{WHITE}Gemiddeld +STR_FRAMERATE_MEMORYUSE :{WHITE}Geheue +STR_FRAMERATE_DATA_POINTS :{BLACK}Data gebaseer op metings van {COMMA} +STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} ms +STR_FRAMERATE_FPS_GOOD :{LTBLUE}{DECIMAL} rame +STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} rame +STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL} rame +STR_FRAMERATE_BYTES_GOOD :{LTBLUE}{BYTES} +STR_FRAMERATE_BYTES_BAD :{RED}{BYTES} +STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} ms +STR_FRAMERATE_GRAPH_SECONDS :{TINY_FONT}{COMMA} s ############ Leave those lines in this order!! +STR_FRAMERATE_GAMELOOP :{BLACK}Speletjie lus totaal: +STR_FRAMERATE_GL_ECONOMY :{BLACK} Vraghantering +STR_FRAMERATE_GL_LINKGRAPH :{BLACK} Skakel grafiekvertraging +STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} Wêreld toonvensters: +STR_FRAMERATE_VIDEO :{BLACK}Video-afvoer: +STR_FRAMERATE_SOUND :{BLACK}Klankvermenging: +STR_FRAMERATE_ALLSCRIPTS :{BLACK} GS/AI totaal: +STR_FRAMERATE_GAMESCRIPT :{BLACK} Speletjieskrif +STR_FRAMERATE_AI :{BLACK} AI {NUM} {STRING} ############ End of leave-in-this-order ############ Leave those lines in this order!! +STR_FRAMETIME_CAPTION_GAMELOOP :Speletjie lus +STR_FRAMETIME_CAPTION_GL_ECONOMY :Vraghantering +STR_FRAMETIME_CAPTION_VIDEO :Video-uitset +STR_FRAMETIME_CAPTION_SOUND :Klankvermenging +STR_FRAMETIME_CAPTION_ALLSCRIPTS :GS/AI skrip totaal +STR_FRAMETIME_CAPTION_GAMESCRIPT :Speletjie skrip +STR_FRAMETIME_CAPTION_AI :AI {NUM} {STRING} ############ End of leave-in-this-order @@ -2702,6 +2794,9 @@ STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Spel Bes STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Geen inligting beskikbaar STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} +STR_SAVELOAD_FILTER_TITLE :{BLACK}Filter string: +STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Oorskryf lêer +STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Is u seker dat u die bestaande lêer wil oorskryf? STR_SAVELOAD_OSKTITLE :{BLACK}Tik 'n naam in vir die stoor-speeletjie @@ -2819,7 +2914,10 @@ STR_NEWGRF_SETTINGS_VERSION :{BLACK}Weergawe STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Min. versoenbare weergawe: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Palet: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_PALETTE_DEFAULT :Default (D) +STR_NEWGRF_SETTINGS_PALETTE_DEFAULT_32BPP :Default (D) / 32 bpp STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parameters: {SILVER}{STRING} +STR_NEWGRF_SETTINGS_PARAMETER_NONE :Geen STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}Geen informasie beskikbaar STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}Gelyke lêer nie gevind nie @@ -2964,6 +3062,7 @@ STR_EDIT_SIGN_SIGN_OSKTITLE :{BLACK}Tik 'n n STR_TOWN_DIRECTORY_CAPTION :{WHITE}Dorpe STR_TOWN_DIRECTORY_NONE :{ORANGE}- Geen - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) +STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Stad){BLACK} ({COMMA}) STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Dorpname - klik op 'n naam om skerm daarna te skuif. Ctrl+klik om 'n nuwe venster vir die dorp oop te maak STR_TOWN_POPULATION :{BLACK}Wêreldbevolking: {COMMA} @@ -2971,6 +3070,7 @@ STR_TOWN_POPULATION :{BLACK}Wêreldb STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (City) STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Bevolking: {ORANGE}{COMMA}{BLACK} Huise: {ORANGE}{COMMA} +STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} laas maand: {ORANGE}{COMMA}{BLACK} maks: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Vrag nodig om dorp te laat groei: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} vereis STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} vereis in winter @@ -2995,6 +3095,8 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Hernoem Dorp # Town local authority window STR_LOCAL_AUTHORITY_CAPTION :{WHITE}{TOWN} plaaslike raad +STR_LOCAL_AUTHORITY_ZONE :{BLACK}Zone +STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Toon sone binne die plaaslike owerheidsgrense STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Vervoer maatskappy graderings: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Aksies beskikbaar: @@ -3023,6 +3125,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Koop di # Goal window STR_GOALS_CAPTION :{WHITE}{COMPANY} Doelwitte STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globale Doelwitte +STR_GOALS_SPECTATOR :Globale doelwitte STR_GOALS_GLOBAL_TITLE :{BLACK}Globale doelwitte: STR_GOALS_TEXT :{ORANGE}{STRING} STR_GOALS_NONE :{ORANGE}- Geen - @@ -3071,6 +3174,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klik op # Story book window STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Storieboek STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Globale Storieboek +STR_STORY_BOOK_SPECTATOR :Globale Storieboek STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Bladsy {NUM} STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Kies 'n bladsy om na toe te gaan in hierdie lys @@ -3250,6 +3354,7 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}{COMPANY STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}Spoorstukke: STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}Seine STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}Padstukke: +STR_COMPANY_INFRASTRUCTURE_VIEW_TRAM_SECT :{GOLD}Trem stukke: STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}Waterteëls: STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}Kanale STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Stasies: @@ -3260,8 +3365,17 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}{CURRENC # Industry directory STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Nywerhede STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Geen - +STR_INDUSTRY_DIRECTORY_ITEM_INFO :{BLACK}{CARGO_LONG}{STRING}{YELLOW} ({COMMA}% vervoer){BLACK} STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} +STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUSTRY} {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PROD2 :{ORANGE}{INDUSTRY} {STRING}, {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PROD3 :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} en {NUM} meer... STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Nywerheidsname - klik op 'n naam om skerm na nywerheid te skuif. Ctrl+klik maak 'n nuwe venster vir die nywerheid oop +STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}Aanvaarde vrag: {SILVER}{STRING} +STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}Vervaardigde vrag: {SILVER}{STRING} +STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :Alle vragtipes +STR_INDUSTRY_DIRECTORY_FILTER_NONE :Geen # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} @@ -3271,7 +3385,13 @@ STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Skuif sk STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Produksie vlak: {YELLOW}{COMMA}% STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Die nywerheid het aangekondig dat dit binnekort gaan sluit! +STR_INDUSTRY_VIEW_REQUIRES_N_CARGO :{BLACK}Benodig: {YELLOW}{STRING}{STRING} +STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Produseer: {YELLOW}{STRING}{STRING} +STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING} +STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Benodig: +STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING} +STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} wagtend{STRING} STR_CONFIG_GAME_PRODUCTION :{WHITE}Verander produksie (veelvoude van 8, tot en met 2040) STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Verander produksie vlakke (persentasie, tot 800%) @@ -3321,6 +3441,7 @@ STR_GROUP_DEFAULT_ROAD_VEHICLES :Ongegroepeerde STR_GROUP_DEFAULT_SHIPS :Ongegroepeerde skepe STR_GROUP_DEFAULT_AIRCRAFTS :Ongegroepeerde vliegtuig +STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Groepe - klik op 'n groep om alle voertuie in hierdie groep te lys. Sleep en los om te rangskik volgens hiërargie. STR_GROUP_CREATE_TOOLTIP :{BLACK}Klik om groep te skep @@ -3336,6 +3457,10 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Verwyder alle v STR_GROUP_RENAME_CAPTION :{BLACK}Hernoem 'n groep +STR_GROUP_PROFIT_THIS_YEAR :Wins hierdie jaar: +STR_GROUP_PROFIT_LAST_YEAR :Wins verlede jaar: +STR_GROUP_OCCUPANCY :Huidige verbruik: +STR_GROUP_OCCUPANCY_VALUE :{NUM}% # Build vehicle window STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Nuwe treine @@ -3344,9 +3469,11 @@ STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Nuwe monospoor STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Nuwe Maglev Voertuie STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Nuwe Pad Voertuie +STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :Nuwe Trem Voertuie ############ range for vehicle availability starts STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Spoorweg Voertuie +STR_BUY_VEHICLE_ROAD_VEHICLE_ALL_CAPTION :Nuwe Padvoertuie STR_BUY_VEHICLE_SHIP_CAPTION :Nuwe Skepe STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Nuwe Vliegtuig ############ range for vehicle availability ends @@ -3362,15 +3489,19 @@ STR_PURCHASE_INFO_REFITTABLE :(herboubaar) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Ontwerp: {GOLD}{NUM}{BLACK} Leeftyd: {GOLD}{COMMA} jaar STR_PURCHASE_INFO_RELIABILITY :{BLACK}Maks. betroubaarheid: {GOLD}{COMMA}% STR_PURCHASE_INFO_COST :{BLACK}Kos: {GOLD}{CURRENCY_LONG} +STR_PURCHASE_INFO_COST_REFIT :{BLACK}Koste: {GOLD}{CURRENCY_LONG}{BLACK} (Herbou Koste: {GOLD}{CURRENCY_LONG}{BLACK}) STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Massa: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) STR_PURCHASE_INFO_COST_SPEED :{BLACK}Kos: {GOLD}{CURRENCY_LONG}{BLACK} Spoed: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_COST_REFIT_SPEED :{BLACK}Koste: {GOLD}{CURRENCY_LONG}{BLACK} (Herbou Koste: {GOLD}{CURRENCY_LONG}{BLACK}) Spoed: {GOLD}{VELOCITY} STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Kapasiteit: {GOLD}{CARGO_LONG}, {CARGO_LONG} STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Self Krag Waens: {GOLD}+{POWER}{BLACK} Gewig: {GOLD}+{WEIGHT_SHORT} STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Herboubaar na: {GOLD}{STRING} STR_PURCHASE_INFO_ALL_TYPES :Alle vrag tipes +STR_PURCHASE_INFO_NONE :Geen STR_PURCHASE_INFO_ALL_BUT :Alles behalwe {CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. Traktiewe Poging: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Afstand: {GOLD}{COMMA} teëls +STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Vliegtuig tipe: {GOLD}{STRING} STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trein kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Pad voertuig kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe @@ -3382,12 +3513,19 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Koop Voe STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Bou skip STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Koop vliegtuig +STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koop en Herbou Voertuig +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koop en herbou voertuig +STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koop en herbou skip +STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koop en Herbou Vliegtuig STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Koop die gekose lokomotief/wa. Shift+klik vir kwotasie STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Koop die gekose voertuig. Shift+klik vir kwotasie STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Koop die gekose skip. Shift+klik vir kwotasie STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Koop die gekose vliegtuig. Shift+klik vir kwotasie +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Koop en monteer die gemerkte voertuig. Shift+Click toon geskatte koste sonder aankoopkoste +STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK} Koop en herbou die gemerkte skip. Shift+Click toon geskatte koste sonder aankoopkoste +STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Koop en monteer die gemerkte vliegtuig. Shift+Click toon geskatte koste sonder aankoopkoste STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Hernoem STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}Hernoem @@ -3499,10 +3637,12 @@ STR_ENGINE_PREVIEW_CAPTION :{WHITE}Boodskap STR_ENGINE_PREVIEW_MESSAGE :{GOLD}Ons het sopas 'n nuwe {STRING} ontwerp, sal jy belangstel om hierdie voertuig eksklusief vir 'n jaar te gebruik. Hierdie word gedoen om te kyk hoe die voertuig doen voordat hy wereld wyd in produksie gesit word? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :spoorweg lokomotief +STR_ENGINE_PREVIEW_ELRAIL_LOCOMOTIVE :geëlektrifiseerde spoorweglokomotief STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :monospoor lokomotief STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :maglev lokomotief STR_ENGINE_PREVIEW_ROAD_VEHICLE :padvoertuig +STR_ENGINE_PREVIEW_TRAM_VEHICLE :tremweg voertuie STR_ENGINE_PREVIEW_AIRCRAFT :vliegtuig STR_ENGINE_PREVIEW_SHIP :skip @@ -3510,6 +3650,10 @@ STR_ENGINE_PREVIEW_SHIP :skip STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Koste: {CURRENCY_LONG} Massa: {WEIGHT_SHORT}{}Spoed: {VELOCITY} Krag: {POWER}{}Loopkoste: {CURRENCY_LONG}/jr{}Kapasitiet: {CARGO_LONG} STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Koste: {CURRENCY_LONG} Gewig: {WEIGHT_SHORT}{}Spoed: {VELOCITY} Krag: {POWER} Maks. Treg Krag: {6:FORCE}{}Lopende Koste: {4:CURRENCY_LONG}/jaar{}Kapasitiet: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAP_RUNCOST :{BLACK}Koste: {CURRENCY_LONG} Maks. Spoed: {VELOCITY}{}Kapasiteit: {CARGO_LONG}{}Lopende Koste: {CURRENCY_LONG}/jaar +STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_CAP_RUNCOST :{BLACK}Koste: {CURRENCY_LONG} Maks. Spoed: {VELOCITY}{}Vliegtuig Tipe: {STRING}{}Kapasiteit: {CARGO_LONG}, {CARGO_LONG}{}Lopende Koste: {CURRENCY_LONG}/jr +STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_RUNCOST :{BLACK}Koste: {CURRENCY_LONG} Maks. Spoed: {VELOCITY}{}Vliegtuig tipe: {STRING}{}Kapasiteit: {CARGO_LONG}{}Lopende koste: {CURRENCY_LONG}/jr +STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_CAP_RUNCOST :{BLACK}Koste: {CURRENCY_LONG} Maks. Spoed: {VELOCITY}{}Vliegtuig tipe: {STRING} Afstand: {COMMA} tiles{}Kapasiteit: {CARGO_LONG}, {CARGO_LONG}{}Lopende Koste: {CURRENCY_LONG}/jr +STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_RANGE_CAP_RUNCOST :{BLACK}Koste: {CURRENCY_LONG} Maks. Spoed: {VELOCITY}{}Vliegtuig tipe: {STRING} Afstand: {COMMA} teëls{}Kapasiteit: {CARGO_LONG}{}Lopende Koste: {CURRENCY_LONG}/jr # Autoreplace window STR_REPLACE_VEHICLES_WHITE :{WHITE}Vervang {STRING} - {STRING} @@ -3539,14 +3683,19 @@ STR_REPLACE_HELP_STOP_BUTTON :{BLACK}Druk om STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}Skakel tussen enjin en wa vervang vensters STR_REPLACE_ENGINES :Enjin STR_REPLACE_WAGONS :Waens +STR_REPLACE_ALL_RAILTYPE :Alle spoorvoertuie +STR_REPLACE_ALL_ROADTYPE :Alle padvoertuie STR_REPLACE_HELP_RAILTYPE :{BLACK}Kies die soort spoor waarvoor lokomotiewe vervang moet word +STR_REPLACE_HELP_ROADTYPE :{BLACK}Kies die padtipe waarvoor u enjins wil vervang STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Toon aan watter enjin die linker gekose enjin mee vervang moet word , indien enige STR_REPLACE_RAIL_VEHICLES :Treine STR_REPLACE_ELRAIL_VEHICLES :Elektriese treine STR_REPLACE_MONORAIL_VEHICLES :Monospoor voertuie STR_REPLACE_MAGLEV_VEHICLES :Maglev Voertuie +STR_REPLACE_ROAD_VEHICLES :Padvoertuie +STR_REPLACE_TRAM_VEHICLES :Tremweg voertuie STR_REPLACE_REMOVE_WAGON :{BLACK}Wa verwydering: {ORANGE}{STRING} STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Maak autovervanging die lengte van 'n trein dieselfde hou deur verwydering waens (deur voor te begin), indien die enjin vervanging die trein langer sal maak @@ -3632,6 +3781,8 @@ STR_VEHICLE_INFO_AGE :{COMMA} ja{P ar STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} ja{P ar re} ({COMMA}) STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Maks. spoed: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}Maks. spoed: {LTBLUE}{VELOCITY} {BLACK}Vliegtuig tipe: {LTBLUE}{STRING} +STR_VEHICLE_INFO_MAX_SPEED_TYPE_RANGE :{BLACK}Maks. spoed: {LTBLUE}{VELOCITY} {BLACK}Vliegtuig tipe: {LTBLUE}{STRING} {BLACK}Afstand: {LTBLUE}{COMMA}teëls STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Gewig: {LTBLUE}{WEIGHT_SHORT} {BLACK}Krag: {LTBLUE}{POWER}{BLACK} Maks. spoed: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Massa: {LTBLUE}{WEIGHT_SHORT} {BLACK}Krag: {LTBLUE}{POWER}{BLACK} Maks. spoed: {LTBLUE}{VELOCITY} {BLACK}Maks. T.E.: {LTBLUE}{FORCE} @@ -3765,6 +3916,7 @@ STR_ORDER_CONDITIONAL_AGE :Ouderdom (jare) STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Benodig diens STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Altyd STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Oorblywende leeftyd (jare) +STR_ORDER_CONDITIONAL_MAX_RELIABILITY :Maksimum betroubaarheid STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Hoe om die voertuig data te vergelyk met die gegeewe waarde STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :is gelyk aan @@ -3995,6 +4147,13 @@ STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Kies bel STR_AI_LIST_CANCEL :{BLACK}Kanseleer STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Moenie skrif verander nie +STR_SCREENSHOT_CAPTION :{WHITE}Neem 'n skermkiekie +STR_SCREENSHOT_SCREENSHOT :{BLACK}Normale skermkiekie +STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}Skermkiekie volledig ingezoom +STR_SCREENSHOT_DEFAULTZOOM_SCREENSHOT :{BLACK}Verstek zoomkiekie +STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}Volledige kiekie van die kaart +STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Hoogtekaart-skermkiekie +STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap-skermkiekie # AI Parameters STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters @@ -4268,6 +4427,7 @@ STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}Geen ges STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}Moet eers spoor verwyder STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}Pad is een rigting of geblok STR_ERROR_CROSSING_DISALLOWED_RAIL :{WHITE}Vlak kruisings word nie toegelaat vir die spoor tipe nie +STR_ERROR_CROSSING_DISALLOWED_ROAD :{WHITE}Vlakoorgange nie toegelaat vir hierdie padtipe nie STR_ERROR_CAN_T_BUILD_SIGNALS_HERE :{WHITE}Kan nie seinligte hier bou nie... STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Kan nie spore hier bou nie... STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Kan nie spore hier verwyder nie... @@ -4287,6 +4447,12 @@ STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}Kan nie STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Kan nie tremweg van hier af verwyder nie... STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... daar is geen pad nie STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... daar is geen tremweg nie +STR_ERROR_CAN_T_CONVERT_ROAD :{WHITE}kan nie padtipe hier verander nie... +STR_ERROR_CAN_T_CONVERT_TRAMWAY :{WHITE}Kan nie tremtipe hier omskakel nie ... +STR_ERROR_NO_SUITABLE_ROAD :{WHITE}Geen geskikte pad +STR_ERROR_NO_SUITABLE_TRAMWAY :{WHITE}Geen geskikte tremweg nie +STR_ERROR_INCOMPATIBLE_ROAD :{WHITE}... onverenigbare pad +STR_ERROR_INCOMPATIBLE_TRAMWAY :{WHITE}... onversoenbare tremweg # Waterway construction errors STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}Kan nie kanaale hier bou nie... @@ -4339,6 +4505,7 @@ STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Kan nie STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Kan nie groep uitvee nie... STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Kan nie groep hernoem nie... STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Kan nie die huidige groep instel nie +STR_ERROR_GROUP_CAN_T_SET_PARENT_RECURSION :{WHITE}... lusse in die groephiërargie word nie toegelaat nie STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Kan nie alle voertuie van groep verwyder nie... STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Kan nie die voertuig tot hierdie groep voeg nie... STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Kan nie gedeelde voertuie by groep voeg nie... @@ -4449,6 +4616,8 @@ STR_BASESOUNDS_DOS_DESCRIPTION :Oorspronklike T STR_BASESOUNDS_WIN_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe Windows uitgawe klanke. STR_BASESOUNDS_NONE_DESCRIPTION :'n Klank stel sonder enige klanke. STR_BASEMUSIC_WIN_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe Windows uitgawe musiek. +STR_BASEMUSIC_DOS_DESCRIPTION :Oorspronklike Transport Tycoon Deluxe DOS-uitgawe musiek. +STR_BASEMUSIC_TTO_DESCRIPTION :Oorspronklike Transport Tycoon (Original/World Editor) musiek van die DOS-uitgawe. STR_BASEMUSIC_NONE_DESCRIPTION :'n Musiek stel sonder enige musiek. ##id 0x2000 diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 61a251897b..2fece1d86e 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -672,6 +672,7 @@ STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}开启/ STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}打开音乐选单窗口 # Playlist window +STR_PLAYLIST_MUSIC_SELECTION_SETNAME :{WHITE}音乐列表 - '{STRING}' STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}" STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}全部音轨列表 STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}当前选用'{STRING}'列表 @@ -863,6 +864,7 @@ STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLAC STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}新 {STRING} 上市了! - {ENGINE} +STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}打开该运输工具所属的组 STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO :{WHITE}{STATION} 将不再接受 {STRING} STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_OR_CARGO :{WHITE}{STATION} 将不再接受 {STRING} 和 {STRING} @@ -883,10 +885,10 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION :{BIG_FONT}{BLAC # Extra view window STR_EXTRA_VIEW_PORT_TITLE :{WHITE}视点 {COMMA} -STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}复制到视点 +STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}将主视角复制到视点 STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}将额外视点移动到屏幕中心的位置 -STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}移动到视点 -STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}将屏幕中心移动到额外视点的位置 +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}移动主视角到该视点 +STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}将主视角移动到额外视点的位置 # Game options window STR_GAME_OPTIONS_CAPTION :{WHITE}游戏选项 @@ -932,6 +934,7 @@ STR_GAME_OPTIONS_CURRENCY_RUB :新俄罗斯卢 STR_GAME_OPTIONS_CURRENCY_MXN :墨西哥比索 (MXN) STR_GAME_OPTIONS_CURRENCY_NTD :新台币 (NTD) STR_GAME_OPTIONS_CURRENCY_CNY :中国人民币 (CNY) +STR_GAME_OPTIONS_CURRENCY_HKD :港币 (HKD) ############ end of currency region STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}汽车行驶 @@ -994,8 +997,10 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :正常大小 STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :两倍大小 STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :四倍大小 +STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}字体大小 STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}选择此字体大小 +STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :正常 STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :两倍大小 STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :四倍大小 @@ -1181,6 +1186,7 @@ STR_CONFIG_SETTING_AUTOSLOPE :允许在建筑 STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :允许在建筑和轨道下方改变地形而不需要拆除他们 STR_CONFIG_SETTING_CATCHMENT :允许更真实的客源范围:{STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :启用时不同类型的车站和机场有不同的客源范围 +STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :公司私有车站可以服务自带车站的工业设施:{STRING} STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :启用后,自带车站的工业设施(如钻井平台)也可以被临近的公司私有车站服务。禁用后,这些工业设施只能被它们自带的车站服务。任何临近的公司车站将不能服务它们,工业设施自有车站也不会提供除本工业设施的产品以外的其他产品 STR_CONFIG_SETTING_EXTRADYNAMITE :允许拆除更多的由城镇所有的公路、桥梁、隧道等:{STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :启用时更容易拆除城市自有的设施和建筑 @@ -1198,7 +1204,7 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :每一格斜坡 STR_CONFIG_SETTING_PERCENTAGE :{COMMA}% STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :斜坡对汽车速度影响率: {STRING} STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :每一格斜坡对汽车速度的影响率,数值越大,汽车越难爬上斜坡 -STR_CONFIG_SETTING_FORBID_90_DEG :禁止列车和轮船 90 度转弯:{STRING} +STR_CONFIG_SETTING_FORBID_90_DEG :禁止列车 90 度转弯:{STRING} STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :当水平方向轨道与垂直方向轨道交叉时,没有采用45度的轨道组合连接,而是采用轨道90度直接连接时,列车通过时需要90度转弯,当本设置”打开“时,将禁止火车90度转弯。 STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :允许非毗邻站台合并:{STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :“打开”时允许为已经存在的车站添加不相邻的站台,建造新的部分时需要按住Ctrl键 @@ -1255,8 +1261,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :飞机速度因 STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :设置飞机与其它车辆类型的相对速率,使飞机运输收入减少 STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_CRASHES :空难: {STRING} -STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :设置空难发生的概率 -STR_CONFIG_SETTING_PLANE_CRASHES_NONE :不出现 +STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :设置随机空难发生的概率。{}* 无论其值如何,大型飞机降落小机场时总有可能坠毁。 +STR_CONFIG_SETTING_PLANE_CRASHES_NONE :不出现* STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :较少出现 STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :正常 STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :允许在城镇所属的道路上建通过式车站: {STRING} @@ -1303,6 +1309,8 @@ STR_CONFIG_SETTING_POPULATION_IN_LABEL :在城镇名称 STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT :在地图城镇名称标签上显示人口数量 STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :图表曲线宽度: {STRING} STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :图表中曲线的宽度,细线清晰易读,粗线容易分辨颜色 +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :在建造运输工具窗口中显示 NewGRF 的名字:{STRING} +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :在建造运输工具窗口中添加一行,显示选中运输工具来自的 NewGRF。 STR_CONFIG_SETTING_LANDSCAPE :景观: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :此设置决定基本的游戏场景、有什么货物可供运输,以及城镇发展的所需条件。然而,NewGRF 及游戏脚本可以比此设置更加细致地设置游戏场景 @@ -1314,8 +1322,8 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :地貌类型: { STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(仅限生成地图时) 多丘陵地形 STR_CONFIG_SETTING_INDUSTRY_DENSITY :工业布局: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :设置地图生成过程中,工业数量及一、二级工业比例。 -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :炼油厂距地图边缘的最大距离:{STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :炼油厂只能在地图边缘建设或者海岛海岸。 +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :石油工业距地图边缘的最大距离:{STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :限制炼油厂和油井到地图边缘或海岛海岸的最大距离。对于大于 256 格的地图,该值将按比例放大。 STR_CONFIG_SETTING_SNOWLINE_HEIGHT :雪线高度:{STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :控制在寒带气候中雪线高度.大雪会影响工业和城镇发展需求. STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :地面粗糙度 (仅限生成地图时):{STRING} @@ -1353,6 +1361,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :设置缩略地 STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :绿色 STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :深绿色 STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :紫色 +STR_CONFIG_SETTING_SCROLLMODE :视点滚动方式:{STRING} STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :滚动地图的行为 STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :鼠标右键移动视角,鼠标指针不跟随移动 STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :鼠标右键移动地图,鼠标指针不跟随移动 @@ -1539,10 +1548,16 @@ STR_CONFIG_SETTING_NEWS_MESSAGES_FULL :完全 STR_CONFIG_SETTING_COLOURED_NEWS_YEAR :彩色新闻出现在 {STRING} 年以后 STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :从这一年开始,报纸采用彩色印刷,在此之前,报纸是采用黑白单色印刷的 STR_CONFIG_SETTING_STARTING_YEAR :开始年份:{STRING} +STR_CONFIG_SETTING_ENDING_YEAR :结束计分年份:{STRING} +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :游戏结束计分的年份。在这一年的年底,公司的分数将被记录,并展示高分榜;在此之后玩家仍可继续游戏。{}如果该年份早于游戏开始年份,则高分榜将不会展示。 +STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} +STR_CONFIG_SETTING_ENDING_YEAR_ZERO :从不 STR_CONFIG_SETTING_SMOOTH_ECONOMY :启用平滑经济模式 (更多小的经济变化):{STRING} STR_CONFIG_SETTING_SMOOTH_ECONOMY_HELPTEXT :“打开”时,工业产量变化频繁而幅度小,如果工业是由NewGRF控制的,本选项不起作用 STR_CONFIG_SETTING_ALLOW_SHARES :允许购买其他公司的股份:{STRING} -STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :“打开”时,允许买卖其它公司股份,但必须持有达到一定年限 +STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :“打开”时,允许买卖其它公司股份。被入股公司必须经营一定年限 +STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :公司可发售股份的最小已存续年份数:{STRING} +STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES_HELPTEXT :设置公司可发售股份的最小已存续年份数。 STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :转运系统中支付的利润百分比 {STRING} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :设定在转运系统中支付给前一环节的收入百分比, 从而对收入有更多的控制权 STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :当拖动时,放置信号灯每隔:{STRING} @@ -1584,6 +1599,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :禁止 STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :允许 STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :允许,自定义城镇布局 STR_CONFIG_SETTING_TOWN_CARGOGENMODE :城镇货物生成:{STRING} +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :城镇客货产出与人口的关系。{}平方增长:两倍大小的城镇生产四倍的旅客。{}线性增长:两倍大小的城镇生产两倍的旅客。 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :四倍(原版) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :线性 @@ -1745,7 +1761,7 @@ STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... 禁 STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... 禁用基础意义设置 '{STRING}': 未找到 STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... 禁用基础音乐设置 '{STRING}': 未找到 STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}内存溢出 -STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}无法编配{BYTES}作为sprite快取。sprite快取的大小已降至{BYTES}。OpenTTD的效能将受到影晌。请尝试停用32bpp图形及/或减少放大倍数,以减低內存要求 +STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}无法分配 {BYTES} 的 Sprite 缓存。Sprite 缓存的大小已降至 {BYTES}。OpenTTD 的性能将受到影响。请尝试停用 32bpp 图形及/或减少放大倍数,以降低内存需求 # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -1845,7 +1861,7 @@ STR_LIVERY_ELECTRIC :电力机车 STR_LIVERY_MONORAIL :单轨机车 STR_LIVERY_MAGLEV :磁悬浮机车 STR_LIVERY_DMU :DMU 机车 -STR_LIVERY_EMU :EMU 机车 +STR_LIVERY_EMU :电力动车组 STR_LIVERY_PASSENGER_WAGON_STEAM :客运机车(蒸汽) STR_LIVERY_PASSENGER_WAGON_DIESEL :客运机车(内燃机) STR_LIVERY_PASSENGER_WAGON_ELECTRIC :客运机车(电力) @@ -2136,7 +2152,7 @@ STR_NETWORK_CHAT_ALL :[全体] {STRIN STR_NETWORK_CHAT_OSKTITLE :{BLACK}请输入联机聊天内容 # Network messages -STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}没有网络设备或者编译时未使用 ENABLE_NETWORK 参数 +STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}未找到网络设备 STR_NETWORK_ERROR_NOSERVER :{WHITE}未找到任何联机游戏 STR_NETWORK_ERROR_NOCONNECTION :{WHITE}服务器没有响应 STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}因为 NewGRF 不匹配而无法连接 @@ -2152,6 +2168,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}密码 STR_NETWORK_ERROR_SERVER_FULL :{WHITE}服务器已经满员 STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}您的IP已被该服务器封禁(ban) STR_NETWORK_ERROR_KICKED :{WHITE}您已被踢出服务器 +STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}原因:{STRING} STR_NETWORK_ERROR_CHEATER :{WHITE}此服务器不允许作弊 STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}您向服务器发送操作指令过于频繁 STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}输入密码超时 @@ -2211,6 +2228,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** 您送了 {2:CURRENCY_LONG} 给 {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}服务器关闭了进程 STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}服务器正在重新启动。{}请等待…… +STR_NETWORK_MESSAGE_KICKED :*** {STRING} 被踢出服务器。原因:({STRING}) # Content downloading window STR_CONTENT_TITLE :{WHITE}下载内容 @@ -2617,6 +2635,7 @@ STR_LAND_AREA_INFORMATION_NEWGRF_NAME :{BLACK}NewGRF: STR_LAND_AREA_INFORMATION_CARGO_ACCEPTED :{BLACK}接受货物:{LTBLUE} STR_LAND_AREA_INFORMATION_CARGO_EIGHTS :({COMMA}/8 {STRING}) STR_LANG_AREA_INFORMATION_RAIL_TYPE :{BLACK}铁轨类型: {LTBLUE}{STRING} +STR_LANG_AREA_INFORMATION_ROAD_TYPE :{BLACK}道路类型:{LTBLUE}{STRING} STR_LANG_AREA_INFORMATION_TRAM_TYPE :{BLACK}电车类型:{LTBLUE}{STRING} STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}轨道限速: {LTBLUE}{VELOCITY} STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}道路限速:{LTBLUE}{VELOCITY} @@ -2634,10 +2653,10 @@ STR_LAI_CLEAR_DESCRIPTION_DESERT :沙漠 STR_LAI_RAIL_DESCRIPTION_TRACK :铁路 轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :有通过信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :有入口信号灯的铁路轨道 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :有出口信号灯的铁路 轨道 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :有出口信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :有复合信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :有路径信号灯的铁路轨道 -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :铁路 有单向路径信号灯的轨道 +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :有单向路径信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :有通过信号灯和入口信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :有通过信号灯和出口信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :有通过信号灯和复合信号灯的铁路轨道 @@ -2653,7 +2672,7 @@ STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :有出口信号 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :有复合信号灯和路径信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :有复合信号灯和单向路径信号灯的铁路轨道 STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :有路径信号灯和单向路径信号灯的铁路轨道 -STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :铁路 列车车库 +STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :铁路列车车库 STR_LAI_ROAD_DESCRIPTION_ROAD :公路 STR_LAI_ROAD_DESCRIPTION_ROAD_WITH_STREETLIGHTS :带路灯的公路 @@ -2723,12 +2742,17 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD STR_FRAMERATE_CAPTION :{WHITE}帧率 STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x) STR_FRAMERATE_RATE_GAMELOOP :{BLACK}模拟速率: {STRING} +STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}每秒仿真的游戏时刻数。 STR_FRAMERATE_RATE_BLITTER :{BLACK}帧率:{STRING} STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}每秒渲染更新的图像帧。 STR_FRAMERATE_SPEED_FACTOR :{BLACK}当前游戏速度:{DECIMAL}x STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}当前游戏运行速度,与正常速度之比率 STR_FRAMERATE_CURRENT :{WHITE}当前 +STR_FRAMERATE_AVERAGE :{WHITE}平均 +STR_FRAMERATE_MEMORYUSE :{WHITE}内存 +STR_FRAMERATE_DATA_POINTS :{BLACK}数据基于 {COMMA} 个采样 STR_FRAMERATE_MS_GOOD :{LTBLUE}{DECIMAL} ms +STR_FRAMERATE_MS_WARN :{YELLOW}{DECIMAL} ms STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} ms STR_FRAMERATE_FPS_GOOD :{LTBLUE}{DECIMAL} fps STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} fps @@ -2737,10 +2761,18 @@ STR_FRAMERATE_BYTES_GOOD :{LTBLUE}{BYTES} STR_FRAMERATE_BYTES_WARN :{YELLOW}{BYTES} STR_FRAMERATE_BYTES_BAD :{RED}{BYTES} STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} ms +STR_FRAMERATE_GRAPH_SECONDS :{TINY_FONT}{COMMA} s ############ Leave those lines in this order!! +STR_FRAMERATE_GAMELOOP :{BLACK}游戏周期总计: +STR_FRAMERATE_GL_ECONOMY :{BLACK} 货物处理: +STR_FRAMERATE_GL_TRAINS :{BLACK} 列车耗时: STR_FRAMERATE_GL_ROADVEHS :{BLACK} 道路车辆耗时: STR_FRAMERATE_GL_SHIPS :{BLACK} 船只耗时: STR_FRAMERATE_GL_AIRCRAFT :{BLACK} 飞机耗时: +STR_FRAMERATE_GL_LANDSCAPE :{BLACK} 世界耗时: +STR_FRAMERATE_GL_LINKGRAPH :{BLACK} 货物分配图延时: +STR_FRAMERATE_DRAWING :{BLACK}图形渲染: +STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} 辅助视点: STR_FRAMERATE_VIDEO :{BLACK}视频输出: STR_FRAMERATE_SOUND :{BLACK}混响: STR_FRAMERATE_ALLSCRIPTS :{BLACK} GS/AI 总计: @@ -2748,13 +2780,20 @@ STR_FRAMERATE_GAMESCRIPT :{BLACK} 游 STR_FRAMERATE_AI :{BLACK} AI {NUM} {STRING} ############ End of leave-in-this-order ############ Leave those lines in this order!! +STR_FRAMETIME_CAPTION_GAMELOOP :游戏周期 STR_FRAMETIME_CAPTION_GL_ECONOMY :货物处理 +STR_FRAMETIME_CAPTION_GL_TRAINS :列车耗时 STR_FRAMETIME_CAPTION_GL_ROADVEHS :道路车辆耗时 +STR_FRAMETIME_CAPTION_GL_SHIPS :船只耗时 STR_FRAMETIME_CAPTION_GL_AIRCRAFT :飞机耗时 STR_FRAMETIME_CAPTION_GL_LANDSCAPE :世界耗时 +STR_FRAMETIME_CAPTION_GL_LINKGRAPH :货物分配图延时 STR_FRAMETIME_CAPTION_DRAWING :图形渲染 STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :世界视点渲染 +STR_FRAMETIME_CAPTION_VIDEO :视频输出 STR_FRAMETIME_CAPTION_SOUND :混响 +STR_FRAMETIME_CAPTION_ALLSCRIPTS :GS/AI 脚本总计 +STR_FRAMETIME_CAPTION_GAMESCRIPT :游戏脚本 STR_FRAMETIME_CAPTION_AI :AI {NUM} {STRING} ############ End of leave-in-this-order @@ -2902,7 +2941,9 @@ STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}最低 STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5 码:{SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}调色板: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE_DEFAULT :默认 (D) +STR_NEWGRF_SETTINGS_PALETTE_DEFAULT_32BPP :默认 (D) / 32 bpp STR_NEWGRF_SETTINGS_PALETTE_LEGACY :传统 (W) +STR_NEWGRF_SETTINGS_PALETTE_LEGACY_32BPP :传统 (W) / 32 bpp STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}参数:{SILVER}{STRING} STR_NEWGRF_SETTINGS_PARAMETER_NONE :无 @@ -2985,6 +3026,8 @@ STR_NEWGRF_ERROR_READ_BOUNDS :图像读取时 STR_NEWGRF_ERROR_GRM_FAILED :GRF源文件不可访问 (sprite {3:NUM}) STR_NEWGRF_ERROR_FORCEFULLY_DISABLED :{1:STRING} 被 {STRING} 禁用 STR_NEWGRF_ERROR_INVALID_SPRITE_LAYOUT :错误/未知的sprite输出格式 (sprite {3:NUM}) +STR_NEWGRF_ERROR_LIST_PROPERTY_TOO_LONG :参数列表元素过多(sprite {3:NUM}, 属性 {4:HEX}) +STR_NEWGRF_ERROR_INDPROD_CALLBACK :无效的产品回调函数 (sprite {3:NUM}, "{2:STRING}") # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}注意! @@ -3084,6 +3127,7 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :重命名城镇 # Town local authority window STR_LOCAL_AUTHORITY_CAPTION :{WHITE}{TOWN} 地方政府 STR_LOCAL_AUTHORITY_ZONE :{BLACK}城区 +STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}显示地方政府行政区边界 STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}对运输公司评价: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}可执行的操作: @@ -3341,6 +3385,7 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}{COMPANY STR_COMPANY_INFRASTRUCTURE_VIEW_RAIL_SECT :{GOLD}铁路: STR_COMPANY_INFRASTRUCTURE_VIEW_SIGNALS :{WHITE}信号灯 STR_COMPANY_INFRASTRUCTURE_VIEW_ROAD_SECT :{GOLD}道路: +STR_COMPANY_INFRASTRUCTURE_VIEW_TRAM_SECT :{GOLD}电车设施: STR_COMPANY_INFRASTRUCTURE_VIEW_WATER_SECT :{GOLD}水运: STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}运河 STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}站台: @@ -3351,8 +3396,17 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL :{WHITE}每年{C # Industry directory STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}工业设施 STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- 没有 - +STR_INDUSTRY_DIRECTORY_ITEM_INFO :{BLACK}{CARGO_LONG}{STRING}{YELLOW} ({COMMA}% 已运输){BLACK} STR_INDUSTRY_DIRECTORY_ITEM_NOPROD :{ORANGE}{INDUSTRY} +STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUSTRY} {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PROD2 :{ORANGE}{INDUSTRY} {STRING}, {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PROD3 :{ORANGE}{INDUSTRY} {STRING}, {STRING}, {STRING} +STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUSTRY} {STRING},{STRING},{STRING}以及其余 {NUM} 个…… STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}工业设施{}点击可以将屏幕中心移动到其所在位置. 单击的同时按住Ctrl会在新视点中显示工业位置 +STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}接受的货物:{SILVER}{STRING} +STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}产出的货物:{SILVER}{STRING} +STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :所有货物类型 +STR_INDUSTRY_DIRECTORY_FILTER_NONE :无 # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} @@ -3363,7 +3417,10 @@ STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}生产 STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}此工业已经宣布即刻停业倒闭! STR_INDUSTRY_VIEW_REQUIRES_N_CARGO :{BLACK}需要: {YELLOW}{STRING}{STRING} +STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}产出:{YELLOW}{STRING}{STRING} +STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING} +STR_INDUSTRY_VIEW_REQUIRES :{BLACK}需要: STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING} STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} 等待中{STRING} @@ -3415,11 +3472,13 @@ STR_GROUP_DEFAULT_ROAD_VEHICLES :未分组汽车 STR_GROUP_DEFAULT_SHIPS :未分组船只 STR_GROUP_DEFAULT_AIRCRAFTS :未分组飞机 +STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}组 - 点击一个组别以显示所有隶属此组的车辆。拖曳组别标签以重新排列组别的次序和层级。 STR_GROUP_CREATE_TOOLTIP :{BLACK}创建分组 STR_GROUP_DELETE_TOOLTIP :{BLACK}删除分组 STR_GROUP_RENAME_TOOLTIP :{BLACK}重命名该分组 +STR_GROUP_LIVERY_TOOLTIP :{BLACK}改变所选组的配色方案 STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}点击以停止本组自动更新功能的使用 STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}删除分组 @@ -3446,6 +3505,7 @@ STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :新电车 ############ range for vehicle availability starts STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :新列车 +STR_BUY_VEHICLE_ROAD_VEHICLE_ALL_CAPTION :新汽车 STR_BUY_VEHICLE_SHIP_CAPTION :购买船只 STR_BUY_VEHICLE_AIRCRAFT_CAPTION :购买飞机 ############ range for vehicle availability ends @@ -3462,8 +3522,10 @@ STR_PURCHASE_INFO_REFITTABLE :(可改装) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}设计日期:{GOLD}{NUM}{BLACK} 寿命:{GOLD}{COMMA} 年 STR_PURCHASE_INFO_RELIABILITY :{BLACK}最大可靠性:{GOLD}{COMMA}% STR_PURCHASE_INFO_COST :{BLACK}售价:{GOLD}{CURRENCY_LONG} +STR_PURCHASE_INFO_COST_REFIT :{BLACK}售价: {GOLD}{CURRENCY_LONG}{BLACK} (改装费用: {GOLD}{CURRENCY_LONG}{BLACK}) STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}重量:{GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) STR_PURCHASE_INFO_COST_SPEED :{BLACK}售价:{GOLD}{CURRENCY_LONG}{BLACK} 速度:{GOLD}{VELOCITY} +STR_PURCHASE_INFO_COST_REFIT_SPEED :{BLACK}售价:{GOLD}{CURRENCY_LONG}{BLACK} (改装费用:{GOLD}{CURRENCY_LONG}{BLACK}) 速度:{GOLD}{VELOCITY} STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}运载能力:{GOLD}{CARGO_LONG}, {CARGO_LONG} STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}功率:{GOLD}+{POWER}{BLACK} 重量:{GOLD}+{WEIGHT_SHORT} STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}可改装为:{GOLD}{STRING} @@ -3485,6 +3547,8 @@ STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}购买 STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}购买飞机 STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_BUTTON :{BLACK}购买并改装 +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_BUTTON :{BLACK}购买并改装 +STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}购买并改装船只 STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}购买并改装飞机 STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}购买选定的列车,按住 Shift 键单击可以显示所需资金 @@ -3492,6 +3556,10 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}购买 STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}购买选定的船只,按住 Shift 键单击可以显示所需资金 STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}购买选定的飞机,按住 Shift 键单击可以显示所需资金 +STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}购买并改装选定的列车。按住 Shift 键单击可以显示所需资金 +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}购买并改装选定的汽车。按住 Shift 键单击可以显示所需资金 +STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}购买并改装选定的船只。按住 Shift 键单击可以显示所需资金 +STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :购买并改装选定的飞机,按住 Shift 键单击可以显示所需资金 STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}重命名 STR_BUY_VEHICLE_ROAD_VEHICLE_RENAME_BUTTON :{BLACK}重命名 @@ -3603,10 +3671,12 @@ STR_ENGINE_PREVIEW_CAPTION :{WHITE}来自 STR_ENGINE_PREVIEW_MESSAGE :{GOLD}我们新近设计了一款{STRING}{}您愿意在产品正式上市前试用一年吗? STR_ENGINE_PREVIEW_RAILROAD_LOCOMOTIVE :火车机车 +STR_ENGINE_PREVIEW_ELRAIL_LOCOMOTIVE :电气化铁路机车 STR_ENGINE_PREVIEW_MONORAIL_LOCOMOTIVE :单轨机车 STR_ENGINE_PREVIEW_MAGLEV_LOCOMOTIVE :磁悬浮机车 STR_ENGINE_PREVIEW_ROAD_VEHICLE :汽车 +STR_ENGINE_PREVIEW_TRAM_VEHICLE :电车 STR_ENGINE_PREVIEW_AIRCRAFT :飞机 STR_ENGINE_PREVIEW_SHIP :船只 @@ -3658,6 +3728,8 @@ STR_REPLACE_ELRAIL_VEHICLES :电力机车 STR_REPLACE_MONORAIL_VEHICLES :单轨列车 STR_REPLACE_MAGLEV_VEHICLES :磁悬浮列车 +STR_REPLACE_ROAD_VEHICLES :路面交通工具 +STR_REPLACE_TRAM_VEHICLES :电车 STR_REPLACE_REMOVE_WAGON :{BLACK}清理挂车:{ORANGE}{STRING} STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}当车辆升级可能造成列车变长时{}自动从最前面的挂车去掉若干节以保证列车长度不变 @@ -4109,6 +4181,13 @@ STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}选择 STR_AI_LIST_CANCEL :{BLACK}取消 STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}不修改本 AI +STR_SCREENSHOT_CAPTION :{WHITE}进行截图 +STR_SCREENSHOT_SCREENSHOT :{BLACK}普通截图 +STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}完全放大截图 +STR_SCREENSHOT_DEFAULTZOOM_SCREENSHOT :{BLACK}默认放大倍数截图 +STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}全地图截图 +STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}高度图截图 +STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}小地图截图 # AI Parameters STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} 参数 @@ -4382,6 +4461,7 @@ STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}没有 STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}必须先拆除轨道 STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}这是单行道或这条路被堵死了 STR_ERROR_CROSSING_DISALLOWED_RAIL :{WHITE}该轨道类型不允许建设平交道 +STR_ERROR_CROSSING_DISALLOWED_ROAD :该道路类型不允许建设平交道 STR_ERROR_CAN_T_BUILD_SIGNALS_HERE :{WHITE}不能在这里设置信号灯…… STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}不能在这里铺设轨道…… STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}不能从这里拆除轨道…… @@ -4402,7 +4482,11 @@ STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}无法 STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... 这里没有道路 STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... 这里没有电车轨道 STR_ERROR_CAN_T_CONVERT_ROAD :{WHITE}无法转换道路类型 +STR_ERROR_CAN_T_CONVERT_TRAMWAY :{WHITE}无法转换电车道类型 STR_ERROR_NO_SUITABLE_ROAD :{WHITE}没有合适的道路 +STR_ERROR_NO_SUITABLE_TRAMWAY :{WHITE}没有合适的电车道 +STR_ERROR_INCOMPATIBLE_ROAD :{WHITE}... 不兼容的道路 +STR_ERROR_INCOMPATIBLE_TRAMWAY :{WHITE}... 不兼容的电车道 # Waterway construction errors STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}不能在这里兴建运河…… @@ -4455,6 +4539,7 @@ STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}无法 STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}无法删除分组…… STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}无法重命名分组…… STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}无法移动分组... +STR_ERROR_GROUP_CAN_T_SET_PARENT_RECURSION :{WHITE}... 组从属关系不能出现自环 STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}无法从该组移除所有运输工具 STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}无法添加运输工具到该组…… STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}无法添加共享指令的运输工具到该组…… diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index 4c3570ce23..38dc262c7b 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -2674,9 +2674,11 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-2019 OpenTTD 開發小組 # Framerate display window +STR_FRAMERATE_DATA_POINTS :{BLACK}數據基於 {COMMA} 個採樣 ############ Leave those lines in this order!! ############ End of leave-in-this-order ############ Leave those lines in this order!! +STR_FRAMETIME_CAPTION_ALLSCRIPTS :GS/AI 腳本總計 ############ End of leave-in-this-order @@ -3071,6 +3073,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}點選 # Story book window STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY}的歷史紀錄 STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}全局歷史紀錄 +STR_STORY_BOOK_SPECTATOR :全局歷史紀錄 STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :第{NUM}頁 STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}在下拉式選單中選擇一頁以前往該頁觀看 @@ -3539,6 +3542,7 @@ STR_REPLACE_HELP_STOP_BUTTON :{BLACK}按下 STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}在車頭及車廂替換畫面間切換。 STR_REPLACE_ENGINES :車頭 STR_REPLACE_WAGONS :車廂 +STR_REPLACE_ALL_ROADTYPE :所有公路車輛 STR_REPLACE_HELP_RAILTYPE :{BLACK}選擇您要替換車頭的軌道種類 STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}顯示左方的車頭要替換成哪種車頭 From 47790b09a41429fd7673d152e0c64c33630505ee Mon Sep 17 00:00:00 2001 From: glx Date: Fri, 14 Feb 2020 17:53:24 +0100 Subject: [PATCH 05/13] Codechange: Simplify CheckAPIVersion() --- src/ai/ai_info.cpp | 8 +++----- src/game/game_info.cpp | 7 +++---- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/ai/ai_info.cpp b/src/ai/ai_info.cpp index 6e1ef6cecd..c5280fe5d6 100644 --- a/src/ai/ai_info.cpp +++ b/src/ai/ai_info.cpp @@ -15,6 +15,7 @@ #include "../debug.h" #include "../string_func.h" #include "../rev.h" +#include #include "../safeguards.h" @@ -24,11 +25,8 @@ */ static bool CheckAPIVersion(const char *api_version) { - return strcmp(api_version, "0.7") == 0 || strcmp(api_version, "1.0") == 0 || strcmp(api_version, "1.1") == 0 || - strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0 || strcmp(api_version, "1.7") == 0 || - strcmp(api_version, "1.8") == 0 || strcmp(api_version, "1.9") == 0 || strcmp(api_version, "1.10") == 0 || - strcmp(api_version, "1.11") == 0; + static const std::set versions = { "0.7", "1.0", "1.1", "1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "1.10", "1.11" }; + return versions.find(api_version) != versions.end(); } #if defined(_WIN32) diff --git a/src/game/game_info.cpp b/src/game/game_info.cpp index a039401b32..77725c5e7b 100644 --- a/src/game/game_info.cpp +++ b/src/game/game_info.cpp @@ -13,6 +13,7 @@ #include "game_info.hpp" #include "game_scanner.hpp" #include "../debug.h" +#include #include "../safeguards.h" @@ -22,10 +23,8 @@ */ static bool CheckAPIVersion(const char *api_version) { - return strcmp(api_version, "1.2") == 0 || strcmp(api_version, "1.3") == 0 || strcmp(api_version, "1.4") == 0 || - strcmp(api_version, "1.5") == 0 || strcmp(api_version, "1.6") == 0 || strcmp(api_version, "1.7") == 0 || - strcmp(api_version, "1.8") == 0 || strcmp(api_version, "1.9") == 0 || strcmp(api_version, "1.10") == 0 || - strcmp(api_version, "1.11") == 0; + static const std::set versions = {"1.2", "1.3", "1.4", "1.5", "1.6", "1.7", "1.8", "1.9", "1.10", "1.11"}; + return versions.find(api_version) != versions.end(); } #if defined(_WIN32) From 87909855c885d110907fa0f4e39a81137ed206de Mon Sep 17 00:00:00 2001 From: translators Date: Sat, 15 Feb 2020 19:45:40 +0100 Subject: [PATCH 06/13] Update: Translations from eints italian: 2 changes by AlphaJack korean: 8 changes by telk5093 --- src/lang/italian.txt | 2 ++ src/lang/korean.txt | 16 ++++++++-------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/lang/italian.txt b/src/lang/italian.txt index 13aa90c0dd..84b6646f6c 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -2192,6 +2192,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Password STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Il server è pieno STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Sei stato bandito da questo server STR_NETWORK_ERROR_KICKED :{WHITE}Sei stato espulso dalla partita +STR_NETWORK_ERROR_KICK_MESSAGE :{WHITE}Motivo: {STRING} STR_NETWORK_ERROR_CHEATER :{WHITE}I trucchi non sono ammessi su questo server STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Stavano venendo inviati troppi comandi al server STR_NETWORK_ERROR_TIMEOUT_PASSWORD :{WHITE}Si è impiegato troppo tempo ad inserire la password @@ -2251,6 +2252,7 @@ STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ha STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Hai donato {2:CURRENCY_LONG} a {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Il server ha chiuso la sessione STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Il server si sta riavviando...{}Attendere prego... +STR_NETWORK_MESSAGE_KICKED :*** {STRING} è stato espulso. Motivo: ({STRING}) # Content downloading window STR_CONTENT_TITLE :{WHITE}Download contenuti diff --git a/src/lang/korean.txt b/src/lang/korean.txt index eae3d2cb1b..24396dd98d 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -1973,7 +1973,7 @@ STR_NETWORK_SERVER_LIST_SERVER_VERSION :{SILVER}서버 STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}서버 주소: {WHITE}{STRING} STR_NETWORK_SERVER_LIST_START_DATE :{SILVER}시작 날짜: {WHITE}{DATE_SHORT} STR_NETWORK_SERVER_LIST_CURRENT_DATE :{SILVER}현재 날짜: {WHITE}{DATE_SHORT} -STR_NETWORK_SERVER_LIST_PASSWORD :{SILVER}암호가 걸려있습니다! +STR_NETWORK_SERVER_LIST_PASSWORD :{SILVER}비밀번호가 걸려있습니다! STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}서버 오프라인 STR_NETWORK_SERVER_LIST_SERVER_FULL :{SILVER}서버가 꽉 참 STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}버전 다름 @@ -1998,8 +1998,8 @@ STR_NETWORK_START_SERVER_CAPTION :{WHITE}새 멀 STR_NETWORK_START_SERVER_NEW_GAME_NAME :{BLACK}게임 이름: STR_NETWORK_START_SERVER_NEW_GAME_NAME_TOOLTIP :{BLACK}멀티플레이 게임 선택 메뉴에서 보여질 게임 제목입니다. -STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}암호 설정 -STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}자유로운 접근을 막고 싶을 때 암호를 설정할 수 있습니다 +STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}비밀번호 설정 +STR_NETWORK_START_SERVER_PASSWORD_TOOLTIP :{BLACK}서버에 공개적으로 접근하는 것을 막고 싶을 때 비밀번호를 걸어 보호합니다. STR_NETWORK_START_SERVER_UNADVERTISED :아니요 STR_NETWORK_START_SERVER_ADVERTISED :예 @@ -2129,15 +2129,15 @@ STR_NETWORK_GIVE_MONEY_CAPTION :{WHITE}송금 STR_COMPANY_PASSWORD_CANCEL :{BLACK}입력한 비밀번호는 저장하지 않기 STR_COMPANY_PASSWORD_OK :{BLACK}이 회사에 새 비밀번호 부여 STR_COMPANY_PASSWORD_CAPTION :{WHITE}회사 비밀번호 -STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}회사 비밀번호 기본값 +STR_COMPANY_PASSWORD_MAKE_DEFAULT :{BLACK}회사 비밀번호 기본값으로 설정 STR_COMPANY_PASSWORD_MAKE_DEFAULT_TOOLTIP :{BLACK}이 회사 비밀번호를 새 회사의 비밀번호 기본값으로 사용 # Network company info join/password STR_COMPANY_VIEW_JOIN :{BLACK}참여 STR_COMPANY_VIEW_JOIN_TOOLTIP :{BLACK}이 회사로 참가해서 플레이합니다 -STR_COMPANY_VIEW_PASSWORD :{BLACK}암호 +STR_COMPANY_VIEW_PASSWORD :{BLACK}비밀번호 STR_COMPANY_VIEW_PASSWORD_TOOLTIP :{BLACK}다른 참가자가 이 회사에 참여하여 플레이하지 못 하도록 암호로 보호합니다 -STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}회사 암호 설정 +STR_COMPANY_VIEW_SET_PASSWORD :{BLACK}회사 비밀번호 설정 # Network chat STR_NETWORK_CHAT_SEND :{BLACK}보내기 @@ -2165,7 +2165,7 @@ STR_NETWORK_ERROR_CLIENT_START :{WHITE}접속 STR_NETWORK_ERROR_TIMEOUT :{WHITE}접속자 #{NUM}의 입력 시간이 초과되었습니다 STR_NETWORK_ERROR_SERVER_ERROR :{WHITE}프로토콜 오류가 발생되어 연결이 끊어졌습니다 STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}이 접속자의 게임 버전이 서버의 버전과 일치하지 않습니다 -STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}잘못된 암호입니다 +STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}잘못된 비밀번호입니다 STR_NETWORK_ERROR_SERVER_FULL :{WHITE}서버에 인원이 가득 찼습니다 STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}서버 관리자에 의해 접속이 차단되었습니다 STR_NETWORK_ERROR_KICKED :{WHITE}서버에서 강제로 추방되었습니다 @@ -2188,7 +2188,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_AUTHORIZED :권한 없음 STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :잘못된 패킷 수신 STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :잘못된 버전 STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :이미 사용중인 이름 -STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :잘못된 암호 +STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :잘못된 비밀번호 STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :DoCommand 구문 내의 잘못된 회사 STR_NETWORK_ERROR_CLIENT_KICKED :강제추방 STR_NETWORK_ERROR_CLIENT_CHEATER :치트 사용 시도 From 7f693ce497d949b8f66e00a40f4477681ac71af1 Mon Sep 17 00:00:00 2001 From: LCD 47 Date: Thu, 16 Jan 2020 18:20:21 +0200 Subject: [PATCH 07/13] Fix: [SDL2] support pasting from clipboard on Linux --- src/os/unix/unix.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/os/unix/unix.cpp b/src/os/unix/unix.cpp index dc54badbd1..e4e1d687c2 100644 --- a/src/os/unix/unix.cpp +++ b/src/os/unix/unix.cpp @@ -24,6 +24,10 @@ #include #include +#ifdef WITH_SDL2 +#include +#endif + #ifdef __APPLE__ #include #elif (defined(_POSIX_VERSION) && _POSIX_VERSION >= 200112L) || defined(__GLIBC__) @@ -266,6 +270,19 @@ int CDECL main(int argc, char *argv[]) #ifndef WITH_COCOA bool GetClipboardContents(char *buffer, const char *last) { +#ifdef WITH_SDL2 + if (SDL_HasClipboardText() == SDL_FALSE) { + return false; + } + + char *clip = SDL_GetClipboardText(); + if (clip != NULL) { + strecpy(buffer, clip, last); + SDL_free(clip); + return true; + } +#endif + return false; } #endif From 0c80ae5288a80a012f6c89de569ce8447832fbb3 Mon Sep 17 00:00:00 2001 From: glx Date: Sat, 15 Feb 2020 03:08:29 +0100 Subject: [PATCH 08/13] Fix: Ignore not printable characters when layouting a string --- src/gfx_layout.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gfx_layout.cpp b/src/gfx_layout.cpp index f093a53863..584a712736 100644 --- a/src/gfx_layout.cpp +++ b/src/gfx_layout.cpp @@ -631,6 +631,8 @@ static inline void GetLayouter(Layouter::LineCacheItem &line, const char *&str, } else if (c >= SCC_FIRST_FONT && c <= SCC_LAST_FONT) { state.SetFontSize((FontSize)(c - SCC_FIRST_FONT)); } else { + /* Filter out non printable characters */ + if (!IsPrintable(c)) continue; /* Filter out text direction characters that shouldn't be drawn, and * will not be handled in the fallback non ICU case because they are * mostly needed for RTL languages which need more ICU support. */ From 4552b17691fa7c4f1fdb4ca7652ca48278a68fec Mon Sep 17 00:00:00 2001 From: Quipyowert2 <38995150+Quipyowert2@users.noreply.github.com> Date: Sun, 16 Feb 2020 17:57:22 -0800 Subject: [PATCH 09/13] Codechange: Avoid copying function parameters by using const references --- src/ai/ai_gui.cpp | 2 +- src/company_cmd.cpp | 6 +++--- src/company_func.h | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index a0552628cd..d61cfea0dc 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -589,7 +589,7 @@ struct AISettingsWindow : public Window { } private: - bool IsEditableItem(const ScriptConfigItem config_item) const + bool IsEditableItem(const ScriptConfigItem &config_item) const { return _game_mode == GM_MENU || ((this->slot != OWNER_DEITY) && !Company::IsValidID(this->slot)) || (config_item.flags & SCRIPTCONFIG_INGAME) != 0; } diff --git a/src/company_cmd.cpp b/src/company_cmd.cpp index 6308c14472..835a7c4a8b 100644 --- a/src/company_cmd.cpp +++ b/src/company_cmd.cpp @@ -208,7 +208,7 @@ bool CheckCompanyHasMoney(CommandCost &cost) * @param c Company to pay the bill. * @param cost Money to pay. */ -static void SubtractMoneyFromAnyCompany(Company *c, CommandCost cost) +static void SubtractMoneyFromAnyCompany(Company *c, const CommandCost &cost) { if (cost.GetCost() == 0) return; assert(cost.GetExpensesType() != INVALID_EXPENSES); @@ -237,7 +237,7 @@ static void SubtractMoneyFromAnyCompany(Company *c, CommandCost cost) * Subtract money from the #_current_company, if the company is valid. * @param cost Money to pay. */ -void SubtractMoneyFromCompany(CommandCost cost) +void SubtractMoneyFromCompany(const CommandCost &cost) { Company *c = Company::GetIfValid(_current_company); if (c != nullptr) SubtractMoneyFromAnyCompany(c, cost); @@ -248,7 +248,7 @@ void SubtractMoneyFromCompany(CommandCost cost) * @param company Company paying the bill. * @param cst Cost of a command. */ -void SubtractMoneyFromCompanyFract(CompanyID company, CommandCost cst) +void SubtractMoneyFromCompanyFract(CompanyID company, const CommandCost &cst) { Company *c = Company::Get(company); byte m = c->money_fraction; diff --git a/src/company_func.h b/src/company_func.h index cec6110044..01f5859104 100644 --- a/src/company_func.h +++ b/src/company_func.h @@ -25,8 +25,8 @@ void CompanyAdminBankrupt(CompanyID company_id); void UpdateLandscapingLimits(); bool CheckCompanyHasMoney(CommandCost &cost); -void SubtractMoneyFromCompany(CommandCost cost); -void SubtractMoneyFromCompanyFract(CompanyID company, CommandCost cost); +void SubtractMoneyFromCompany(const CommandCost& cost); +void SubtractMoneyFromCompanyFract(CompanyID company, const CommandCost& cost); CommandCost CheckOwnership(Owner owner, TileIndex tile = 0); CommandCost CheckTileOwnership(TileIndex tile); From 5c19668fdb3c1b77439bde1968a4075ac02a2b79 Mon Sep 17 00:00:00 2001 From: Charles Pigott Date: Sat, 15 Feb 2020 11:53:31 +0000 Subject: [PATCH 10/13] Doc: [Script] Add a note about how wagon connectivity works for scripts --- bin/ai/regression/tst_regression/main.nut | 3 +++ bin/ai/regression/tst_regression/result.txt | 3 +++ src/script/api/script_vehicle.hpp | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/bin/ai/regression/tst_regression/main.nut b/bin/ai/regression/tst_regression/main.nut index 5ace44eec7..65742d71b3 100644 --- a/bin/ai/regression/tst_regression/main.nut +++ b/bin/ai/regression/tst_regression/main.nut @@ -1690,6 +1690,9 @@ function Regression::Vehicle() print(" BuildVehicle(): " + AIVehicle.BuildVehicle(10008, 9)); print(" BuildVehicle(): " + AIVehicle.BuildVehicle(10008, 27)); print(" BuildVehicle(): " + AIVehicle.BuildVehicle(10008, 27)); + print(" IsValidVehicle(17): " + AIVehicle.IsValidVehicle(17)); + print(" IsValidVehicle(18): " + AIVehicle.IsValidVehicle(18)); + print(" IsValidVehicle(19): " + AIVehicle.IsValidVehicle(19)); // 19 is immediately joined to 18 print(" MoveWagonChain(): " + AIVehicle.MoveWagonChain(18, 0, 17, 0)); print(" GetNumWagons(): " + AIVehicle.GetNumWagons(17)); print(" GetLength(): " + AIVehicle.GetLength(17)); diff --git a/bin/ai/regression/tst_regression/result.txt b/bin/ai/regression/tst_regression/result.txt index 18ae14cb7a..4cb74aaa54 100644 --- a/bin/ai/regression/tst_regression/result.txt +++ b/bin/ai/regression/tst_regression/result.txt @@ -9115,6 +9115,9 @@ ERROR: IsEnd() is invalid as Begin() is never called BuildVehicle(): 17 BuildVehicle(): 18 BuildVehicle(): 19 + IsValidVehicle(17): true + IsValidVehicle(18): true + IsValidVehicle(19): false MoveWagonChain(): true GetNumWagons(): 3 GetLength(): 24 diff --git a/src/script/api/script_vehicle.hpp b/src/script/api/script_vehicle.hpp index 4b8a4687ab..3c242d56fe 100644 --- a/src/script/api/script_vehicle.hpp +++ b/src/script/api/script_vehicle.hpp @@ -312,6 +312,10 @@ public: * @return The VehicleID of the new vehicle, or an invalid VehicleID when * it failed. Check the return value using IsValidVehicle. In test-mode * 0 is returned if it was successful; any other value indicates failure. + * @note Unlike the GUI, wagons are not automatically attached to trains, + * only to existing free wagons. This means that BuildVehicle can sometimes + * return an ID indicating success, but IsValidVehicle check will + * fail. You should use MoveWagon to attach free wagons to trains. * @note In Test Mode it means you can't assign orders yet to this vehicle, * as the vehicle isn't really built yet. Build it for real first before * assigning orders. From 4bc78835e8fbf320bdae976708e64bab55f9be1a Mon Sep 17 00:00:00 2001 From: Charles Pigott Date: Sat, 15 Feb 2020 12:30:16 +0000 Subject: [PATCH 11/13] Fix #6399: Create parent directories if they don't already exist --- src/fileio.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/fileio.cpp b/src/fileio.cpp index dc3813bcaa..5797c592b3 100644 --- a/src/fileio.cpp +++ b/src/fileio.cpp @@ -527,10 +527,24 @@ FILE *FioFOpenFile(const char *filename, const char *mode, Subdirectory subdir, /** * Create a directory with the given name + * If the parent directory does not exist, it will try to create that as well. * @param name the new name of the directory */ void FioCreateDirectory(const char *name) { + char dirname[MAX_PATH]; + strecpy(dirname, name, lastof(dirname)); + char *p = strrchr(dirname, PATHSEPCHAR); + if (p != nullptr) { + *p = '\0'; + DIR *dir = ttd_opendir(dirname); + if (dir == nullptr) { + FioCreateDirectory(dirname); // Try creating the parent directory, if we couldn't open it + } else { + closedir(dir); + } + } + /* Ignore directory creation errors; they'll surface later on, and most * of the time they are 'directory already exists' errors anyhow. */ #if defined(_WIN32) From 9116b2238676139644346c022f24e908926df322 Mon Sep 17 00:00:00 2001 From: glx Date: Wed, 19 Feb 2020 16:44:46 +0100 Subject: [PATCH 12/13] Fix #8011, f5381798: Dock tile in TTD savegame was only 2 bytes --- src/saveload/oldloader_sl.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/saveload/oldloader_sl.cpp b/src/saveload/oldloader_sl.cpp index 659216c0c8..402c1c5cc4 100644 --- a/src/saveload/oldloader_sl.cpp +++ b/src/saveload/oldloader_sl.cpp @@ -716,7 +716,7 @@ static const OldChunks station_chunk[] = { OCL_NULL( 4 ), ///< bus/lorry tile OCL_SVAR( OC_TILE, Station, train_station.tile ), OCL_SVAR( OC_TILE, Station, airport.tile ), - OCL_NULL( 4 ), ///< dock tile + OCL_NULL( 2 ), ///< dock tile OCL_SVAR( OC_FILE_U8 | OC_VAR_U16, Station, train_station.w ), OCL_NULL( 1 ), ///< sort-index, no longer in use From 75031c9693ee0525c75e8e02ead345b1f8264735 Mon Sep 17 00:00:00 2001 From: Andy Date: Thu, 20 Feb 2020 09:27:51 +0000 Subject: [PATCH 13/13] Fix: provide two sets of tram tracks not one in the GUI icon for building tramway --- bin/baseset/openttd.grf | Bin 510237 -> 510264 bytes media/extra_grf/openttdgui_build_tram.png | Bin 1017 -> 2287 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/bin/baseset/openttd.grf b/bin/baseset/openttd.grf index 111004c175ba03f894e0b8f3a2bf67b29df4d524..550863ff9168cb00b997f01a329c4b4f6d05d1b8 100644 GIT binary patch delta 223 zcmXBKJ!%6n5I|w(N1CB3*jRxSf;29-R4I2; z?h&Gp?!o&`$4xqJJ|aYn6gir+z4q@t^~{D<5V1TVV0|Dqrj9_j0cak8OY6J^H+z-5 zHE0|;^*W;CeLQ-Q>G zIFy6-BoAb^MeafB5^U^Mei%^Q-#yqbW<-nETOgIw^ZWApvFXpoZMskMw7N{~{xX&F F_aDzU<@ySgjQ^}Me1+83QoW_QDFGBKI! zX77-Q;6o9iBGr1R=!1f&)#tWS3jGtR^`$8EL8OIBU#bY|Om;V(QpGwD$jp4^^ZkCl zzka#<`h8!jcV_oQt;0#FwEceZ-BH?jcdk_0y2I}*vt?&La%rGok9LWY22n|@J$us# zyDNl&F6sNBC0##rP6EDXNr$SA>O?jf_^q{=99&!IxN9q}=}CK^1bb4%2?D|}NP}UR zpwyCb-VE`LIENC*F>J+>>cS#eb{2t6V*;v*A-h_o3U-@{W|S+Y`8d#3tp?Q^)XK7E zpo)rg9ZZ+R&Bb01Ej6B+8sj@l8ZZ_i2uGulGAb)H?nBKq%?zqK)ODFd}DH;s|PrDm3Ll&n=0fAt Iz87Bk1CDF#p#T5? delta 192 zcmV;x06+il5%~wOFart!VoOIv0Eh)0NRurC7k>Z;bV*G`2jc-A01Y)Vzi|El004hU zL_t&-(`Av-3dJx8L#xqBd;kA`uhos|=1VZ-5YREkpf)3h2>1b_;=-IR@!3Sf#BCx? z2|-IrPqJbs?o#lb_%1lkCXrNb<{JlA;x6>Guf*5WPGM@8!Yz5>rQH&@R%D4Av?mX4 uttn_GKI=hvCO*qSm?wJ_F87hY@Aw0+3j|ap5M8GL0000