From ec3c8d346277a8c7044f5963cfe488edfd9ef23a Mon Sep 17 00:00:00 2001 From: translators Date: Mon, 18 Mar 2024 04:40:36 +0000 Subject: [PATCH 01/70] Update: Translations from eints ukrainian: 12 changes by StepanIvasyn portuguese (brazilian): 21 changes by pasantoro polish: 52 changes by pAter-exe --- src/lang/afrikaans.txt | 2 +- src/lang/arabic_egypt.txt | 2 +- src/lang/basque.txt | 2 +- src/lang/belarusian.txt | 2 +- src/lang/brazilian_portuguese.txt | 44 ++++++------- src/lang/bulgarian.txt | 2 +- src/lang/catalan.txt | 2 +- src/lang/chuvash.txt | 2 +- src/lang/croatian.txt | 2 +- src/lang/czech.txt | 2 +- src/lang/danish.txt | 2 +- src/lang/dutch.txt | 2 +- src/lang/english_AU.txt | 2 +- src/lang/english_US.txt | 2 +- src/lang/esperanto.txt | 2 +- src/lang/estonian.txt | 2 +- src/lang/faroese.txt | 2 +- src/lang/finnish.txt | 2 +- src/lang/french.txt | 2 +- src/lang/frisian.txt | 2 +- src/lang/gaelic.txt | 2 +- src/lang/galician.txt | 2 +- src/lang/german.txt | 2 +- src/lang/greek.txt | 2 +- src/lang/hebrew.txt | 2 +- src/lang/hindi.txt | 2 +- src/lang/hungarian.txt | 2 +- src/lang/icelandic.txt | 2 +- src/lang/ido.txt | 2 +- src/lang/indonesian.txt | 2 +- src/lang/irish.txt | 2 +- src/lang/italian.txt | 2 +- src/lang/japanese.txt | 2 +- src/lang/korean.txt | 2 +- src/lang/latin.txt | 2 +- src/lang/latvian.txt | 2 +- src/lang/lithuanian.txt | 2 +- src/lang/luxembourgish.txt | 2 +- src/lang/macedonian.txt | 2 +- src/lang/malay.txt | 2 +- src/lang/maltese.txt | 2 +- src/lang/marathi.txt | 2 +- src/lang/norwegian_bokmal.txt | 2 +- src/lang/norwegian_nynorsk.txt | 2 +- src/lang/persian.txt | 2 +- src/lang/polish.txt | 106 +++++++++++++++--------------- src/lang/portuguese.txt | 2 +- src/lang/romanian.txt | 2 +- src/lang/russian.txt | 2 +- src/lang/serbian.txt | 2 +- src/lang/simplified_chinese.txt | 2 +- src/lang/slovak.txt | 2 +- src/lang/slovenian.txt | 2 +- src/lang/spanish.txt | 2 +- src/lang/spanish_MX.txt | 2 +- src/lang/swedish.txt | 2 +- src/lang/tamil.txt | 2 +- src/lang/thai.txt | 2 +- src/lang/traditional_chinese.txt | 2 +- src/lang/turkish.txt | 2 +- src/lang/ukrainian.txt | 23 ++++--- src/lang/urdu.txt | 2 +- src/lang/vietnamese.txt | 2 +- src/lang/welsh.txt | 2 +- 64 files changed, 149 insertions(+), 146 deletions(-) diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 6dfc2ef2a4..1464775f3b 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -2203,7 +2203,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Jou reke STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Moontlike verbinding verlore STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Die laaste {NUM} seconde{P "" s} geen data het van die bediener gekom nie -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :algemeen fout STR_NETWORK_ERROR_CLIENT_DESYNC :desync fout STR_NETWORK_ERROR_CLIENT_SAVEGAME :kan nie kaart laai nie diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index ecb87db871..8372a2ecfa 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -2070,7 +2070,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}اسم STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}احتمال فقد الاتصال STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}اخر {NUM} ثواني لم تصل بيانات من السيرفر -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :خطاء عام STR_NETWORK_ERROR_CLIENT_DESYNC :خطأ في DESYNC STR_NETWORK_ERROR_CLIENT_SAVEGAME :لايمكن تحميل الخريطة diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 623a5da581..1cf05d136b 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -2088,7 +2088,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Zure ord STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Konexio galera posiblea STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Azkeneko {NUM} segunduetan ez da zerbitzaritik daturik jaso -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :Akats orokorra STR_NETWORK_ERROR_CLIENT_DESYNC :Sinkronizazio akatsa STR_NETWORK_ERROR_CLIENT_SAVEGAME :Ezin izan da mapa kargatu diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index a3bc2cbaf6..70152eab27 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -2902,7 +2902,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Ваша STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Злучэньне згублена STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}На працягу {NUM} сэкунд{P ы аў аў} не атрымана ніякіх дадзеных з боку сэрвэра -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :агульная памылка STR_NETWORK_ERROR_CLIENT_DESYNC :памылка сынхранізацыі STR_NETWORK_ERROR_CLIENT_SAVEGAME :не ўдалося загрузіць мапу diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 536f11a225..78ad63e829 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -833,8 +833,8 @@ STR_NEWS_FIRST_BUS_ARRIVAL :{BIG_FONT}{BLAC STR_NEWS_FIRST_TRUCK_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeiro caminhão chega em {STATION}! STR_NEWS_FIRST_PASSENGER_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeiro bonde de passageiros chega em {STATION}! STR_NEWS_FIRST_CARGO_TRAM_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeiro bonde de carga chega em {STATION}! -STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeira embarcação chega nas {STATION}! -STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeira aeronave chega no {STATION}! +STR_NEWS_FIRST_SHIP_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeira embarcação chega em {STATION}! +STR_NEWS_FIRST_AIRCRAFT_ARRIVAL :{BIG_FONT}{BLACK}Cidadãos celebram . . .{}Primeira aeronave chega em {STATION}! STR_NEWS_TRAIN_CRASH :{BIG_FONT}{BLACK}Acidente de Trem!{}{COMMA} morrem na explosão após a colisão STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER :{BIG_FONT}{BLACK}Acidente Rodoviário!{}Condutor morre na explosão após a colisão com um trem @@ -868,7 +868,7 @@ STR_NEWS_INDUSTRY_CONSTRUCTION :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_PLANTED :{BIG_FONT}{BLACK}Nov{G o a} {STRING} sendo plantada perto de {TOWN}! STR_NEWS_INDUSTRY_CLOSURE_GENERAL :{BIG_FONT}{BLACK}{STRING} anuncia o fechamento iminente! -STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Problemas de abastecimento levam {STRING} a anunciar o fechamento iminente! +STR_NEWS_INDUSTRY_CLOSURE_SUPPLY_PROBLEMS :{BIG_FONT}{BLACK}Problemas de abastecimento fazem {STRING} anunciar o fechamento iminente! STR_NEWS_INDUSTRY_CLOSURE_LACK_OF_TREES :{BIG_FONT}{BLACK}Falta de árvores nas proximidades faz {STRING} anunciar o fechamento iminente! STR_NEWS_EURO_INTRODUCTION :{BIG_FONT}{BLACK}União Monetária Europeia!{}{}O Euro é introduzido como moeda única para as operações diárias em seu país! @@ -900,7 +900,7 @@ STR_NEWS_PLANE_USES_TOO_SHORT_RUNWAY :{WHITE}{VEHICLE STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} está ficando velho STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}{VEHICLE} está ficando muito velho -STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} está ficando muito velho e necessita urgentemente ser substituído +STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}{VEHICLE} está ficando muito velho e precisa urgentemente ser substituído STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE} não consegue encontrar um caminho para continuar STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} está perdido STR_NEWS_VEHICLE_UNPROFITABLE_YEAR :{WHITE}{VEHICLE} gerou um lucro de {CURRENCY_LONG} no último ano @@ -921,12 +921,12 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_LIST :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subsídio expirou:{}{}{STRING} d{G e a} {STRING} para {STRING} agora não será subsidiado STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subsídio retirado:{}{}Transportar {STRING} d{G e a} {STRING} para {STRING} não é mais subsidiado -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio de serviço oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá {UNITS_YEARS_OR_MINUTES} de subsídio da autoridade local! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá {UNITS_YEARS_OR_MINUTES} de subsídio da autoridade local! ###length 4 -STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subsídio de serviço concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 150% pelos próximos {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subsídio de serviço concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 200% pelos próximos {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subsídio de serviço concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 300% pelos próximos {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subsídio de serviço concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 400% pelos próximos {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 150% durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 200% durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 300% durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 400% durante {UNITS_YEARS_OR_MINUTES}! STR_NEWS_ROAD_REBUILDING_MONTHS :{BIG_FONT}{BLACK}Tráfego caótico em {TOWN}!{}{}Programa de reconstrução de estradas financiado por {STRING} provoca 6 meses de sofrimento aos motoristas! STR_NEWS_ROAD_REBUILDING_MINUTES :{BIG_FONT}{BLACK}Tráfego caótico em {TOWN}!{}{}Programa de reconstrução de estradas financiado por {STRING} provoca 6 minutos de sofrimento aos motoristas! @@ -2252,7 +2252,7 @@ STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altura máxima das montanhas no mapa STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar ano atual -STR_CHEAT_SETUP_PROD :{LTBLUE}Ativar alteração de valores de produção: {ORANGE}{STRING} +STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} STR_CHEAT_STATION_RATING :{LTBLUE}Fixar classificações da estação em 100%: {ORANGE}{STRING} # Livery window @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Seu nome STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possível perda de conexão STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Nos últimos {NUM} segundo{P "" s} nenhum dado chegou do servidor -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :erro geral STR_NETWORK_ERROR_CLIENT_DESYNC :erro/falha de sincronização STR_NETWORK_ERROR_CLIENT_SAVEGAME :não foi possível carregar o mapa @@ -3617,7 +3617,7 @@ STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} ( STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}População: {ORANGE}{COMMA}{BLACK} Casas: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} no último mês: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_LAST_MINUTE_MAX :{BLACK}{CARGO_LIST} no último minuto: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Carga necessária para o crescimento da localidade: +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Requisitos para o crescimento da localidade: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} necessário STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} necessário no inverno STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregado @@ -3647,7 +3647,7 @@ STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classifi STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Ações disponíveis: STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - Clique no item para mais detalhes -STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Executar +STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Fazer isto STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Executar a ação selecionada na lista acima ###length 8 @@ -3715,14 +3715,14 @@ STR_GOAL_QUESTION_BUTTON_CLOSE :Fechar # Subsidies window STR_SUBSIDIES_CAPTION :{WHITE}Subsídios -STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Oferta de subsídios para execução de serviços: -STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} d{G o a} {STRING} para {STRING}{YELLOW} ({STRING}) +STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Subsídios oferecidos para serviços de transporte: +STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({STRING}) STR_SUBSIDIES_NONE :{ORANGE}- Nenhum - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serviços já subsidiados: -STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} d{G o a} {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) +STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique em um serviço para centralizar visualização principal em uma indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade STR_SUBSIDIES_OFFERED_EXPIRY_DATE :até {DATE_SHORT} -STR_SUBSIDIES_OFFERED_EXPIRY_TIME :por {UNITS_MONTHS_OR_MINUTES} +STR_SUBSIDIES_OFFERED_EXPIRY_TIME :durante {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :até {DATE_SHORT} STR_SUBSIDIES_SUBSIDISED_EXPIRY_TIME :{UNITS_MONTHS_OR_MINUTES} restante{P "" s} @@ -4549,7 +4549,7 @@ STR_ORDER_DROP_NO_LOADING :Não carregar STR_ORDER_TOOLTIP_FULL_LOAD :{BLACK}Alterar o modo de carregar da ordem selecionada STR_ORDER_TOGGLE_UNLOAD :{BLACK}Descarregar tudo -STR_ORDER_DROP_UNLOAD_IF_ACCEPTED :Descarregar se aceito +STR_ORDER_DROP_UNLOAD_IF_ACCEPTED :Descarregar se aceitado STR_ORDER_DROP_UNLOAD :Descarregar tudo STR_ORDER_DROP_TRANSFER :Transferir STR_ORDER_DROP_NO_UNLOADING :Não descarregar @@ -4583,7 +4583,7 @@ STR_ORDER_CONDITIONAL_LOAD_PERCENTAGE :Porcentagem de STR_ORDER_CONDITIONAL_RELIABILITY :Confiabilidade STR_ORDER_CONDITIONAL_MAX_SPEED :Velocidade máxima STR_ORDER_CONDITIONAL_AGE :Idade (anos) -STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Necessita manutenção +STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Precisa de manutenção STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Sempre STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Tempo de vida restante (anos) STR_ORDER_CONDITIONAL_MAX_RELIABILITY :Confiabilidade máxima @@ -4716,9 +4716,9 @@ STR_TIMETABLE_AND_TRAVEL_FOR :e viajar por {S STR_TIMETABLE_TOTAL_TIME :{BLACK}Este horário levará {STRING} para ser concluído STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Este horário levará pelo menos {STRING} para ser concluído (nem tudo está programado) -STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Atualmente este veículo está circulando pontualmente -STR_TIMETABLE_STATUS_LATE :{BLACK}Atualmente este veículo está circulando {STRING} atrasado -STR_TIMETABLE_STATUS_EARLY :{BLACK}Atualmente este veículo está circulando {STRING} adiantado +STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Atualmente este veículo está pontual +STR_TIMETABLE_STATUS_LATE :{BLACK}Atualmente este veículo está {STRING} atrasado +STR_TIMETABLE_STATUS_EARLY :{BLACK}Atualmente este veículo está {STRING} adiantado STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Este horário ainda não começou STR_TIMETABLE_STATUS_START_AT_DATE :{BLACK}Este horário irá iniciar em {STRING} STR_TIMETABLE_STATUS_START_IN_SECONDS :{BLACK}Este horário irá iniciar em {COMMA} segundos diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index 39d3ccb9a2..b87e821ef3 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -2278,7 +2278,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Отне STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Възможна загуба на връзката STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Последните {NUM} сек. не се е получила информация от сървъра -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :обща грешка STR_NETWORK_ERROR_CLIENT_DESYNC :загуба на синхронизация STR_NETWORK_ERROR_CLIENT_SAVEGAME :не може да зареди картата diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index 12d4c34e32..d48c497b8f 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}El vostr STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possible pèrdua de connexió STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Durant el darrer {NUM} segon{P "" s} no han arribat dades del servidor -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :error general STR_NETWORK_ERROR_CLIENT_DESYNC :error de sincronització STR_NETWORK_ERROR_CLIENT_SAVEGAME :no es pot carregar el mapa diff --git a/src/lang/chuvash.txt b/src/lang/chuvash.txt index a894b4fd55..36c2e5f642 100644 --- a/src/lang/chuvash.txt +++ b/src/lang/chuvash.txt @@ -1007,7 +1007,7 @@ STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Вырн # Network messages -###length 21 +###length 22 # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index 832119df26..724e182ef3 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -2344,7 +2344,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Tvoje im STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Moguć gubitak veze STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Zadnjih {NUM} sekundi nisu primljeni podaci sa servera -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :opća greška STR_NETWORK_ERROR_CLIENT_DESYNC :greška u sinkronizaciji STR_NETWORK_ERROR_CLIENT_SAVEGAME :nije moguće učitati kartu diff --git a/src/lang/czech.txt b/src/lang/czech.txt index 38ded0e973..7789f85d76 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -2673,7 +2673,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Jméno v STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Pravděpodobná ztráta spojení STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Během poslední{P 0 "" ch ch} {NUM} sekund{P y "" ""} nepřišla ze serveru žádná data -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :všeobecná chyba STR_NETWORK_ERROR_CLIENT_DESYNC :chyba v synchronizaci STR_NETWORK_ERROR_CLIENT_SAVEGAME :nelze nahrát hru diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 646c39d02c..1770c0772a 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Dit spil STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mulig forbindelses tab STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De{P 0 t ""} sidste {NUM} sekund{P "" er} er der ikke ankommet data fra serveren -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :generel fejl STR_NETWORK_ERROR_CLIENT_DESYNC :synkroniseringsfejl STR_NETWORK_ERROR_CLIENT_SAVEGAME :kunne ikke hente kortet diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index b82bf6b157..57822bf0ed 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Je spele STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mogelijk verbinding verbroken STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}In de afgelopen {NUM} seconde{P "" n} is er geen data ontvangen van de server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :algemene fout STR_NETWORK_ERROR_CLIENT_DESYNC :desynchronisatiefout STR_NETWORK_ERROR_CLIENT_SAVEGAME :kan kaart niet laden diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index ee9400f76f..f79c32acec 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Your pla STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possible connection loss STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}The last {NUM} second{P "" s} no data has arrived from the server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :general error STR_NETWORK_ERROR_CLIENT_DESYNC :desync error STR_NETWORK_ERROR_CLIENT_SAVEGAME :could not load map diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index dfd6ca2bff..87fa19c2fe 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Your pla STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possible connection loss STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}The last {NUM} second{P "" s} no data has arrived from the server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :general error STR_NETWORK_ERROR_CLIENT_DESYNC :desync error STR_NETWORK_ERROR_CLIENT_SAVEGAME :could not load map diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index 3954ffda51..56e91dbcf5 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -2555,7 +2555,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Via luda STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Ebla konektoperdo STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Ne alvenis datumoj de la servilo dum la pasinta{P 0 "" j} {NUM} sekundo{P 0 "" j} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :ĝenerala eraro STR_NETWORK_ERROR_CLIENT_DESYNC :sensinkroneca eraro STR_NETWORK_ERROR_CLIENT_SAVEGAME :ne povis ŝarĝi mapon diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index 27a9885bbe..db972c203b 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -2646,7 +2646,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Sinu mä STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Võimalik ühenduse katkemine STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Viimase {NUM} sekundi jooksul pole serverilt andmeid saabunud -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :üldine viga STR_NETWORK_ERROR_CLIENT_DESYNC :sünkroniseerimise viga STR_NETWORK_ERROR_CLIENT_SAVEGAME :ei saa kaarti laadida diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index 3a2cf44873..64d5129a6b 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -2000,7 +2000,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Tín tel STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Møguligt sambands slit STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Tey síðstu {NUM} sekundini eru eingin dáta komin fram frá seraranum -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :almenn villa STR_NETWORK_ERROR_CLIENT_DESYNC :desync villa STR_NETWORK_ERROR_CLIENT_SAVEGAME :eydnaðist ikki at heinta kort diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index 2abe6c5861..f7a52f4d97 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Pelaajan STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mahdollinen yhteyden menetys STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Viimeisen {NUM} sekunnin{P "" ""} aikana palvelimelta ei ole vastaanotettu tietoja -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :yleinen virhe STR_NETWORK_ERROR_CLIENT_DESYNC :tahdistusvirhe STR_NETWORK_ERROR_CLIENT_SAVEGAME :karttaa ei voitu ladata diff --git a/src/lang/french.txt b/src/lang/french.txt index 1c7cf1b157..0f70007496 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Votre no STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possible perte de connexion STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Aucunes données reçues du serveur depuis {NUM} seconde{P "" s} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :erreur générale STR_NETWORK_ERROR_CLIENT_DESYNC :erreur de désynchronisation STR_NETWORK_ERROR_CLIENT_SAVEGAME :chargement de la carte impossible diff --git a/src/lang/frisian.txt b/src/lang/frisian.txt index 99adc3b497..fd4860a2ac 100644 --- a/src/lang/frisian.txt +++ b/src/lang/frisian.txt @@ -2120,7 +2120,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Disse na STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mooglik ferbinning kwyt STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De lêste{NUM} seconde{P "" s} is gjin data oankom fan e server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :algemiene flater STR_NETWORK_ERROR_CLIENT_SAVEGAME :koe it lân net lade STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :ferbining kwyt diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index c579931255..c164597285 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -2374,7 +2374,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Bha an c STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Dh'fhaoidte gun deach ceangal air chall STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Cha tàinig dàta sam bith on fhrithealaiche fad {NUM} {P diog dhiog diogan diog} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :mearachd choitcheann STR_NETWORK_ERROR_CLIENT_DESYNC :mearachd sioncronachaidh STR_NETWORK_ERROR_CLIENT_SAVEGAME :cha b' urrainn dhuinn am mapa a luchdadh diff --git a/src/lang/galician.txt b/src/lang/galician.txt index 55de166b87..dfd284472d 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}O teu no STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Posible perda da conexión STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Nos últimos {NUM} segundo{P "" s} non chegaron datos do servidor -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :erro xeral STR_NETWORK_ERROR_CLIENT_DESYNC :erro de descincronización STR_NETWORK_ERROR_CLIENT_SAVEGAME :no se puido carga-lo mapa diff --git a/src/lang/german.txt b/src/lang/german.txt index c3c1d8e400..7cfc2bc775 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Ihr Spie STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Möglicher Verbindungsabbruch STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Die letzte{P 0 "" n} {NUM} Sekunde{P "" n} wurden keine Daten vom Server empfangen -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :Allgemeiner Fehler STR_NETWORK_ERROR_CLIENT_DESYNC :Synchronisationsfehler STR_NETWORK_ERROR_CLIENT_SAVEGAME :Spielfeld konnte nicht geladen werden diff --git a/src/lang/greek.txt b/src/lang/greek.txt index c2e494b892..6cad1496a2 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -2556,7 +2556,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Το ό STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Πιθανή απώλεια σύνδεσης STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}T{P 0 ο α} τελευταί{P 0 ο α} {NUM} δευτερόλεπτ{P ο α} δεν έχουν παραληφθεί καθόλου δεδομένα από τον διακομιστή -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :γενικό πρόβλημα STR_NETWORK_ERROR_CLIENT_DESYNC :πρόβλημα συγχρονισμού STR_NETWORK_ERROR_CLIENT_SAVEGAME :δεν ήταν δυνατή η φόρτωση του χάρτη diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index d43a62efbd..61153d52f4 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -2258,7 +2258,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}למחש STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}איבוד קשר אפשרי STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}ב- {NUM} שני{P "יה" "ות"} האחרוות לא התקבל מידע מהשרת -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :שגיאה כללית STR_NETWORK_ERROR_CLIENT_DESYNC :שגירת סינכרון STR_NETWORK_ERROR_CLIENT_SAVEGAME :טעינת מפה נכשלה diff --git a/src/lang/hindi.txt b/src/lang/hindi.txt index bbb0a4c6ff..30c1dabb8e 100644 --- a/src/lang/hindi.txt +++ b/src/lang/hindi.txt @@ -811,7 +811,7 @@ STR_NETWORK_ERROR_WRONG_PASSWORD :गलत प STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}संपर्क विच्छेद संभावित -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :सामान्य त्रुटि STR_NETWORK_ERROR_CLIENT_SAVEGAME :मानचित्र लोड नहीं हो सका diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 99162f2193..b36d8f0d3f 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -2652,7 +2652,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}A játé STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Lehetséges, hogy elveszett a kapcsolat STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Az elmúlt {NUM} másodpercben nem érkezett adat a szervertől -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :általános hiba STR_NETWORK_ERROR_CLIENT_DESYNC :szinkronizálási hiba STR_NETWORK_ERROR_CLIENT_SAVEGAME :térkép betöltési hiba diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index 179333a8a2..1c647aa56c 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -2038,7 +2038,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Tölvan STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Hefur líklega misst sambandið STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Síðustu {NUM} sekúndu{P "" r} hafa engin gögn borist frá þjóninum -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :almenn villa STR_NETWORK_ERROR_CLIENT_DESYNC :samstillingarvilla STR_NETWORK_ERROR_CLIENT_SAVEGAME :gat ekki opnað kort diff --git a/src/lang/ido.txt b/src/lang/ido.txt index 4b1ec30266..0ba0d4e163 100644 --- a/src/lang/ido.txt +++ b/src/lang/ido.txt @@ -893,7 +893,7 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Tu sendis tro multa imperi ad la servero -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :sendinta tro multa imperi # Network related errors diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index b6477b02ac..1b86a05322 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -2539,7 +2539,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Nama pem STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Koneksi mungkin terputus STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Dalam {NUM} detik tak ada data diterima dari server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :Kesalahan umum STR_NETWORK_ERROR_CLIENT_DESYNC :Kesalahan de-sinkronisasi STR_NETWORK_ERROR_CLIENT_SAVEGAME :Tak dapat memuat peta diff --git a/src/lang/irish.txt b/src/lang/irish.txt index 225345e1c5..0c924c4744 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -2349,7 +2349,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Níl d'a STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Seans gur cailleadh an nasc STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Le {NUM} {P sh sh s s s} ní bhfuarthas aon sonraí ón bhfreastalaí -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :earráid ghinearálta STR_NETWORK_ERROR_CLIENT_DESYNC :earráid dísioncronaithe STR_NETWORK_ERROR_CLIENT_SAVEGAME :níorbh fhéidir an léarscáil a lódáil diff --git a/src/lang/italian.txt b/src/lang/italian.txt index b34770530e..c9169f681e 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -2624,7 +2624,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Il nome STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possibile perdita di connessione STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Per {NUM} second{P o i} non sono stati ricevuti dati dal server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :errore generale STR_NETWORK_ERROR_CLIENT_DESYNC :errore di sincronizzazione STR_NETWORK_ERROR_CLIENT_SAVEGAME :impossibile caricare la mappa diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index 7e308f8b10..0e03d0d796 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -2421,7 +2421,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}プレ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}接続切断の可能性 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}過去{NUM}秒間にわたりサーバーからデータを受信できていません -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :一般エラー STR_NETWORK_ERROR_CLIENT_DESYNC :同期エラー STR_NETWORK_ERROR_CLIENT_SAVEGAME :マップロード失敗 diff --git a/src/lang/korean.txt b/src/lang/korean.txt index dc39605707..9a7d68d4ae 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}사용 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}가능한 연결 손실 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}마지막 {NUM}초간 서버로부터 데이터를 받지 못했습니다 -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :일반 오류 STR_NETWORK_ERROR_CLIENT_DESYNC :비동기화 오류 STR_NETWORK_ERROR_CLIENT_SAVEGAME :지도 불러오기 실패 diff --git a/src/lang/latin.txt b/src/lang/latin.txt index 92c47b87ae..c7d49e4dee 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -2376,7 +2376,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Computat STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Connexus forsitan amissus STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}In {NUM} prior{P e ibus} secund{P o is} nulla data e servatro accipitur -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :error generalis STR_NETWORK_ERROR_CLIENT_DESYNC :error desync STR_NETWORK_ERROR_CLIENT_SAVEGAME :non potuit legere tabulam diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index 49f2bc92d4..8e550a35e6 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -2593,7 +2593,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Jūsu sp STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Iespējams savienojuma zudums STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Nav datu no servera jau {NUM} sekund{P i es ""} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :galvenā kļūda STR_NETWORK_ERROR_CLIENT_DESYNC :asinhronizācijas kļūda STR_NETWORK_ERROR_CLIENT_SAVEGAME :nevar ielādēt karti diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index e8ea2d2590..5a5bdacd65 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -2571,7 +2571,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Per ilga STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Galimas ryšio praradimas STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Paskutines {NUM} sekund{P ė ės žių} jokių duomenų iš serverio -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :klaida STR_NETWORK_ERROR_CLIENT_DESYNC :sinchronizacijos klaida STR_NETWORK_ERROR_CLIENT_SAVEGAME :negali užkrauti žemėlapio diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index f00b751abb..c792bcc4c0 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -2588,7 +2588,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Däi Spi STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Méigleche Verbindungsverloscht STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Déi lescht {NUM} Sekonn{P "" e} si keng Date vum Server komm -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :generellen Feeler STR_NETWORK_ERROR_CLIENT_DESYNC :desync Feeler STR_NETWORK_ERROR_CLIENT_SAVEGAME :konnt d'Kaart net lueden diff --git a/src/lang/macedonian.txt b/src/lang/macedonian.txt index 637ddfa540..44bd9b1723 100644 --- a/src/lang/macedonian.txt +++ b/src/lang/macedonian.txt @@ -1226,7 +1226,7 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x STR_NETWORK_ERROR_TOO_MANY_COMMANDS :{WHITE}Ти беше испраќање премногу команди на серверот -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_TOO_MANY_COMMANDS :испраќа премногу команди # Network related errors diff --git a/src/lang/malay.txt b/src/lang/malay.txt index a5d391f1b2..ed6e37ed7a 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -1935,7 +1935,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Komputer STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mungkin kehilangan penyambungan STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Tiada data diterima pada beberapa {NUM} saat yang terakhir -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :kesilapan am STR_NETWORK_ERROR_CLIENT_DESYNC :kesilapan sinkronisasi (desync) STR_NETWORK_ERROR_CLIENT_SAVEGAME :tidak boleh membuka peta diff --git a/src/lang/maltese.txt b/src/lang/maltese.txt index 986f8e4d1b..4c41075122 100644 --- a/src/lang/maltese.txt +++ b/src/lang/maltese.txt @@ -821,7 +821,7 @@ STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} # Network messages -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :reviżjoni ħażina STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :isem diġa qed jintuża STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :password ħażin diff --git a/src/lang/marathi.txt b/src/lang/marathi.txt index 5477d99f17..dac56fa193 100644 --- a/src/lang/marathi.txt +++ b/src/lang/marathi.txt @@ -1147,7 +1147,7 @@ STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE} संपर्क तुटला असण्याची शक्यता STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE} गेल्या {NUM} सेकंदांत सर्वरकडून काहीच माहिती आलेली नाही -###length 21 +###length 22 # Network related errors STR_NETWORK_SERVER_MESSAGE :*** {1:STRING} diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 8c1d2dd9eb..671d576a71 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -2591,7 +2591,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Spillern STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mulig tap av tilkobling STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE} Siste {NUM} sekund{P "" er} har ingen data ankommet fra tjeneren -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :generell feil STR_NETWORK_ERROR_CLIENT_DESYNC :synkroniseringsfeil STR_NETWORK_ERROR_CLIENT_SAVEGAME :kunne ikke åpne kartet diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index 2ce907387b..5cc21b2d1b 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -2095,7 +2095,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Datamask STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Mogleg tilkoblingsbrot STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Dei siste {NUM} sekund er ingen data mottatt frå serveren -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :generell feil STR_NETWORK_ERROR_CLIENT_DESYNC :synkroniseringsfeil STR_NETWORK_ERROR_CLIENT_SAVEGAME :klarte ikkje å laste inn kartet diff --git a/src/lang/persian.txt b/src/lang/persian.txt index 80d7668f65..68274b0bdf 100644 --- a/src/lang/persian.txt +++ b/src/lang/persian.txt @@ -1924,7 +1924,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}شما STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}اتصال مورد استفاده قطع شد STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}در {NUM} ثانیه گذشته هیچ داده ای از سرویس دهنده دریافت نگردیده -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :خطای اصلی STR_NETWORK_ERROR_CLIENT_DESYNC :خطای ناهمگام سازی STR_NETWORK_ERROR_CLIENT_SAVEGAME :نمی توان نقشه را بارگزاری کرد diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 739003bf28..9105a3c14a 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -1190,11 +1190,11 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Wyświet # Status bar messages STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Pokaż ostatnią wiadomość lub ogłoszenie -STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - -STR_STATUSBAR_PAUSED :{YELLOW}* * PAUZA * * -STR_STATUSBAR_PAUSED_LINK_GRAPH :{ORANGE}* * PAUZA (oczekiwanie na aktualizację wykresów) * * +STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - +STR_STATUSBAR_PAUSED :{YELLOW}* * PAUZA * * +STR_STATUSBAR_PAUSED_LINK_GRAPH :{ORANGE}* * PAUZA (aktualizowanie grafu połączeń) * * STR_STATUSBAR_AUTOSAVE :{RED}AUTOZAPIS -STR_STATUSBAR_SAVING_GAME :{RED}* * ZAPISYWANIE GRY * * +STR_STATUSBAR_SAVING_GAME :{RED}* * ZAPISYWANIE GRY * * STR_STATUSBAR_SPECTATOR :{WHITE}(obserwator) STR_STATUSBAR_INFINITE_MONEY :{WHITE}(nieskończone pieniądze) @@ -1434,9 +1434,9 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Skaluj f STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Zaznacz to pole, aby skalować fazy krawędzi zgodnie z rozmiarem interfejsu STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Użyj tradycyjnego fonta typu sprite -STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Zaznacz to pole, jeśli wolisz używać tradycyjnego fonta typu sprite o stałym rozmiarze. +STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Zaznacz to pole, jeśli wolisz używać tradycyjnego fonta typu sprite o stałym rozmiarze STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Antyaliasing fontów -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Zaznacz to pole, aby wygładzać fonty o zmiennym rozmiarze. +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Zaznacz to pole, aby wygładzać fonty o zmiennym rozmiarze STR_GAME_OPTIONS_GUI_SCALE_1X :1x STR_GAME_OPTIONS_GUI_SCALE_2X :2x @@ -1739,7 +1739,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Nachylenie stok STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Pochylenie pola stoku dla pojazdów drogowych. Wyższa wartość utrudnia podjazd pod górę STR_CONFIG_SETTING_FORBID_90_DEG :Zabroń pociągom skręcać o 90 stopni: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90-stopniowy zakręt występuje wtedy, gdy bezpośrednio po poziomym odcinku toru występuje odcinek pionowy (lub na odwrót), zmuszając pociąg do ostrzejszego skrętu (zamiast normalnego, 45-stopniowego skrętu w innych kombinacjach torów) +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Zakręty o 90 stopni mają miejsce, gdy po torze o kierunku poziomym na sąsiednim polu występuje bezpośrednio tor o kierunku pionowym - co sprawia, że pociąg podczas przechodzenia przez krawędź pola skręca o 90 stopni, zamiast zwykłych 45 stopni w przypadku innych kombinacji torów STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Pozwól na łączenie stacji nie sąsiadujących bezpośrednio: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Pozwól na dodawanie części do stacji bez bezpośredniego stykania się z istniejącymi częściami, używając Ctrl podczas umieszczania nowych części @@ -1875,7 +1875,7 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Pojazdy nigdy n STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Kiedy włączone, wszystkie modele pojazdów pozostają dostępne na zawsze od daty ich wprowadzenia STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Miara czasu: {STRING} -STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Wybierz jednostki pomiaru czasu w grze. Nie można tego zmienić później.{}{}Kalendarz jest klasycznym trybem OpenTTD, z rokiem składającym się z 12 miesięcy, a każdy miesiąc ma 28-31 dni.{}{}W trybie zegarowym produkcja ładunków oraz finanse są oparte na jednominutowych przyrostach, czyli mniej więcej tak długo, jak trwa 30-dniowy miesiąc w trybie kalendarzowym. Są one pogrupowane w 12-minutowe okresy, co z kolei odpowiada rokowi w trybie kalendarzowym.{}{}W obu metodach zawsze funkcjonuje klasyczny kalendarz, który jest używany do dat wprowadzenia pojazdów, domów i innej infrastruktury. +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Wybierz jednostki pomiaru czasu w grze. Nie można tego zmienić później.{}{}Kalendarz jest klasycznym trybem OpenTTD, z rokiem składającym się z 12 miesięcy, a każdy miesiąc ma 28-31 dni.{}{}W trybie zegarowym produkcja ładunków oraz finanse są oparte na jednominutowych przyrostach, czyli mniej więcej tak długo, jak trwa 30-dniowy miesiąc w trybie kalendarzowym. Są one pogrupowane w 12-minutowe okresy, co z kolei odpowiada rokowi w trybie kalendarzowym.{}{}W obu metodach zawsze funkcjonuje klasyczny kalendarz, który jest używany do dat wprowadzenia pojazdów, domów i innej infrastruktury ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Kalendarz STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Tarcza zegara @@ -1909,7 +1909,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Czas wyświetla STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Czas wyświetlania komunikatów o błędach w czerwonym oknie. Niektóre (krytyczne) komunikaty o błędach nie zamykają się automatycznie po tym czasie, tylko muszą zostać zamknięte ręcznie STR_CONFIG_SETTING_HOVER_DELAY :Pokaż podpowiedzi: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Opóźnienie wyświetlania podpowiedzi po najechaniu myszą na element interfejsu. Ewentualnie podpowiedzi mogą być przypisane do prawego przycisku myszy, jeśli wartość ta będzie ustawiona na 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Opóźnienie wyświetlania podpowiedzi po najechaniu myszą na element interfejsu. Ewentualnie podpowiedzi mogą być przypisane do prawego przycisku myszy, jeśli wartość ta będzie ustawiona na 0 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Zatrzymaj kursor przez {COMMA} milisekund{P ę y ""} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :prawy klik @@ -1940,8 +1940,8 @@ STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Wybierz wysoko STR_CONFIG_SETTING_INDUSTRY_DENSITY :Liczba przedsiębiorstw: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Określa liczbę przedsiębiorstw na początku i w trakcie gry -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksymalna odległość od krawędzi dla rafinerii: {STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinerie są budowane tylko w pobliżu krawędzi map, to znaczy na wybrzeżach dla map wyspiarskich. To ustawienie pozwala ograniczyć jak daleko od krawędzi mapy mogą być budowane rafinerie i platformy wiertnicze. Na mapach większych niż 256 pól, wartość ta jest skalowana w górę. +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maksymalna odległość rafinerii i platform wiertniczych od krawędzi mapy: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limit odległości rafinerii i platform wiertniczych od krawędzi mapy. Na mapach wyspiarskich wartość ta umożliwia budowanie ich w pobliżu wybrzeża. Na mapach większych niż 256 pól wartość ta jest odpowiednio zwiększana STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Wysokość granicy wiecznych śniegów: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Wybierz, na jakiej wysokości zaczyna zalegać śnieg w krajobrazie arktycznym. Poziom pokrywy śnieżnej wpływa na rozmieszczenie przedsiębiorstw i na warunki rozwoju miast. Może być zmodyfikowana poprzez Edytor Scenariuszy, w innym przypadku jest obliczana za pomocą ustawienia „pokrycie śniegiem” @@ -1963,7 +1963,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Pofałdowany STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Bardzo pofałdowany STR_CONFIG_SETTING_VARIETY :Różnorodność terenu: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :Wybierz, czy mapa ma zawierać zarówno obszary górskie, jak i płaskie. Im większa różnorodność, tym większe różnice wysokości między obszarami górskimi i płaskimi. +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Wybierz, czy mapa ma zawierać zarówno obszary górskie, jak i płaskie. Im większa różnorodność, tym większe różnice wysokości między obszarami górskimi i płaskimi STR_CONFIG_SETTING_RIVER_AMOUNT :Liczba rzek: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Określa liczbę rzek na mapie @@ -2134,10 +2134,10 @@ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automatycznie u STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automatycznie usuwaj sygnały, które przeszkadzają w budowie toru. Pamiętaj, że może to doprowadzić do zderzenia pociągów, w przypadku usunięcia ważnych sygnałów STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Ograniczenie prędkości przyspieszonego czasu w grze: {STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Ograniczenie prędkości gry, kiedy przyspieszenie czasu jest włączone. 0 = bez ograniczenia (tak szybko, jak pozwoli na to komputer). Wartości poniżej 100% spowolnią grę. Górny limit jest zależny od specyfikacji komputera i może się różnić w zależności od rozgrywki. +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Ograniczenie prędkości gry, kiedy przyspieszenie czasu jest włączone. 0 = bez ograniczenia (tak szybko, jak pozwala na to komputer). Wartości poniżej 100% spowalniają grę. Górny limit jest zależny od specyfikacji komputera i może się różnić w zależności od rozgrywki STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% normalnej prędkości gry ###setting-zero-is-special -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Brak ograniczenia (tak szybko, jak pozwoli na to komputer) +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Brak ograniczenia (tak szybko, jak pozwala na to komputer) STR_CONFIG_SETTING_SOUND_TICKER :Pasek informacji: {STRING} STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT :Odtwarzaj dźwięk dla podsumowania wiadomości @@ -2198,11 +2198,11 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Pozwól kompute STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :Liczba wysyłanych kodów instrukcji przed zawieszeniem skryptów: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maksymalna liczba kroków obliczeniowych, jakie skrypt może zrobić w jednej kolejce STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Maksymalne zużycie pamięci na skrypt: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Ilość pamięci jaką może zużywać pojedynczy skrypt zanim zostanie przymusowo zakończony. Może wymagać zwiększenia dla większych map. +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Ile pamięci może wykorzystać pojedynczy skrypt, zanim zostanie przymusowo zakończony. Może być konieczne zwiększenie tej wartości dla dużych map STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Okres między serwisowaniami w procentach: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Kiedy włączone, pojazdy podejmują próbę serwisowania, gdy ich niezawodność spadnie o dany procent maksymalnej niezawodności.{}{}Na przykład, jeśli maksymalna niezawodność pojazdu wynosi 90%, a interwał serwisowy wynosi 20%, pojazd podejmie próbę serwisowania, gdy osiągnie 72% niezawodności. +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Kiedy włączone, pojazdy podejmują próbę serwisowania, gdy ich niezawodność spadnie o dany procent maksymalnej niezawodności.{}{}Na przykład, jeśli maksymalna niezawodność pojazdu wynosi 90%, a interwał serwisowy wynosi 20%, pojazd podejmie próbę serwisowania, gdy osiągnie 72% niezawodności STR_CONFIG_SETTING_SERVINT_TRAINS :Domyślny interwał serwisowania pociągów: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ustaw domyślny okres serwisowania dla nowych pojazdów kolejowych, jeśli takowy nie istnieje dla określonego pojazdu @@ -2285,13 +2285,13 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Rok, w którym STR_CONFIG_SETTING_STARTING_YEAR :Data rozpoczęcia gry: {STRING} STR_CONFIG_SETTING_ENDING_YEAR :Punktacja na koniec roku: {STRING} -STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Rok, w którym gra się kończy na cel punktacji. Na koniec tego roku, punkty firmy są zarejestrowane i ekran wyników najwyższych jest pokazywany, ale gracze mogą po tym dalej grać.{}Jeżeli jest to przed rokiem startowym, ekran wyników najwyższych nie jest nigdy pokazywany. +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Rok zakończenia gry do celów klasyfikacji punktowej. Na koniec podanego roku wynik firmy jest rejestrowany i zostaje wyświetlony ekran z najwyższymi wynikami, ale gracze mogą grać dalej.{}Jeśli jest to rok przed datą rozpoczęcia, ekran z najwyższymi wynikami w ogóle nie jest wyświetlany STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nigdy STR_CONFIG_SETTING_ECONOMY_TYPE :Typ ekonomii: {STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Płynna ekonomia oznacza, że zmiany w produkcji zachodzą częściej i w mniejszych krokach. Zamrożona gospodarka zatrzymuje zmiany w produkcji i zamykanie przedsiębiorstw. To ustawienie może nie mieć żadnego wpływu, jeśli przemysł jest regulowany przez NewGRF-y. +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Płynna ekonomia oznacza, że zmiany w produkcji zachodzą częściej i w mniejszych krokach. Zamrożona gospodarka zatrzymuje zmiany w produkcji i zamykanie przedsiębiorstw. To ustawienie może nie mieć żadnego wpływu, jeśli przemysł jest regulowany przez NewGRF-y ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Oryginalna STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Płynna @@ -2346,7 +2346,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Dozwolone STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Dozwolone, dowolny układ miasta STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Generowanie ładunku przez miasta: {STRING} -STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Ilość ładunku produkowana przez domy w mieście względem ogólnej populacji miasta.{}Wzrost kwadratowy: miasto o podwojonej wielkości generuje czterokrotnie więcej pasażerów.{}Wzrost liniowy: miasto o podwojonej wielkości generuje dwukrotnie więcej pasażerów +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Ilość ładunku produkowanego przez domy w mieście względem ogólnej populacji miasta.{}Wzrost kwadratowy: miasto dwa razy większe generuje czterokrotnie więcej pasażerów.{}Wzrost liniowy: miasto dwa razy większe generuje dwukrotnie więcej pasażerów ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kwadratowy (originalny) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Liniowy @@ -2387,7 +2387,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Najwyższa używana rozdzielczość sprite'ów: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Ogranicz maksymalną rozdzielczość dla sprite'ów. Ograniczenie rozdzielczości sprite'ów spowoduje brak użycia grafiki w wysokiej rozdzielczości, nawet, jeśli jest ona dostępna. Może to pomóc w utrzymaniu jednolitego wyglądu gry, gdy używasz mieszanki plików GRF z grafiką w wysokiej rozdzielczości i bez niej +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Ogranicz maksymalną rozdzielczość dla sprite'ów. Ograniczenie rozdzielczości sprite'ów spowoduje brak użycia grafiki w wysokiej rozdzielczości, nawet jeśli jest ona dostępna. Może to pomóc w zachowaniu jednolitego wyglądu gry, jeśli używasz mieszanki plików GRF z grafiką w wysokiej rozdzielczości i bez niej ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2416,13 +2416,13 @@ STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Przeznacz {STRI STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Czas potrzebny na każde przeliczenie komponentu grafu połączeń. Po rozpoczęciu przeliczania, tworzony jest wątek, który może działać przez podaną liczbę sekund. Im mniejszą wartość ustawisz, tym większe prawdopodobieństwo, że wątek nie zostanie ukończony w wyznaczonym czasie. Wtedy gra zatrzymuje się do czasu jego zakończenia („lag”). Im większą wartość ustawisz, tym dłużej będzie trwała aktualizacja dystrybucji, gdy zmienią się trasy STR_CONFIG_SETTING_DISTRIBUTION_PAX :Tryb dystrybucji dla pasażerów: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Tryb „symetryczny” oznacza, że mniej więcej tyle samo pasażerów będzie podróżować ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach może podróżować różna liczba pasażerów. Tryb „ręczny” oznacza, że dla pasażerów nie będzie przeprowadzana dystrybucja automatyczna. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Tryb „symetryczny” oznacza, że mniej więcej tyle samo pasażerów będzie podróżować ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach może podróżować różna liczba pasażerów. Tryb „ręczny” oznacza, że dla pasażerów nie będzie przeprowadzana dystrybucja automatyczna STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Tryb dystrybucji dla poczty: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Tryb „symetryczny” oznacza, że mniej więcej taka sama ilość poczty zostanie wysłana ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach może być wysyłana różna ilość poczty. Tryb „ręczny” oznacza, że dla poczty nie będzie przeprowadzana dystrybucja automatyczna. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Tryb „symetryczny” oznacza, że mniej więcej taka sama ilość poczty zostanie wysłana ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach może być wysyłana różna ilość poczty. Tryb „ręczny” oznacza, że dla poczty nie będzie przeprowadzana dystrybucja automatyczna STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Tryb dystrybucji dla klasy ładunków CHRONIONYCH: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Klasa ładunków CHRONIONYCH zawiera kosztowności w klimacie umiarkowanym, diamenty w tropikalnym lub złoto w klimacie arktycznym. NewGRF-y mogą to zmienić. Tryb „symetryczny” oznacza, że mniej więcej taka sama ilość danego ładunku zostanie wysłana ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach mogą być wysyłane różne ilości danego ładunku. Tryb „ręczny” oznacza, że dla danego ładunku nie będzie przeprowadzana dystrybucja automatyczna. Zaleca się ustawienie tej opcji na asymetryczną lub ręczną w klimacie arktycznym lub tropikalnym, ponieważ tam banki jedynie odbierają ładunek. Dla klimatu umiarkowanego możesz wybrać symetryczny, aby banki odsyłały kosztowności do pierwotnego banku. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Klasa ładunków CHRONIONYCH zawiera kosztowności w klimacie umiarkowanym, diamenty w tropikalnym lub złoto w klimacie arktycznym. NewGRF-y mogą to zmienić. Tryb „symetryczny” oznacza, że mniej więcej taka sama ilość danego ładunku zostanie wysłana ze stacji A do stacji B, co z B do A. Tryb „asymetryczny” oznacza, że w obu kierunkach mogą być wysyłane różne ilości danego ładunku. Tryb „ręczny” oznacza, że dla danego ładunku nie będzie przeprowadzana dystrybucja automatyczna. Zaleca się ustawienie tej opcji na asymetryczną lub ręczną w klimacie arktycznym lub tropikalnym, ponieważ tam banki jedynie odbierają ładunek. Dla klimatu umiarkowanego możesz wybrać symetryczny, aby banki odsyłały kosztowności do pierwotnego banku STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Tryb dystrybucji dla pozostałych klas ładunków: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Tryb „asymetryczny” oznacza, że w obu kierunkach mogą być wysyłane różne ilości ładunków. Tryb „ręczny” oznacza, że dla takich ładunków nie będzie przeprowadzana dystrybucja automatyczna. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Tryb „asymetryczny” oznacza, że w obu kierunkach mogą być wysyłane różne ilości ładunków. Tryb „ręczny” oznacza, że dla takich ładunków nie będzie przeprowadzana dystrybucja automatyczna ###length 3 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :ręczny STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymetryczny @@ -2432,12 +2432,12 @@ STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Dokładność d STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Im wyższą wartość ustawisz, tym więcej czasu procesor będzie potrzebował na obliczenie grafu połączeń. Jeśli będzie to trwało zbyt długo, możesz zauważyć opóźnienia. Jeśli jednak ustawisz niską wartość, dystrybucja będzie niedokładna i możesz zauważyć, że ładunki nie są wysyłane do miejsc, gdzie się ich spodziewasz STR_CONFIG_SETTING_DEMAND_DISTANCE :Wpływ odległości na dystrybucję: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Jeśli ładunki z jednej stacji trafiają na kilka różnych stacji, na ich dystrybucję wpływ ma odległość. Im wyższą wartość ustawisz, tym bliższe stacje będą preferowane. Zerowa wartość ustawienia sprawi, że odległość nie będzie wpływała na podział dystrybucji. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Jeśli ładunki z jednej stacji trafiają na kilka różnych stacji, na ich dystrybucję wpływ ma odległość. Im wyższą wartość ustawisz, tym bliższe stacje będą preferowane. Zerowa wartość ustawienia sprawi, że odległość nie będzie wpływała na podział dystrybucji STR_CONFIG_SETTING_DEMAND_SIZE :Ilość powracającego ładunku dla trybu symetrycznego: {STRING} STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Ustawienie tego na mniej niż 100% powoduje, że symetryczna dystrybucja zachowuje się podobnie do asymetrycznej. Mniej ładunku będzie zwróconego jeśli określona ilość zostanie wysłana do stacji. Jeśli ustawisz to na 0%, to symetryczna dystrybucja zachowuje się jak asymetryczna STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Nasycenie krótkich tras przed wybraniem tras o dużej przepustowości: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Często istnieje wiele możliwych tras pomiędzy dwiema danymi stacjami. Mechanizm dystrybucji ładunków najpierw nasyci najkrótszą trasę, następnie użyje drugiej najkrótszej trasy, aż do jej nasycenia itd. Nasycenie jest ustalane na podstawie szacunkowej oceny przepustowości i planowanego wykorzystania. Po nasyceniu wszystkich tras, jeśli nadal istnieje zapotrzebowanie, algorytm przeciąży wszystkie trasy, preferując te o dużej przepustowości. W większości przypadków algorytm nie oszacuje jednak dokładnie przepustowości. To ustawienie pozwala określić, do jakiej wartości procentowej krótsza trasa musi zostać nasycona w pierwszym kroku, zanim zostanie wybrana kolejna, dłuższa trasa. Ustaw wartość mniejszą niż 100%, aby uniknąć przepełnionych stacji w przypadku przeszacowania przepustowości. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Często istnieje wiele możliwych tras pomiędzy dwiema danymi stacjami. Mechanizm dystrybucji ładunków najpierw nasyci najkrótszą trasę, następnie użyje drugiej najkrótszej trasy, aż do jej nasycenia itd. Nasycenie jest ustalane na podstawie szacunkowej oceny przepustowości i planowanego wykorzystania. Po nasyceniu wszystkich tras, jeśli nadal istnieje zapotrzebowanie, algorytm przeciąży wszystkie trasy, preferując te o dużej przepustowości. W większości przypadków algorytm nie oszacuje jednak dokładnie przepustowości. To ustawienie pozwala określić, do jakiej wartości procentowej krótsza trasa musi zostać nasycona w pierwszym kroku, zanim zostanie wybrana kolejna, dłuższa trasa. Ustaw wartość mniejszą niż 100%, aby uniknąć przepełnionych stacji w przypadku przeszacowania przepustowości STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Jednostki prędkości (lądowe): {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :Jednostki prędkości (morskie): {STRING} @@ -2969,7 +2969,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Twoja na STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Możliwa utrata połączenia STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Przez ostatni{P 0 ą e e} {NUM} sekund{P ę y ""} nie otrzymano żadnych danych z serwera -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :błąd ogólny STR_NETWORK_ERROR_CLIENT_DESYNC :błąd synchronizacji STR_NETWORK_ERROR_CLIENT_SAVEGAME :nie można załadować mapy @@ -3359,11 +3359,11 @@ STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Posadź STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Losowe drzewa STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Pokryj losowo krajobraz drzewami STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normalny -STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Sadź pojedyncze drzewa, przeciągając nad terenem +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Sadź pojedyncze drzewa, rysując po terenie STR_TREES_MODE_FOREST_SM_BUTTON :Zagajnik -STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Sadź niewielkie lasy, przeciągając nad terenem +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Sadź niewielkie lasy, rysując po terenie STR_TREES_MODE_FOREST_LG_BUTTON :Las -STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Sadź duże lasy, przeciągając nad terenem +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Sadź duże lasy, rysując po terenie # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Tworzenie terenu @@ -3419,7 +3419,7 @@ STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Wybierz STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Utwórz losowe przedsiębiorstwa STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Pokryj mapę losowo położonymi przedsiębiorstwami STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_CAPTION :{WHITE}Utwórz losowe przedsiębiorstwa -STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Czy na pewno chcesz ufundować wiele losowych przedsiębiorstw? +STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_QUERY :{YELLOW}Czy na pewno chcesz wybudować wiele losowych przedsiębiorstw? STR_FUND_INDUSTRY_INDUSTRY_BUILD_COST :{BLACK}Koszt: {YELLOW}{CURRENCY_LONG} STR_FUND_INDUSTRY_PROSPECT_NEW_INDUSTRY :{BLACK}Zleć poszukiwanie STR_FUND_INDUSTRY_BUILD_NEW_INDUSTRY :{BLACK}Zbuduj @@ -3578,11 +3578,11 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD STR_FRAMERATE_CAPTION :{WHITE}Klatkaż STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x) STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Tempo symulacji: {STRING} -STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Liczba ticków gry symulowanych na sekundę +STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Liczba symulowanych tyknięć gry na sekundę STR_FRAMERATE_RATE_BLITTER :{BLACK}Klatki na sekundę: {STRING} STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Liczba renderowanych klatek wideo na sekundę STR_FRAMERATE_SPEED_FACTOR :{BLACK}Obecny współczynnik szybkości gry: {DECIMAL}x -STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Jak szybko gra obecnie działa, w porównaniu do oczekiwanej prędkości przy normalnym tempie symulacji. +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Jak szybko gra obecnie działa, w porównaniu do oczekiwanej prędkości przy normalnym tempie symulacji STR_FRAMERATE_CURRENT :{WHITE}Obecny STR_FRAMERATE_AVERAGE :{WHITE}Średnia STR_FRAMERATE_MEMORYUSE :{WHITE}Pamięć @@ -4111,7 +4111,7 @@ STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Ogólny STR_STORY_BOOK_SPECTATOR :Ogólny przewodnik STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Strona {NUM} -STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Skocz na właściwą stronę wybierając ją z listy. +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Przejdź do określonej strony, wybierając ją z rozwijanej listy STR_STORY_BOOK_PREV_PAGE :{BLACK}Wstecz STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Idź na poprzednią stronę STR_STORY_BOOK_NEXT_PAGE :{BLACK}Dalej @@ -4406,7 +4406,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Samoloty bez gr STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupy - kliknij na grupę, aby wyświetlić wszystkie pojazdy z grupy. Przeciągnij i upuść grupy, aby dostosować hierarchię +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupy - kliknij na grupę, aby wyświetlić listę wszystkich pojazdów należących do tej grupy. Przeciągnij i upuść grupę, aby uporządkować hierarchię STR_GROUP_CREATE_TOOLTIP :{BLACK}Kliknij aby stworzyć grupę STR_GROUP_DELETE_TOOLTIP :{BLACK}Usuń zaznaczoną grupę STR_GROUP_RENAME_TOOLTIP :{BLACK}Zmień nazwę zaznaczonej grupy @@ -5908,25 +5908,25 @@ STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MIGHTYMOVER_CHOO_CHOO :MightyMover Cho STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_PLODDYPHUT_DIESEL :Ploddyphut Diesel STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_POWERNAUT_DIESEL :Powernaut Diesel STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_WILLS_2_8_0_STEAM :Wills 2-8-0 (Parowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney 'Jubilee' (Parowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu 'A4' (Parowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH '8P' (Parowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CHANEY_JUBILEE_STEAM :Chaney „Jubilee” (Parowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_GINZU_A4_STEAM :Ginzu „A4” (Parowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_8P_STEAM :SH „8P” (Parowóz) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MANLEY_MOREL_DMU_DIESEL :Manley-Morel DMU (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :'Dash' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry '25' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU '37' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss '47' (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_DASH_DIESEL :„Dash” (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_HENDRY_25_DIESEL :SH/Hendry „25” (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_UU_37_DIESEL :UU „37” (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_FLOSS_47_DIESEL :Floss „47” (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_4000_DIESEL :CS 4000 (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CS_2400_DIESEL :CS 2400 (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_CENTENNIAL_DIESEL :Centennial (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_KELLING_3100_DIESEL :Kelling 3100 (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_TURNER_TURBO_DIESEL :Turner Turbo (Diesel) STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_MJS_1000_DIESEL :MJS 1000 (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH '125' (Diesel) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH '30' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH '40' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :'T.I.M.' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :'AsiaStar' (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_125_DIESEL :SH „125” (Diesel) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_30_ELECTRIC :SH „30” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_SH_40_ELECTRIC :SH „40” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_T_I_M_ELECTRIC :„T.I.M.” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_RAIL_ASIASTAR_ELECTRIC :„AsiaStar” (Elektrowóz) STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PASSENGER_CAR :Wagon pasażerski STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_MAIL_VAN :Wagon pocztowy STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_COAL_CAR :Wagon na węgiel @@ -5954,8 +5954,8 @@ STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_TOY_VAN :Wagon na zabawk STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_BATTERY_TRUCK :Wagon na baterie STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_FIZZY_DRINK_TRUCK :Wagon na napoje gazowane STR_VEHICLE_NAME_TRAIN_WAGON_RAIL_PLASTIC_TRUCK :Wagon na plastik -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :'X2001' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :'Millennium Z1' (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_X2001_ELECTRIC :„X2001” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_MILLENNIUM_Z1_ELECTRIC :„Millennium Z1” (Elektrowóz) STR_VEHICLE_NAME_TRAIN_ENGINE_MONORAIL_WIZZOWOW_Z99 :Wizzowow Z99 STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PASSENGER_CAR :Wagon pasażerski STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_MAIL_VAN :Wagon pocztowy @@ -5984,10 +5984,10 @@ STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_TOY_VAN :Wagon na zabawk STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_BATTERY_TRUCK :Wagon na baterie STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_FIZZY_DRINK_TRUCK :Wagon na napoje gazowane STR_VEHICLE_NAME_TRAIN_WAGON_MONORAIL_PLASTIC_TRUCK :Wagon na plastik -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 'Leviathan' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 'Cyclops' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 'Pegasus' (Elektrowóz) -STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 'Chimaera' (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV1_LEVIATHAN_ELECTRIC :Lev1 „Leviathan” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV2_CYCLOPS_ELECTRIC :Lev2 „Cyclops” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV3_PEGASUS_ELECTRIC :Lev3 „Pegasus” (Elektrowóz) +STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_LEV4_CHIMAERA_ELECTRIC :Lev4 „Chimaera” (Elektrowóz) STR_VEHICLE_NAME_TRAIN_ENGINE_MAGLEV_WIZZOWOW_ROCKETEER :Wizzowow Rocketeer STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_PASSENGER_CAR :Wagon pasażerski STR_VEHICLE_NAME_TRAIN_WAGON_MAGLEV_MAIL_VAN :Wagon pocztowy diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index c41f7622b5..c6fca58bb0 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}O seu no STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Possível perda de conexão STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}No{P 0 "" s} último{P 0 "" s} {NUM} segundo{P "" s} nenhum dado foi recebido do servidor -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :erro geral STR_NETWORK_ERROR_CLIENT_DESYNC :erro de dessincronização STR_NETWORK_ERROR_CLIENT_SAVEGAME :não foi possível carregar o mapa diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index 9b04d671eb..ae588cd4d6 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -2586,7 +2586,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Numele t STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Posibilă pierdere a conexiunii STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}În ultimele {NUM} secunde nu s-au mai primit date de la server -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :eroare generală STR_NETWORK_ERROR_CLIENT_DESYNC :eroare de desincronizare STR_NETWORK_ERROR_CLIENT_SAVEGAME :nu pot încărca harta diff --git a/src/lang/russian.txt b/src/lang/russian.txt index c6b64f9e65..61444f8bbd 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -2740,7 +2740,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Неве STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Подключение утеряно STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}В течение {NUM} секунд{P ы "" ""} от сервера не поступало никаких данных -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :общая ошибка STR_NETWORK_ERROR_CLIENT_DESYNC :ошибка синхронизации STR_NETWORK_ERROR_CLIENT_SAVEGAME :не смог загрузить карту diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 4fe54e4c1c..a46c855be2 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -2733,7 +2733,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Tvoje im STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Moguć gubitak veze STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}U poslednj{P 0 oj e ih} {NUM} sekund{P i e i} nije primljen nijedan podatak sa servera -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :opšta greška STR_NETWORK_ERROR_CLIENT_DESYNC :desinhronizacija STR_NETWORK_ERROR_CLIENT_SAVEGAME :neuspešno učitavanje terena diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 9e7800f547..9e00518369 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}您的 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}失去链接 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}已经有 {NUM} 秒没有从服务器收到任何数据 -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :一般错误 STR_NETWORK_ERROR_CLIENT_DESYNC :同步错误 STR_NETWORK_ERROR_CLIENT_SAVEGAME :不能读取地图 diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index 147bd899bf..591057b241 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -2656,7 +2656,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Meno va STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Možná strata pripojenia STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Posledných {NUM} sekúnd nedorazili zo servera žiadne dáta -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :všeobecná chyba STR_NETWORK_ERROR_CLIENT_DESYNC :chyba synchronizácie STR_NETWORK_ERROR_CLIENT_SAVEGAME :nemôžem načítať mapu diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index eb56bc720b..de8be0e05c 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -2328,7 +2328,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Priklop STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Povezava je mogoče prekinjena STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Zadnj{P 0 o i e ih} {NUM} sekund{P o i e ""} ni bilo prejetih nobenih podatkov s strežnika -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :splošna napaka STR_NETWORK_ERROR_CLIENT_DESYNC :desinhronizacijska napaka STR_NETWORK_ERROR_CLIENT_SAVEGAME :ni mogoče naložiti zemljevida diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index 1fed3fbbb9..3677726ee4 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Tu nombr STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Posible pérdida de conexión STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}No se han recibido datos del servidor desde hace {NUM} segundo{P "" s} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :error general STR_NETWORK_ERROR_CLIENT_DESYNC :error de desincronización STR_NETWORK_ERROR_CLIENT_SAVEGAME :no se puede cargar el mapa diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index 58e27b0e37..50a9e83b44 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -2515,7 +2515,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Tu nombr STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Posible pérdida de conexión STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}No se han recibido datos del servidor desde hace {NUM} segundo{P "" s} -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :error general STR_NETWORK_ERROR_CLIENT_DESYNC :error de desincronización STR_NETWORK_ERROR_CLIENT_SAVEGAME :no se puede cargar el mapa diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index b57bf598d8..dbc3c03fac 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Ditt spe STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Anslutningen har troligtvis försvunnit STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}De senaste {NUM} sekunderna har inget data mottagits från servern -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :allmänt fel STR_NETWORK_ERROR_CLIENT_DESYNC :synkroniseringsfel STR_NETWORK_ERROR_CLIENT_SAVEGAME :kunde inte ladda kartan diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 3029dc33b7..4ff1227a29 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -2374,7 +2374,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}சர STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}தொடர்பு துண்டிக்கப்பட வாய்ப்பு உள்ளது STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}கடந்த {NUM} வினாடி{P "" களில்} சர்வரிலிருந்து சர்வரிலிருந்து எந்த டேட்டாவும் கிடைக்கவில்லை -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :பொதுவான பிழை STR_NETWORK_ERROR_CLIENT_DESYNC :இணைப்பு பிழை STR_NETWORK_ERROR_CLIENT_SAVEGAME :வரைபடத்தை ஏற்ற முடியவில்லை diff --git a/src/lang/thai.txt b/src/lang/thai.txt index 7e59b31d3d..274479bae1 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -2217,7 +2217,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}ชื STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}การเชื่อมต่อล้มเหลว STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}{NUM} วินาทีสุดท้ายไม่มีข้อมูลส่งถึงเครื่องแม่ข่าย -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :การผิดพลาดทั่วไป STR_NETWORK_ERROR_CLIENT_DESYNC :desync ผิดพลาด STR_NETWORK_ERROR_CLIENT_SAVEGAME :ไม่สามารถโหลดแผนที่ได้ diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index 9fd72d21ac..e25c202054 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -2493,7 +2493,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}你的 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}可能發生連線中斷 STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}最後 {NUM} 秒沒有資料從伺服器過來 -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :一般錯誤 STR_NETWORK_ERROR_CLIENT_DESYNC :失去同步 STR_NETWORK_ERROR_CLIENT_SAVEGAME :無法載入地圖 diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 72bfe53144..6d2ab610d8 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -2590,7 +2590,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}İsminiz STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Olası bağlantı kaybı STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Son {NUM} saniyedir sunucudan hiç veri gelmedi -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :genel hata STR_NETWORK_ERROR_CLIENT_DESYNC :desync hatası STR_NETWORK_ERROR_CLIENT_SAVEGAME :harita yüklenemiyor diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 9e99e76294..ad41942019 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -423,7 +423,7 @@ STR_TOOLTIP_RESIZE :{BLACK}Нати STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Розмір вікна великий/малий STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Смуга прокрутки - прокручує список вверх/вниз STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Смуга прокрутки - прокручує список вліво/вправо -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Зруйнувати будинки, дороги і т.п. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу витрат на руйнування +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Зруйнувати будинки, дороги тощо у квадраті суходолу. Ctrl+клац+протягування для виділення клітинок по діагоналі. Утримуйте Shift для показу витрат на руйнування # Show engines button ###length VEHICLE_TYPES @@ -521,12 +521,12 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Пока STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Показати міста STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Показати субсидії STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Показати список станцій компанії -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Фінансова інформація -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Головна інформація +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Покаже фінансову інформацію про компанію +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Покаже загальну інформацію про компанію STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показати історію -STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Показати список завдань +STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Покаже список завдань STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки -STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Показати таблицю компаній +STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Покаже таблицю компаній STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Фінансувати будівництво нової промисловості STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показати список поїздів компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показати список дорожнього транспорту компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку @@ -1538,6 +1538,7 @@ STR_CONFIG_SETTING_SHOWFINANCES_PERIOD :Показув ###length 2 STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :При включенні наприкінці кожного року виринає вікно фінансів для легшого огляду фінансового стану компанії. +STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT_PERIOD :При включенні наприкінці кожного періоду виринає вікно фінансів для легшого огляду фінансового стану компанії. STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Створювати накази з поміткою «без зупинки»: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Якщо в завданні транспортного засобу не вказана помітка «без зупинки», то воно зупиняєтся на всіх станціях на своєму шляху. Включення цієї опції призводить до того, що нові завдання будуть автоматично створюватися з поміткою «без зупинки» і транспортний засіб буде зупинятися лише на заданних станціях. Звичайно, при необхідності помітку можна зняти або встановити власноруч. @@ -2721,7 +2722,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Непр STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Можлива втрата з'єднання STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}На протязі {NUM} секунд{P и "" ""} не надійшло жодної інформації від сервера -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :фатальна помилка STR_NETWORK_ERROR_CLIENT_DESYNC :помилка синхронізації STR_NETWORK_ERROR_CLIENT_SAVEGAME :неможливо завантажити карту @@ -2925,7 +2926,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Буду STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Перетворити колію на точку маршруту. Ctrl дозволяє об'єднання точок маршруту. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будувати станцію. Ctrl дозволяє об'єднання станцій. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати залізничні сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка мишою будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки чи сигналу{}Ctrl+клац мишою вмикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати міст. Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати залізничний міст. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будувати тунель. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будувати/демонтувати колію, сигнали, точки маршруту і станції. Утримання Ctrl також демонтує колію з точок маршрутів і станцій STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Модернізувати колію. Утримуйте Shift для показу витрат на модернізацію @@ -3185,8 +3186,8 @@ STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Приб STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Ви дійсно бажаєте видалити всі підприємства? # Industry cargoes window -STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Ланцюг вантажних перевезень для {STRING} -STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Ланцюг вантажних перевезень для {STRING} +STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Ланцюг підприємств - {STRING} +STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Ланцюг вантажів - {STRING} STR_INDUSTRY_CARGOES_PRODUCERS :{WHITE}Виробники STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Споживачі STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Будинки @@ -3875,7 +3876,7 @@ STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Невір # Station list window STR_STATION_LIST_TOOLTIP :{BLACK}Назви станцій - натисніть на назву, щоб показати станцію в центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на станцію -STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Утримуйте Ctrl для вибору декількох пунктів +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Ctrl+клац для вибору кількох пунктів STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} станці{P я ї й} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} @@ -4860,6 +4861,7 @@ STR_TIMETABLE_STATUS_START_IN_SECONDS.r :{BLACK}Цей STR_TIMETABLE_STATUS_START_IN_SECONDS.d :{BLACK}Цей розклад почнеться після {COMMA} секунд STR_TIMETABLE_START :{BLACK}Початок розкладу +STR_TIMETABLE_START_TOOLTIP :{BLACK}Обрати початок розкладу. Ctrl+клац для рівного розподілу початку руху транспорту зі спільним наказом. Якщо наказ із розкладом, транспорт розподілиться за відносним порядком STR_TIMETABLE_START_SECONDS_QUERY :Секунд до початку розкладу @@ -4985,6 +4987,7 @@ STR_AI_SETTINGS_SETTING :{STRING}: {ORAN # Textfile window STR_TEXTFILE_JUMPLIST :{WHITE}Зміст +STR_TEXTFILE_JUMPLIST_TOOLTIP :{BLACK}Швидко перейти до фрагменту в переглядуваному файлі з цього списку STR_TEXTFILE_JUMPLIST_ITEM :{WHITE}{STRING} STR_TEXTFILE_NAVBACK_TOOLTIP :{BLACK}Крок назад в історії навігації STR_TEXTFILE_NAVFORWARD_TOOLTIP :{BLACK}Крок вперед в історії навігації diff --git a/src/lang/urdu.txt b/src/lang/urdu.txt index 679571b7a2..3f097904a3 100644 --- a/src/lang/urdu.txt +++ b/src/lang/urdu.txt @@ -1797,7 +1797,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}آپ ک STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}ممکنہ طور پر کنکشن کا خاتمہ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}آخری {NUM} سیکنڈ{P "" وں} سے سرور سے کوئی معلومات نہیں ملیں -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :عمومی خرابی STR_NETWORK_ERROR_CLIENT_DESYNC :desync خرابی STR_NETWORK_ERROR_CLIENT_SAVEGAME :نقشہ لوڈ نہیں ہوسکا diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index 1791df5591..fcff61c8ca 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Tên ng STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Kết nối có thể đã bị mất STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Trong khoảng{NUM} giây gần đây, không có dữ liệu nào được nhận từ máy chủ -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :lỗi chung STR_NETWORK_ERROR_CLIENT_DESYNC :lỗi mất đồng bộ STR_NETWORK_ERROR_CLIENT_SAVEGAME :không nạp được bản đồ diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index 8b067abc58..cba03ab154 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -2589,7 +2589,7 @@ STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Nid yw e STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Colled cysylltiad o bosib STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Am y {NUM} eiliad diwethaf nid oes data wedi cyrraedd o'r gweinydd -###length 21 +###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :gwall cyffredinol STR_NETWORK_ERROR_CLIENT_DESYNC :gwall dadgydamseru STR_NETWORK_ERROR_CLIENT_SAVEGAME :methwyd llwytho'r map From 107c208d87b1d094e636022013a8bd4e06edf23c Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 18 Mar 2024 17:49:51 +0000 Subject: [PATCH 02/70] Codechange: Use single list for hierarchical group lists. (#12330) Replace both group list implementations (vehicle group list and company colour group list) with a single implementation, using a struct to hold the group and indentation level instead of two separate lists. Parts that were previously duplicated are now shared. --- src/company_gui.cpp | 73 +++++--------------- src/group_gui.cpp | 162 ++++++++++++++++++++++++-------------------- src/group_gui.h | 11 +++ 3 files changed, 116 insertions(+), 130 deletions(-) diff --git a/src/company_gui.cpp b/src/company_gui.cpp index 7896f2bb9a..253bc187ed 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -40,6 +40,7 @@ #include "company_cmd.h" #include "economy_cmd.h" #include "group_cmd.h" +#include "group_gui.h" #include "misc_cmd.h" #include "object_cmd.h" #include "timer/timer.h" @@ -591,8 +592,6 @@ public: } }; -typedef GUIList GUIGroupList; - /** Company livery colour scheme window. */ struct SelectCompanyLiveryWindow : public Window { private: @@ -602,7 +601,6 @@ private: uint rows; uint line_height; GUIGroupList groups; - std::vector indents; Scrollbar *vscroll; void ShowColourDropDownMenu(uint32_t widget) @@ -660,57 +658,15 @@ private: ShowDropDownList(this, std::move(list), sel, widget); } - void AddChildren(GUIGroupList &source, GroupID parent, int indent) - { - for (const Group *g : source) { - if (g->parent != parent) continue; - this->groups.push_back(g); - this->indents.push_back(indent); - AddChildren(source, g->index, indent + 1); - } - } - void BuildGroupList(CompanyID owner) { if (!this->groups.NeedRebuild()) return; this->groups.clear(); - this->indents.clear(); if (this->livery_class >= LC_GROUP_RAIL) { - GUIGroupList list; VehicleType vtype = (VehicleType)(this->livery_class - LC_GROUP_RAIL); - - for (const Group *g : Group::Iterate()) { - if (g->owner == owner && g->vehicle_type == vtype) { - list.push_back(g); - } - } - - list.ForceResort(); - - /* Sort the groups by their name */ - const Group *last_group[2] = { nullptr, nullptr }; - std::string last_name[2] = { {}, {} }; - list.Sort([&](const Group * const &a, const Group * const &b) -> bool { - if (a != last_group[0]) { - last_group[0] = a; - SetDParam(0, a->index); - last_name[0] = GetString(STR_GROUP_NAME); - } - - if (b != last_group[1]) { - last_group[1] = b; - SetDParam(0, b->index); - last_name[1] = GetString(STR_GROUP_NAME); - } - - int r = StrNaturalCompare(last_name[0], last_name[1]); // Sort by name (natural sorting). - if (r == 0) return a->index < b->index; - return r < 0; - }); - - AddChildren(list, INVALID_GROUP, 0); + BuildGuiGroupList(this->groups, false, owner, vtype); } this->groups.shrink_to_fit(); @@ -774,7 +730,7 @@ public: /* Position scrollbar to selected group */ for (uint i = 0; i < this->rows; i++) { - if (this->groups[i]->index == sel) { + if (this->groups[i].group->index == sel) { this->vscroll->SetPosition(i - this->vscroll->GetCapacity() / 2); break; } @@ -944,11 +900,11 @@ public: } } } else { - uint max = static_cast(std::min(this->vscroll->GetPosition() + this->vscroll->GetCapacity(), this->groups.size())); - for (uint i = this->vscroll->GetPosition(); i < max; ++i) { - const Group *g = this->groups[i]; + auto [first, last] = this->vscroll->GetVisibleRangeIterators(this->groups); + for (auto it = first; it != last; ++it) { + const Group *g = it->group; SetDParam(0, g->index); - draw_livery(STR_GROUP_NAME, g->livery, this->sel == g->index, false, this->indents[i] * WidgetDimensions::scaled.hsep_indent); + draw_livery(STR_GROUP_NAME, g->livery, this->sel == g->index, false, it->indent * WidgetDimensions::scaled.hsep_indent); } if (this->vscroll->GetCount() == 0) { @@ -991,7 +947,7 @@ public: this->BuildGroupList((CompanyID)this->window_number); if (!this->groups.empty()) { - this->sel = this->groups[0]->index; + this->sel = this->groups[0].group->index; } } @@ -1008,10 +964,10 @@ public: break; case WID_SCL_MATRIX: { - uint row = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_SCL_MATRIX); - if (row >= this->rows) return; - if (this->livery_class < LC_GROUP_RAIL) { + uint row = this->vscroll->GetScrolledRowFromWidget(pt.y, this, widget); + if (row >= this->rows) return; + LiveryScheme j = (LiveryScheme)row; for (LiveryScheme scheme = LS_BEGIN; scheme <= j && scheme < LS_END; scheme++) { @@ -1025,7 +981,10 @@ public: this->sel = 1 << j; } } else { - this->sel = this->groups[row]->index; + auto it = this->vscroll->GetScrolledItemFromWidget(this->groups, pt.y, this, widget); + if (it == std::end(this->groups)) return; + + this->sel = it->group->index; } this->SetDirty(); break; @@ -1078,7 +1037,7 @@ public: if (!Group::IsValidID(this->sel)) { this->sel = INVALID_GROUP; - if (!this->groups.empty()) this->sel = this->groups[0]->index; + if (!this->groups.empty()) this->sel = this->groups[0].group->index; } this->SetDirty(); diff --git a/src/group_gui.cpp b/src/group_gui.cpp index 5083da047a..812f7a9e86 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -27,6 +27,7 @@ #include "company_gui.h" #include "gui.h" #include "group_cmd.h" +#include "group_gui.h" #include "vehicle_cmd.h" #include "gfx_func.h" @@ -36,8 +37,6 @@ #include "safeguards.h" -typedef GUIList GUIGroupList; - static constexpr NWidgetPart _nested_group_widgets[] = { NWidget(NWID_HORIZONTAL), // Window header NWidget(WWT_CLOSEBOX, COLOUR_GREY), @@ -111,6 +110,73 @@ static constexpr NWidgetPart _nested_group_widgets[] = { EndContainer(), }; +/** + * Add children to GUI group list to build a hierarchical tree. + * @param dst Destination list. + * @param src Source list. + * @param fold Whether to handle group folding/hiding. + * @param parent Current tree parent (set by self with recursion). + * @param indent Current tree indentation level (set by self with recursion). + */ +static void GuiGroupListAddChildren(GUIGroupList &dst, const GUIGroupList &src, bool fold, GroupID parent, int indent) +{ + for (const auto &item : src) { + if (item.group->parent != parent) continue; + + dst.emplace_back(item.group, indent); + + if (fold && item.group->folded) { + /* Test if this group has children at all. If not, the folded flag should be cleared to avoid lingering unfold buttons in the list. */ + GroupID groupid = item.group->index; + bool has_children = std::any_of(src.begin(), src.end(), [groupid](const auto &child) { return child.group->parent == groupid; }); + Group::Get(item.group->index)->folded = has_children; + } else { + GuiGroupListAddChildren(dst, src, fold, item.group->index, indent + 1); + } + } +} + +/** + * Build GUI group list, a sorted hierarchical list of groups for owner and vehicle type. + * @param dst Destination list, owned by the caller. + * @param fold Whether to handle group folding/hiding. + * @param owner Owner of groups. + * @param veh_type Vehicle type of groups. + */ +void BuildGuiGroupList(GUIGroupList &dst, bool fold, Owner owner, VehicleType veh_type) +{ + GUIGroupList list; + + for (const Group *g : Group::Iterate()) { + if (g->owner == owner && g->vehicle_type == veh_type) { + list.emplace_back(g, 0); + } + } + + list.ForceResort(); + + /* Sort the groups by their name */ + std::array, 2> last_group{}; + + list.Sort([&last_group](const GUIGroupListItem &a, const GUIGroupListItem &b) -> bool { + if (a.group != last_group[0].first) { + SetDParam(0, a.group->index); + last_group[0] = {a.group, GetString(STR_GROUP_NAME)}; + } + + if (b.group != last_group[1].first) { + SetDParam(0, b.group->index); + last_group[1] = {b.group, GetString(STR_GROUP_NAME)}; + } + + int r = StrNaturalCompare(last_group[0].second, last_group[1].second); // Sort by name (natural sorting). + if (r == 0) return a.group->index < b.group->index; + return r < 0; + }); + + GuiGroupListAddChildren(dst, list, fold, INVALID_GROUP, 0); +} + class VehicleGroupWindow : public BaseVehicleListWindow { private: /* Columns in the group list */ @@ -133,26 +199,8 @@ private: uint tiny_step_height; ///< Step height for the group list Scrollbar *group_sb; - std::vector indents; ///< Indentation levels - Dimension column_size[VGC_END]; ///< Size of the columns in the group list. - void AddChildren(GUIGroupList &source, GroupID parent, int indent) - { - for (const Group *g : source) { - if (g->parent != parent) continue; - this->groups.push_back(g); - this->indents.push_back(indent); - if (g->folded) { - /* Test if this group has children at all. If not, the folded flag should be cleared to avoid lingering unfold buttons in the list. */ - bool has_children = std::any_of(source.begin(), source.end(), [g](const Group *child){ return child->parent == g->index; }); - Group::Get(g->index)->folded = has_children; - } else { - AddChildren(source, g->index, indent + 1); - } - } - } - /** * (Re)Build the group list. * @@ -163,40 +211,8 @@ private: if (!this->groups.NeedRebuild()) return; this->groups.clear(); - this->indents.clear(); - GUIGroupList list; - - for (const Group *g : Group::Iterate()) { - if (g->owner == owner && g->vehicle_type == this->vli.vtype) { - list.push_back(g); - } - } - - list.ForceResort(); - - /* Sort the groups by their name */ - const Group *last_group[2] = { nullptr, nullptr }; - std::string last_name[2] = { {}, {} }; - list.Sort([&](const Group * const &a, const Group * const &b) { - if (a != last_group[0]) { - last_group[0] = a; - SetDParam(0, a->index); - last_name[0] = GetString(STR_GROUP_NAME); - } - - if (b != last_group[1]) { - last_group[1] = b; - SetDParam(0, b->index); - last_name[1] = GetString(STR_GROUP_NAME); - } - - int r = StrNaturalCompare(last_name[0], last_name[1]); // Sort by name (natural sorting). - if (r == 0) return a->index < b->index; - return r < 0; - }); - - AddChildren(list, INVALID_GROUP, 0); + BuildGuiGroupList(this->groups, true, owner, this->vli.vtype); this->groups.shrink_to_fit(); this->groups.RebuildDone(); @@ -602,13 +618,13 @@ public: case WID_GL_LIST_GROUP: { int y1 = r.top; - size_t max = std::min(this->group_sb->GetPosition() + this->group_sb->GetCapacity(), this->groups.size()); - for (size_t i = this->group_sb->GetPosition(); i < max; ++i) { - const Group *g = this->groups[i]; + auto [first, last] = this->group_sb->GetVisibleRangeIterators(this->groups); + for (auto it = first; it != last; ++it) { + const Group *g = it->group; assert(g->owner == this->owner); - DrawGroupInfo(y1, r.left, r.right, g->index, this->indents[i] * WidgetDimensions::scaled.hsep_indent, HasBit(g->flags, GroupFlags::GF_REPLACE_PROTECTION), g->folded || (i + 1 < this->groups.size() && indents[i + 1] > this->indents[i])); + DrawGroupInfo(y1, r.left, r.right, g->index, it->indent * WidgetDimensions::scaled.hsep_indent, HasBit(g->flags, GroupFlags::GF_REPLACE_PROTECTION), g->folded || (std::next(it) != std::end(this->groups) && std::next(it)->indent > it->indent)); y1 += this->tiny_step_height; } @@ -690,27 +706,26 @@ public: auto it = this->group_sb->GetScrolledItemFromWidget(this->groups, pt.y, this, WID_GL_LIST_GROUP); if (it == this->groups.end()) return; - size_t id_g = it - this->groups.begin(); - if ((*it)->folded || (id_g + 1 < this->groups.size() && this->indents[id_g + 1] > this->indents[id_g])) { + if (it->group->folded || (std::next(it) != std::end(this->groups) && std::next(it)->indent > it->indent)) { /* The group has children, check if the user clicked the fold / unfold button. */ NWidgetCore *group_display = this->GetWidget(widget); int x = _current_text_dir == TD_RTL ? - group_display->pos_x + group_display->current_x - WidgetDimensions::scaled.framerect.right - this->indents[id_g] * WidgetDimensions::scaled.hsep_indent - this->column_size[VGC_FOLD].width : - group_display->pos_x + WidgetDimensions::scaled.framerect.left + this->indents[id_g] * WidgetDimensions::scaled.hsep_indent; + group_display->pos_x + group_display->current_x - WidgetDimensions::scaled.framerect.right - it->indent * WidgetDimensions::scaled.hsep_indent - this->column_size[VGC_FOLD].width : + group_display->pos_x + WidgetDimensions::scaled.framerect.left + it->indent * WidgetDimensions::scaled.hsep_indent; if (click_count > 1 || (pt.x >= x && pt.x < (int)(x + this->column_size[VGC_FOLD].width))) { GroupID g = this->vli.index; if (!IsAllGroupID(g) && !IsDefaultGroupID(g)) { do { g = Group::Get(g)->parent; - if (g == groups[id_g]->index) { + if (g == it->group->index) { this->vli.index = g; break; } } while (g != INVALID_GROUP); } - Group::Get(groups[id_g]->index)->folded = !groups[id_g]->folded; + Group::Get(it->group->index)->folded = !it->group->folded; this->groups.ForceRebuild(); this->SetDirty(); @@ -718,7 +733,7 @@ public: } } - this->group_sel = this->vli.index = this->groups[id_g]->index; + this->group_sel = this->vli.index = it->group->index; SetObjectToPlaceWnd(SPR_CURSOR_MOUSE, PAL_NONE, HT_DRAG, this); @@ -843,7 +858,7 @@ public: case WID_GL_LIST_GROUP: { // Matrix group auto it = this->group_sb->GetScrolledItemFromWidget(this->groups, pt.y, this, WID_GL_LIST_GROUP); - GroupID new_g = it == this->groups.end() ? INVALID_GROUP : (*it)->index; + GroupID new_g = it == this->groups.end() ? INVALID_GROUP : it->group->index; if (this->group_sel != new_g && g->parent != new_g) { Command::Post(STR_ERROR_GROUP_CAN_T_SET_PARENT, AlterGroupMode::SetParent, this->group_sel, new_g, {}); @@ -876,7 +891,7 @@ public: this->SetDirty(); auto it = this->group_sb->GetScrolledItemFromWidget(this->groups, pt.y, this, WID_GL_LIST_GROUP); - GroupID new_g = it == this->groups.end() ? NEW_GROUP : (*it)->index; + GroupID new_g = it == this->groups.end() ? NEW_GROUP : it->group->index; Command::Post(STR_ERROR_GROUP_CAN_T_ADD_VEHICLE, new_g == NEW_GROUP ? CcAddVehicleNewGroup : nullptr, new_g, vindex, _ctrl_pressed || this->grouping == GB_SHARED_ORDERS, VehicleListIdentifier{}); break; @@ -1025,7 +1040,7 @@ public: case WID_GL_LIST_GROUP: { // ... the list of custom groups. auto it = this->group_sb->GetScrolledItemFromWidget(this->groups, pt.y, this, WID_GL_LIST_GROUP); - new_group_over = it == this->groups.end() ? NEW_GROUP : (*it)->index; + new_group_over = it == this->groups.end() ? NEW_GROUP : it->group->index; break; } } @@ -1080,18 +1095,19 @@ public: this->vli.index = g_id; if (g_id != ALL_GROUP && g_id != DEFAULT_GROUP) { const Group *g = Group::Get(g_id); - int id_g = find_index(this->groups, g); - // The group's branch is maybe collapsed, so try to expand it - if (id_g == -1) { + + auto found = std::find_if(std::begin(this->groups), std::end(this->groups), [g](const auto &item) { return item.group == g; }); + if (found == std::end(this->groups)) { + /* The group's branch is maybe collapsed, so try to expand it. */ for (auto pg = Group::GetIfValid(g->parent); pg != nullptr; pg = Group::GetIfValid(pg->parent)) { pg->folded = false; } this->groups.ForceRebuild(); this->BuildGroupList(this->owner); this->group_sb->SetCount(this->groups.size()); - id_g = find_index(this->groups, g); + found = std::find_if(std::begin(this->groups), std::end(this->groups), [g](const auto &item) { return item.group == g; }); } - this->group_sb->ScrollTowards(id_g); + if (found != std::end(this->groups)) this->group_sb->ScrollTowards(std::distance(std::begin(this->groups), found)); } this->vehgroups.ForceRebuild(); this->SetDirty(); @@ -1121,7 +1137,7 @@ static WindowDesc _train_group_desc( * @param group The group to be selected. Defaults to INVALID_GROUP. * @param need_existing_window Whether the existing window is needed. Defaults to false. */ -void ShowCompanyGroup(CompanyID company, VehicleType vehicle_type, GroupID group = INVALID_GROUP, bool need_existing_window = false) +void ShowCompanyGroup(CompanyID company, VehicleType vehicle_type, GroupID group, bool need_existing_window) { if (!Company::IsValidID(company)) return; diff --git a/src/group_gui.h b/src/group_gui.h index d42704663e..ec5f790d84 100644 --- a/src/group_gui.h +++ b/src/group_gui.h @@ -17,4 +17,15 @@ void ShowCompanyGroup(CompanyID company, VehicleType veh, GroupID group = INVALI void ShowCompanyGroupForVehicle(const Vehicle *v); void DeleteGroupHighlightOfVehicle(const Vehicle *v); +struct GUIGroupListItem { + const Group *group; + int8_t indent; ///< Display indentation level. + + constexpr GUIGroupListItem(const Group *group, int8_t indent) : group(group), indent(indent) {} +}; + +using GUIGroupList = GUIList; + +void BuildGuiGroupList(GUIGroupList &dst, bool fold, Owner owner, VehicleType veh_type); + #endif /* GROUP_GUI_H */ From 2485de9462ae02fd6fd2256970e2019795dc4fba Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 18 Mar 2024 20:32:38 +0000 Subject: [PATCH 03/70] Codefix: Widget should be passed as WidgetID type. (#12332) --- src/window_gui.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/window_gui.h b/src/window_gui.h index 19bf4d0334..0993b4c95f 100644 --- a/src/window_gui.h +++ b/src/window_gui.h @@ -476,7 +476,7 @@ public: * Marks a widget as raised and dirty (redraw), when it is marked as lowered. * @param widget_index index of this widget in the window */ - inline void RaiseWidgetWhenLowered(uint8_t widget_index) + inline void RaiseWidgetWhenLowered(WidgetID widget_index) { if (this->IsWidgetLowered(widget_index)) { this->RaiseWidget(widget_index); From 7580eac2d5437f6a131466d14cd68f08db4400d3 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Mon, 18 Mar 2024 18:56:46 +0100 Subject: [PATCH 04/70] Codechange: create helper class for useful NetworkAuthorizedKeys functions --- src/console_cmds.cpp | 21 ++----------- src/network/network.cpp | 51 +++++++++++++++++++++++++++++++ src/network/network_crypto.cpp | 8 ----- src/network/network_crypto.h | 8 +++-- src/network/network_type.h | 13 ++++++++ src/settings_type.h | 4 +-- src/tests/test_network_crypto.cpp | 14 ++++----- 7 files changed, 81 insertions(+), 38 deletions(-) diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp index 10e6810f14..6b88247dfb 100644 --- a/src/console_cmds.cpp +++ b/src/console_cmds.cpp @@ -1957,22 +1957,11 @@ DEF_CONSOLE_CMD(ConCompanyPassword) } /** All the known authorized keys with their name. */ -static std::vector *>> _console_cmd_authorized_keys{ +static std::vector> _console_cmd_authorized_keys{ { "rcon", &_settings_client.network.rcon_authorized_keys }, { "server", &_settings_client.network.server_authorized_keys }, }; -/** - * Simple helper to find the location of the given authorized key in the authorized keys. - * @param authorized_keys The keys to look through. - * @param authorized_key The key to look for. - * @return The iterator to the location of the authorized key, or \c authorized_keys.end(). - */ -static auto FindKey(std::vector *authorized_keys, std::string_view authorized_key) -{ - return std::find_if(authorized_keys->begin(), authorized_keys->end(), [authorized_key](auto &value) { return StrEqualsIgnoreCase(value, authorized_key); }); -} - DEF_CONSOLE_CMD(ConNetworkAuthorizedKey) { if (argc <= 2) { @@ -2016,11 +2005,8 @@ DEF_CONSOLE_CMD(ConNetworkAuthorizedKey) } } - auto iter = FindKey(authorized_keys, authorized_key); - if (StrEqualsIgnoreCase(argv[1], "add")) { - if (iter == authorized_keys->end()) { - authorized_keys->push_back(authorized_key); + if (authorized_keys->Add(authorized_key)) { IConsolePrint(CC_INFO, "Added {} to {}.", authorized_key, name); } else { IConsolePrint(CC_WARNING, "Not added {} to {} as it already exists.", authorized_key, name); @@ -2029,8 +2015,7 @@ DEF_CONSOLE_CMD(ConNetworkAuthorizedKey) } if (StrEqualsIgnoreCase(argv[1], "remove")) { - if (iter != authorized_keys->end()) { - authorized_keys->erase(iter); + if (authorized_keys->Remove(authorized_key)) { IConsolePrint(CC_INFO, "Removed {} from {}.", authorized_key, name); } else { IConsolePrint(CC_WARNING, "Not removed {} from {} as it does not exist.", authorized_key, name); diff --git a/src/network/network.cpp b/src/network/network.cpp index 784c5a8f37..717cf077dc 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -134,6 +134,57 @@ NetworkClientInfo::~NetworkClientInfo() return nullptr; } + +/** + * Simple helper to find the location of the given authorized key in the authorized keys. + * @param authorized_keys The keys to look through. + * @param authorized_key The key to look for. + * @return The iterator to the location of the authorized key, or \c authorized_keys.end(). + */ +static auto FindKey(auto *authorized_keys, std::string_view authorized_key) +{ + return std::find_if(authorized_keys->begin(), authorized_keys->end(), [authorized_key](auto &value) { return StrEqualsIgnoreCase(value, authorized_key); }); +} + +/** + * Check whether the given key is contains in these authorized keys. + * @param key The key to look for. + * @return \c true when the key has been found, otherwise \c false. + */ +bool NetworkAuthorizedKeys::Contains(std::string_view key) const +{ + return FindKey(this, key) != this->end(); +} + +/** + * Add the given key to the authorized keys, when it is not already contained. + * @param key The key to add. + * @return \c true when the key was added, \c false when the key already existed. + */ +bool NetworkAuthorizedKeys::Add(std::string_view key) +{ + auto iter = FindKey(this, key); + if (iter != this->end()) return false; + + this->emplace_back(key); + return true; +} + +/** + * Remove the given key from the authorized keys, when it is exists. + * @param key The key to remove. + * @return \c true when the key was removed, \c false when the key did not exist. + */ +bool NetworkAuthorizedKeys::Remove(std::string_view key) +{ + auto iter = FindKey(this, key); + if (iter == this->end()) return false; + + this->erase(iter); + return true; +} + + uint8_t NetworkSpectatorCount() { uint8_t count = 0; diff --git a/src/network/network_crypto.cpp b/src/network/network_crypto.cpp index 7c56a1d988..03ee988bb7 100644 --- a/src/network/network_crypto.cpp +++ b/src/network/network_crypto.cpp @@ -423,14 +423,6 @@ void CombinedAuthenticationServerHandler::Add(CombinedAuthenticationServerHandle this->SendResponse(); } -/* virtual */ bool NetworkAuthenticationDefaultAuthorizedKeyHandler::IsAllowed(std::string_view peer_public_key) const -{ - for (const auto &allowed : *this->authorized_keys) { - if (StrEqualsIgnoreCase(allowed, peer_public_key)) return true; - } - return false; -} - /** * Create a NetworkAuthenticationClientHandler. diff --git a/src/network/network_crypto.h b/src/network/network_crypto.h index 60e2b6b71b..d2fc604cd0 100644 --- a/src/network/network_crypto.h +++ b/src/network/network_crypto.h @@ -33,6 +33,8 @@ #ifndef NETWORK_CRYPTO_H #define NETWORK_CRYPTO_H +#include "network_type.h" + /** * Base class for handling the encryption (or decryption) of a network connection. */ @@ -158,16 +160,16 @@ public: */ class NetworkAuthenticationDefaultAuthorizedKeyHandler : public NetworkAuthenticationAuthorizedKeyHandler { private: - const std::vector *authorized_keys; ///< The authorized keys to check against. + const NetworkAuthorizedKeys *authorized_keys; ///< The authorized keys to check against. public: /** * Create the handler that uses the given authorized keys to check against. * @param authorized_keys The reference to the authorized keys to check against. */ - NetworkAuthenticationDefaultAuthorizedKeyHandler(const std::vector &authorized_keys) : authorized_keys(&authorized_keys) {} + NetworkAuthenticationDefaultAuthorizedKeyHandler(const NetworkAuthorizedKeys &authorized_keys) : authorized_keys(&authorized_keys) {} bool CanBeUsed() const override { return !this->authorized_keys->empty(); } - bool IsAllowed(std::string_view peer_public_key) const override; + bool IsAllowed(std::string_view peer_public_key) const override { return authorized_keys->Contains(peer_public_key); } }; diff --git a/src/network/network_type.h b/src/network/network_type.h index faa81a8d35..a3c0f47e74 100644 --- a/src/network/network_type.h +++ b/src/network/network_type.h @@ -150,4 +150,17 @@ enum NetworkErrorCode { NETWORK_ERROR_END, }; +/** + * Simple helper to (more easily) manage authorized keys. + * + * The authorized keys are hexadecimal representations of their binary form. + * The authorized keys are case insensitive. + */ +class NetworkAuthorizedKeys : public std::vector { +public: + bool Contains(std::string_view key) const; + bool Add(std::string_view key); + bool Remove(std::string_view key); +}; + #endif /* NETWORK_TYPE_H */ diff --git a/src/settings_type.h b/src/settings_type.h index 17941ae0a4..017a74664e 100644 --- a/src/settings_type.h +++ b/src/settings_type.h @@ -313,9 +313,9 @@ struct NetworkSettings { std::string server_invite_code_secret; ///< Secret to proof we got this invite code from the Game Coordinator. std::string server_name; ///< name of the server std::string server_password; ///< password for joining this server - std::vector server_authorized_keys; ///< Public keys of clients that are authorized to connect to the game. + NetworkAuthorizedKeys server_authorized_keys; ///< Public keys of clients that are authorized to connect to the game. std::string rcon_password; ///< password for rconsole (server side) - std::vector rcon_authorized_keys; ///< Public keys of clients that are authorized to use the rconsole (server side). + NetworkAuthorizedKeys rcon_authorized_keys; ///< Public keys of clients that are authorized to use the rconsole (server side). std::string admin_password; ///< password for the admin network std::string client_name; ///< name of the player (as client) std::string client_secret_key; ///< The secret key of the client for authorized key logins. diff --git a/src/tests/test_network_crypto.cpp b/src/tests/test_network_crypto.cpp index 34cbefaf27..33838a6ac9 100644 --- a/src/tests/test_network_crypto.cpp +++ b/src/tests/test_network_crypto.cpp @@ -118,8 +118,8 @@ TEST_CASE("Authentication_PAKE") static void TestAuthenticationAuthorizedKey(const X25519SecretKey &client_secret_key, const X25519PublicKey &server_expected_public_key, NetworkAuthenticationServerHandler::ResponseResult expected_response_result) { - std::vector authorized_keys; - authorized_keys.emplace_back(FormatArrayAsHex(server_expected_public_key)); + NetworkAuthorizedKeys authorized_keys; + authorized_keys.Add(FormatArrayAsHex(server_expected_public_key)); NetworkAuthenticationDefaultAuthorizedKeyHandler authorized_key_handler(authorized_keys); X25519AuthorizedKeyServerHandler server(X25519SecretKey::CreateRandom(), &authorized_key_handler); @@ -151,15 +151,15 @@ TEST_CASE("Authentication_Combined") auto client_public_key = client_secret_key.CreatePublicKey(); std::string client_public_key_str = FormatArrayAsHex(client_public_key); - std::vector valid_authorized_keys; - valid_authorized_keys.emplace_back(client_public_key_str); + NetworkAuthorizedKeys valid_authorized_keys; + valid_authorized_keys.Add(client_public_key_str); NetworkAuthenticationDefaultAuthorizedKeyHandler valid_authorized_key_handler(valid_authorized_keys); - std::vector invalid_authorized_keys; - invalid_authorized_keys.emplace_back("not-a-valid-authorized-key"); + NetworkAuthorizedKeys invalid_authorized_keys; + invalid_authorized_keys.Add("not-a-valid-authorized-key"); NetworkAuthenticationDefaultAuthorizedKeyHandler invalid_authorized_key_handler(invalid_authorized_keys); - std::vector no_authorized_keys; + NetworkAuthorizedKeys no_authorized_keys; NetworkAuthenticationDefaultAuthorizedKeyHandler no_authorized_key_handler(no_authorized_keys); std::string no_password = ""; From 737e3feaf024f2ccebc4fdee9ec468a8f6c133de Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 18 Mar 2024 23:39:42 +0000 Subject: [PATCH 05/70] Codechange: Don't delete news items or NewGRF window when EffectVehicle is deleted. (#12334) EffectVehicles never create news and can't be debugged, so searching for news items and windows to delete just wastes time. --- src/vehicle.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/vehicle.cpp b/src/vehicle.cpp index ccd259cb36..044c8013c9 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -908,8 +908,10 @@ Vehicle::~Vehicle() UpdateVehicleTileHash(this, true); UpdateVehicleViewportHash(this, INVALID_COORD, 0, this->sprite_cache.old_coord.left, this->sprite_cache.old_coord.top); - DeleteVehicleNews(this->index, INVALID_STRING_ID); - DeleteNewGRFInspectWindow(GetGrfSpecFeature(this->type), this->index); + if (this->type != VEH_EFFECT) { + DeleteVehicleNews(this->index, INVALID_STRING_ID); + DeleteNewGRFInspectWindow(GetGrfSpecFeature(this->type), this->index); + } } /** From 3a3d8f3b538d38da263b08a60a91a1f48cb22412 Mon Sep 17 00:00:00 2001 From: translators Date: Tue, 19 Mar 2024 04:41:12 +0000 Subject: [PATCH 06/70] Update: Translations from eints english (au): 2 changes by krysclarke norwegian (bokmal): 2 changes by eriksorngard chinese (simplified): 31 changes by lysinelai greek: 7 changes by Xertoveizer ukrainian: 14 changes by StepanIvasyn danish: 2 changes by bscargo lithuanian: 15 changes by dziugas1959 spanish: 2 changes by MontyMontana french: 2 changes by glx22 portuguese (brazilian): 52 changes by pasantoro polish: 2 changes by pAter-exe --- src/lang/brazilian_portuguese.txt | 102 +++++++++++++++--------------- src/lang/danish.txt | 2 + src/lang/english_AU.txt | 2 + src/lang/french.txt | 2 + src/lang/greek.txt | 7 ++ src/lang/lithuanian.txt | 16 ++++- src/lang/norwegian_bokmal.txt | 2 + src/lang/polish.txt | 2 + src/lang/simplified_chinese.txt | 60 +++++++++--------- src/lang/spanish.txt | 2 + src/lang/ukrainian.txt | 26 ++++---- 11 files changed, 131 insertions(+), 92 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 78ad63e829..1ff4c07c7e 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -107,7 +107,7 @@ STR_QUANTITY_STEEL :{WEIGHT_LONG} d STR_QUANTITY_VALUABLES :{COMMA}{NBSP}saco{P "" s} de objetos de valor STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de minério de cobre STR_QUANTITY_MAIZE :{WEIGHT_LONG} de milho -STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruta +STR_QUANTITY_FRUIT :{WEIGHT_LONG} de frutas STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}saco{P "" s} de diamantes STR_QUANTITY_FOOD :{WEIGHT_LONG} de alimentos STR_QUANTITY_PAPER :{WEIGHT_LONG} de papel @@ -275,7 +275,7 @@ STR_LIST_FILTER_TOOLTIP :{BLACK}Digitar STR_TOOLTIP_GROUP_ORDER :{BLACK}Escolher a ordem de agrupamento STR_TOOLTIP_SORT_ORDER :{BLACK}Escolher a ordenação (descendente/ascendente) STR_TOOLTIP_SORT_CRITERIA :{BLACK}Escolher o critério de ordenação -STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Escolher o critério de procura +STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Escolher o critério de pesquisa STR_BUTTON_SORT_BY :{BLACK}Ordenar por STR_BUTTON_CATCHMENT :{BLACK}Cobertura STR_TOOLTIP_CATCHMENT :{BLACK}Mostrar/Ocultar a área de cobertura @@ -446,13 +446,13 @@ STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configurações STR_SETTINGS_MENU_AI_SETTINGS :Configurações de IA STR_SETTINGS_MENU_GAMESCRIPT_SETTINGS :Configurações de Script de Jogo STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configurações de NewGRF -STR_SETTINGS_MENU_SANDBOX_OPTIONS :Opções das trapaças +STR_SETTINGS_MENU_SANDBOX_OPTIONS :Opções de trapaças STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opções de transparência STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostrar nomes de localidades STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Mostrar nomes de estações STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :Mostrar nomes dos pontos de controle STR_SETTINGS_MENU_SIGNS_DISPLAYED :Mostrar placas -STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Mostrar placas e nomes dos concorrentes +STR_SETTINGS_MENU_SHOW_COMPETITOR_SIGNS :Mostrar placas/nomes dos concorrentes STR_SETTINGS_MENU_FULL_ANIMATION :Animação completa STR_SETTINGS_MENU_FULL_DETAIL :Máximo de detalhes STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Edifícios transparentes @@ -919,20 +919,20 @@ STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Abrir a STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_LIST :{WHITE}{STATION} não aceita mais: {CARGO_LIST} STR_NEWS_STATION_NOW_ACCEPTS_CARGO_LIST :{WHITE}{STATION} agora aceita: {CARGO_LIST} -STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subsídio expirou:{}{}{STRING} d{G e a} {STRING} para {STRING} agora não será subsidiado -STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subsídio retirado:{}{}Transportar {STRING} d{G e a} {STRING} para {STRING} não é mais subsidiado -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá {UNITS_YEARS_OR_MINUTES} de subsídio da autoridade local! +STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subsídio expirou:{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} agora não será subsidiado +STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subsídio retirado:{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} não é mais subsidiado +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá subsídio da autoridade local durante {UNITS_YEARS_OR_MINUTES}! ###length 4 -STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 150% durante {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 200% durante {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 300% durante {UNITS_YEARS_OR_MINUTES}! -STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}{STRING} d{G e a} {STRING} para {STRING} será pago a 400% durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá um adicional de 50% durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá o dobro da tarifa durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá o triplo da tarifa durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá o quádruplo da tarifa durante {UNITS_YEARS_OR_MINUTES}! STR_NEWS_ROAD_REBUILDING_MONTHS :{BIG_FONT}{BLACK}Tráfego caótico em {TOWN}!{}{}Programa de reconstrução de estradas financiado por {STRING} provoca 6 meses de sofrimento aos motoristas! STR_NEWS_ROAD_REBUILDING_MINUTES :{BIG_FONT}{BLACK}Tráfego caótico em {TOWN}!{}{}Programa de reconstrução de estradas financiado por {STRING} provoca 6 minutos de sofrimento aos motoristas! STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Monopólio de transporte! -STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MONTHS :{BIG_FONT}{BLACK}A autoridade local de {TOWN} assinou um contrato com {STRING} por 12 meses de direitos exclusivos de transporte! -STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MINUTES :{BIG_FONT}{BLACK}A autoridade local de {TOWN} assinou um contrato com {STRING} por 12 minutos de direitos exclusivos de transporte! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MONTHS :{BIG_FONT}{BLACK}A autoridade local de {TOWN} assinou um contrato com {STRING} concedendo 12 meses de direitos exclusivos de transporte! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MINUTES :{BIG_FONT}{BLACK}A autoridade local de {TOWN} assinou um contrato com {STRING} concedendo 12 minutos de direitos exclusivos de transporte! # Extra view window STR_EXTRA_VIEWPORT_TITLE :{WHITE}Janela de visualização {COMMA} @@ -1056,8 +1056,8 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Marque e STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Usar a fonte fixa tradicional STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Marque esta caixa se preferir usar o tipo de fonte tradicional de tamanho fixo -STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Fontes com bordas suaves -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Marque esta caixa para fontes redimensionáveis com contornos suaves +STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Fontes com contornos suaves +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Marque esta caixa para usar fontes redimensionáveis com contornos suaves STR_GAME_OPTIONS_GUI_SCALE_1X :1x STR_GAME_OPTIONS_GUI_SCALE_2X :2x @@ -2112,7 +2112,7 @@ STR_CONFIG_SETTING_INTERFACE :Interface STR_CONFIG_SETTING_INTERFACE_GENERAL :Geral STR_CONFIG_SETTING_INTERFACE_VIEWPORTS :Visualizações STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION :Construção -STR_CONFIG_SETTING_ADVISORS :Notícias / Conselheiros +STR_CONFIG_SETTING_ADVISORS :Notícias / Avisos STR_CONFIG_SETTING_COMPANY :Empresa STR_CONFIG_SETTING_ACCOUNTING :Contabilidade STR_CONFIG_SETTING_VEHICLES :Veículos @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Seu nome STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}O nome do seu servidor não foi definido. O nome pode ser definido na parte superior da janela de Multijogador STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}A versão deste cliente é incompatível com a versão do servidor STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Senha incorreta +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Você não está na lista de clientes permitidos STR_NETWORK_ERROR_SERVER_FULL :{WHITE}O servidor está cheio STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Você foi banido deste servidor STR_NETWORK_ERROR_KICKED :{WHITE}Você foi expulso do jogo @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :um pacote invá STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :versão incorreta STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nome já está em uso STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :senha incorreta +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :não está na lista de permissões STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :empresa errada em DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :expulso pelo servidor STR_NETWORK_ERROR_CLIENT_CHEATER :estava tentando trapacear @@ -3718,7 +3720,7 @@ STR_SUBSIDIES_CAPTION :{WHITE}Subsídi STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Subsídios oferecidos para serviços de transporte: STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({STRING}) STR_SUBSIDIES_NONE :{ORANGE}- Nenhum - -STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serviços já subsidiados: +STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serviços de transporte já subsidiados: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique em um serviço para centralizar visualização principal em uma indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade STR_SUBSIDIES_OFFERED_EXPIRY_DATE :até {DATE_SHORT} @@ -4627,8 +4629,8 @@ STR_ORDER_GO_NON_STOP_TO_WAYPOINT :Ir, sem parar, STR_ORDER_SERVICE_AT :Manutenção no STR_ORDER_SERVICE_NON_STOP_AT :Manutenção, sem parar, no -STR_ORDER_NEAREST_DEPOT :o mais próximo -STR_ORDER_NEAREST_HANGAR :o hangar mais próximo +STR_ORDER_NEAREST_DEPOT :mais próximo +STR_ORDER_NEAREST_HANGAR :hangar mais próximo ###length 3 STR_ORDER_TRAIN_DEPOT :Depósito Ferroviário STR_ORDER_ROAD_VEHICLE_DEPOT :Depósito Rodoviário @@ -4704,14 +4706,14 @@ STR_TIMETABLE_NO_TRAVEL :Não viajar STR_TIMETABLE_NOT_TIMETABLEABLE :Viajar (automático; programado pela próxima ordem manual) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED :Viajar (não programado) STR_TIMETABLE_TRAVEL_NOT_TIMETABLED_SPEED :Viajar (não programado) no máximo a {2:VELOCITY} -STR_TIMETABLE_TRAVEL_FOR :Viajar por {STRING} -STR_TIMETABLE_TRAVEL_FOR_SPEED :Viajar por {STRING} no máximo a {VELOCITY} -STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Viajar (por {STRING}, não programado) -STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Viajar (por {STRING}, não programado) no máximo a {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR :Viajar durante {STRING} +STR_TIMETABLE_TRAVEL_FOR_SPEED :Viajar durante {STRING} no máximo a {VELOCITY} +STR_TIMETABLE_TRAVEL_FOR_ESTIMATED :Viajar (durante {STRING}, não programado) +STR_TIMETABLE_TRAVEL_FOR_SPEED_ESTIMATED :Viajar (durante {STRING}, não programado) no máximo a {VELOCITY} STR_TIMETABLE_STAY_FOR_ESTIMATED :(ficar por {STRING}, não programado) -STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(viajar por {STRING}, não programado) +STR_TIMETABLE_AND_TRAVEL_FOR_ESTIMATED :(viajar durante {STRING}, não programado) STR_TIMETABLE_STAY_FOR :e ficar por {STRING} -STR_TIMETABLE_AND_TRAVEL_FOR :e viajar por {STRING} +STR_TIMETABLE_AND_TRAVEL_FOR :e viajar durante {STRING} STR_TIMETABLE_TOTAL_TIME :{BLACK}Este horário levará {STRING} para ser concluído STR_TIMETABLE_TOTAL_TIME_INCOMPLETE :{BLACK}Este horário levará pelo menos {STRING} para ser concluído (nem tudo está programado) @@ -5399,7 +5401,7 @@ STR_INDUSTRY_NAME_POWER_STATION :{G=f}Usina de E STR_INDUSTRY_NAME_SAWMILL :{G=f}Serraria STR_INDUSTRY_NAME_FOREST :{G=f}Floresta STR_INDUSTRY_NAME_OIL_REFINERY :{G=f}Refinaria de Petróleo -STR_INDUSTRY_NAME_OIL_RIG :{G=f}Plataforma de Petróleo +STR_INDUSTRY_NAME_OIL_RIG :{G=f}Plataforma Petrolífera STR_INDUSTRY_NAME_FACTORY :{G=f}Fábrica STR_INDUSTRY_NAME_PRINTING_WORKS :{G=f}Gráfica STR_INDUSTRY_NAME_STEEL_MILL :{G=f}Siderúrgica @@ -5445,33 +5447,33 @@ STR_SV_AIRCRAFT_NAME :Aeronave #{COMM ###length 27 STR_SV_STNAME :{STRING} -STR_SV_STNAME_NORTH :{STRING}, Norte -STR_SV_STNAME_SOUTH :{STRING}, Sul -STR_SV_STNAME_EAST :{STRING}, Leste -STR_SV_STNAME_WEST :{STRING}, Oeste -STR_SV_STNAME_CENTRAL :{STRING}, Centro -STR_SV_STNAME_TRANSFER :{STRING}, Transbordo -STR_SV_STNAME_HALT :{STRING}, Parada -STR_SV_STNAME_VALLEY :Vale de {STRING} -STR_SV_STNAME_HEIGHTS :Colinas de {STRING} -STR_SV_STNAME_WOODS :Bosque de {STRING} -STR_SV_STNAME_LAKESIDE :Litoral de {STRING} -STR_SV_STNAME_EXCHANGE :{STRING}, Intercâmbio -STR_SV_STNAME_AIRPORT :Aeroporto de {STRING} -STR_SV_STNAME_OILFIELD :Petrolífera de {STRING} -STR_SV_STNAME_MINES :Minas de {STRING} -STR_SV_STNAME_DOCKS :Docas de {STRING} +STR_SV_STNAME_NORTH :{STRING} Norte +STR_SV_STNAME_SOUTH :{STRING} Sul +STR_SV_STNAME_EAST :{STRING} Leste +STR_SV_STNAME_WEST :{STRING} Oeste +STR_SV_STNAME_CENTRAL :{STRING} Centro +STR_SV_STNAME_TRANSFER :{STRING} Transbordo +STR_SV_STNAME_HALT :{STRING} Parada +STR_SV_STNAME_VALLEY :{STRING} Vale +STR_SV_STNAME_HEIGHTS :{STRING} Colinas +STR_SV_STNAME_WOODS :{STRING} Bosque +STR_SV_STNAME_LAKESIDE :{STRING} Margens +STR_SV_STNAME_EXCHANGE :{STRING} Intercâmbio +STR_SV_STNAME_AIRPORT :{STRING} Aeroporto +STR_SV_STNAME_OILFIELD :{STRING} Petrolífera +STR_SV_STNAME_MINES :{STRING} Minas +STR_SV_STNAME_DOCKS :{STRING} Docas STR_SV_STNAME_BUOY :{STRING} STR_SV_STNAME_WAYPOINT :{STRING} ##id 0x6020 -STR_SV_STNAME_ANNEXE :{STRING}, Anexo -STR_SV_STNAME_SIDINGS :{STRING}, Desvios -STR_SV_STNAME_BRANCH :{STRING}, Ramal -STR_SV_STNAME_UPPER :Acima de {STRING} -STR_SV_STNAME_LOWER :Abaixo de {STRING} -STR_SV_STNAME_HELIPORT :Heliporto de {STRING} -STR_SV_STNAME_FOREST :Floresta de {STRING} -STR_SV_STNAME_FALLBACK :{STRING}, Estação #{NUM} +STR_SV_STNAME_ANNEXE :{STRING} Anexo +STR_SV_STNAME_SIDINGS :{STRING} Desvio +STR_SV_STNAME_BRANCH :{STRING} Ramal +STR_SV_STNAME_UPPER :{STRING} Superior +STR_SV_STNAME_LOWER :{STRING} Inferior +STR_SV_STNAME_HELIPORT :{STRING} Heliporto +STR_SV_STNAME_FOREST :{STRING} Floresta +STR_SV_STNAME_FALLBACK :{STRING} Estação #{NUM} ############ end of savegame specific region! diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 1770c0772a..6439fbb633 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Dit spil STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Dit servernavn er ikke indstillet. Navnet kan indstilles øverst i Netværksspil vinduet STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Revisionen af denne klient passer ikke sammen med serverens revision STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Forkert kodeord +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Du er ikke på listen over tilladte klienter STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Serveren er fuld STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Du er udelukket fra denne server STR_NETWORK_ERROR_KICKED :{WHITE}Du blev smidt ud af spillet @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :modtog en ikke STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :forkert revision STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :navnet er allerede i brug STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :forkert spil kodeord +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :ikke på listen over tilladelser STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :forkert firma-id i DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :smidt ud af serveren STR_NETWORK_ERROR_CLIENT_CHEATER :prøvede at snyde diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index f79c32acec..3427437456 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Your pla STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Your server name has not been set. The name can be set at the top of the Multiplayer window STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}The revision of this client does not match the server's revision STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Wrong password +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}You are not on the list of allowed clients STR_NETWORK_ERROR_SERVER_FULL :{WHITE}The server is full STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}You are banned from this server STR_NETWORK_ERROR_KICKED :{WHITE}You were kicked out of the game @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :received invali STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :wrong revision STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :name already in use STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :wrong password +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :not on allow list STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :wrong company in DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :kicked by server STR_NETWORK_ERROR_CLIENT_CHEATER :was trying to use a cheat diff --git a/src/lang/french.txt b/src/lang/french.txt index 0f70007496..503c99c91b 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Vous n'a STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Le nom de serveur n'a pas été défini. Le nom peut être défini en haut de la fenêtre multijoueur STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Le numéro de version/révision de ce client ne correspond pas à celui du serveur STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Mot de passe incorrect +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Vous n'êtes pas sur la liste des clients autorisés STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Le serveur est complet STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Vous êtes banni de ce serveur STR_NETWORK_ERROR_KICKED :{WHITE}Vous avez été exclu de la partie @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :paquet invalide STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :n° de version/révision incorrect STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nom déjà utilisé STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :mot de passe de partie incorrect +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :pas sur la liste d'autorisation STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :mauvais company-id dans DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :exclu par le serveur STR_NETWORK_ERROR_CLIENT_CHEATER :a tenté de tricher diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 6cad1496a2..b317bf0f12 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -314,6 +314,7 @@ STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP} # Time units used in string control characters +STR_UNITS_MINUTES :{NUM}{NBSP}λεπτ{P ό ά} # Common window strings @@ -997,7 +998,13 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Επικ STR_GAME_OPTIONS_CAPTION :{WHITE}Επιλογές Παιχνιδιού STR_GAME_OPTIONS_TAB_GENERAL :Γενικά +STR_GAME_OPTIONS_TAB_GENERAL_TT :{BLACK}Επιλέξτε γενικές ρυθμίσεις +STR_GAME_OPTIONS_TAB_GRAPHICS :Γραφικά +STR_GAME_OPTIONS_TAB_GRAPHICS_TT :{BLACK}Επιλέξτε ρυθμίσεις γραφικών STR_GAME_OPTIONS_TAB_SOUND :Ήχος +STR_GAME_OPTIONS_TAB_SOUND_TT :{BLACK}Επιλέξτε ρυθμίσεις ήχου και μουσικής +STR_GAME_OPTIONS_TAB_SOCIAL :Κοινωνικά +STR_GAME_OPTIONS_TAB_SOCIAL_TT :{BLACK}Επιλέξτε ρυθμίσεις κοινωνικής ενσωμάτωσης diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 5a5bdacd65..4c761c6713 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -2287,9 +2287,11 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Rodyti t STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Rodyti automobilių spalvas STR_LIVERY_SHIP_TOOLTIP :{BLACK}Rodyti laivų spalvas STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Rodyti lėktuvų spalvas +STR_LIVERY_TRAIN_GROUP_TOOLTIP :{BLACK}Rodyti traukinių grupių spalvas STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Pasirinkite pirminę spalvą pasirinktai schemai. Spustelėjus laikant nuspaustą Ctrl klavišą, pasirinkta spava bus nustatyta visoms schemoms. STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Pasirinkite antrinę spalvą pasirinktai schemai. Spustelėjus laikant nuspaustą Ctrl klavišą, pasirinkta spava bus nustatyta visoms schemoms. STR_LIVERY_PANEL_TOOLTIP :{BLACK}Pasirinkite objektą, kurio spalvas norite pakeisti. Spragsint laikant nuspaustą Ctrl klavišą, galėsite pasirinkti iškart kelis objektus. +STR_LIVERY_TRAIN_GROUP_EMPTY :Nėra nustatytų traukinių grupių ###length 23 STR_LIVERY_DEFAULT :Numatytosios spalvos @@ -2514,6 +2516,10 @@ STR_NETWORK_ASK_RELAY_NO :{BLACK}Ne STR_NETWORK_ASK_RELAY_YES_ONCE :{BLACK}Taip, bet tik šįkart STR_NETWORK_ASK_RELAY_YES_ALWAYS :{BLACK}Taip, ir prašau nebeklausti +STR_NETWORK_ASK_SURVEY_CAPTION :Dalyvauti automatinėje apklausoje? +STR_NETWORK_ASK_SURVEY_PREVIEW :Peržiūrėti apklausos rezultatus +STR_NETWORK_ASK_SURVEY_LINK :Apie apklausą ir privatumą +STR_NETWORK_ASK_SURVEY_NO :Ne STR_NETWORK_SPECTATORS :Stebėtojai @@ -3251,10 +3257,12 @@ STR_MAPGEN_MAPSIZE :{BLACK}Žemėla STR_MAPGEN_MAPSIZE_TOOLTIP :{BLACK}Pasirinkite žemėlapio dydį langeliais. Prieinamų langelių skaičius bus šiek tiek mažesnis. STR_MAPGEN_BY :{BLACK}* STR_MAPGEN_NUMBER_OF_TOWNS :{BLACK}Miestų kiekis: +STR_MAPGEN_NUMBER_OF_TOWNS_TOOLTIP :{BLACK}Pasirinkti gyvenviečių tankumą, arba pasirinktinę reikšmę STR_MAPGEN_TOWN_NAME_LABEL :{BLACK}Miestų pavadinimai: STR_MAPGEN_TOWN_NAME_DROPDOWN_TOOLTIP :{BLACK}Pasirink miestų pavadinimų tipą STR_MAPGEN_DATE :{BLACK}Pradžios data: STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Pramonės įmonių kiekis: +STR_MAPGEN_NUMBER_OF_INDUSTRIES_TOOLTIP :{BLACK}Pasirinkti pramonės tankumą, arba pasirinktinę reikšmę STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Didžiausias aukštis STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Padidinti didžiausią galimą reljefo aukštį vienetu STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Sumažinti didžiausią galimą reljefo aukštį vienetu @@ -3274,6 +3282,7 @@ STR_MAPGEN_VARIETY :{BLACK}Įvairov STR_MAPGEN_GENERATE :{WHITE}Sukurti STR_MAPGEN_NEWGRF_SETTINGS :{BLACK}NewGRF Nustatymai STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Rodyti NewGRF nustatymus +STR_MAPGEN_AI_SETTINGS :{BLACK}DI nustatymai STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Rodyti DI nustatymus STR_MAPGEN_GS_SETTINGS :{BLACK}Žaidimo scenarijaus nustatymai STR_MAPGEN_GS_SETTINGS_TOOLTIP :{BLACK}Rodyti žaidimo scenarijaus nustatymus @@ -3330,6 +3339,7 @@ STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Lygi že STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Sukurti lygią žemę STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Atsitiktinis reljefas STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Lygumos aukštis: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_TOOLTIP :{BLACK}Pasirinkite žemės aukštį virš jūros lygio STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Pakeisti lygumos aukštį vienu žemyn STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Pakelti žemės lygį vienu aukščiu @@ -3767,10 +3777,11 @@ STR_FINANCES_CAPITAL_EXPENSES_TITLE :{WHITE}Kapitali STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Konstrukcijos STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Nauja technika STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Traukinių sąnaudos -STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Automobilių sąnaudos +STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Kelio transporto priemonės STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Lėktuvų sąnaudos STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Laivų sąnaudos STR_FINANCES_SECTION_TRAIN_REVENUE :{GOLD}Traukiniai +STR_FINANCES_SECTION_ROAD_VEHICLE_REVENUE :{GOLD}Transporto priemonės STR_FINANCES_SECTION_AIRCRAFT_REVENUE :{GOLD}Lėktuvas STR_FINANCES_SECTION_LOAN_INTEREST :{GOLD}Paskolos palūkanos STR_FINANCES_SECTION_OTHER :{GOLD}Kita @@ -3781,6 +3792,7 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN STR_FINANCES_PROFIT :{WHITE}Pelnas STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Sąskaitos balansas STR_FINANCES_LOAN_TITLE :{WHITE}Paskola +STR_FINANCES_INTEREST_RATE :{WHITE}Paskolų palūkanos: {BLACK}{NUM}% STR_FINANCES_MAX_LOAN :{WHITE}Didžiausia paskola: {BLACK}{CURRENCY_LONG} STR_FINANCES_TOTAL_CURRENCY :{BLACK}{CURRENCY_LONG} STR_FINANCES_BANK_BALANCE :{WHITE}{CURRENCY_LONG} @@ -5194,6 +5206,8 @@ STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... lėk # Extra messages which go on the third line of errors, explaining why orders failed STR_ERROR_NO_AIRPORT :{WHITE}Nėra jokio oro ar sraigtasparnio uosto +STR_ERROR_NO_STOP_COMPATIBLE_ROAD_TYPE :{WHITE}Nėra jokių stabdymų su palaikomu keliu (tipu) +STR_ERROR_NO_STOP_COMPATIBLE_TRAM_TYPE :{WHITE}Nėra jokių stabdymų su palaikomu tramvajaus tipu # Timetable related errors STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Neįmanoma sudaryti grafiko... diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 671d576a71..43722b0af0 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -2576,6 +2576,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Spillern STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Du har ikke valgt tjenernavn. Navnet kan velges øverst i flerspillervinduet STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Klientversjonen er ikke den samme som tjenerversjonen STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Feil passord +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Du står ikke på listen over tillatte klienter STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Tjeneren er full STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Du er bannlyst fra denne tjeneren STR_NETWORK_ERROR_KICKED :{WHITE}Du ble kastet ut av spillet @@ -2603,6 +2604,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :mottok ugyldig STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :feil versjon STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :navnet er allerede i bruk STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :feil passord +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :ikke på tillattliste STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :feil selskap i DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :kastet ut av tjeneren STR_NETWORK_ERROR_CLIENT_CHEATER :prøvde å jukse diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 9105a3c14a..e579023bd2 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -2954,6 +2954,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Twoja na STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Nazwa twojego serwera nie została ustawiona. Nazwę można ustawić w górnej części okna Gra wieloosobowa STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Wersja gry nie zgadza się z wersją gry na serwerze STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Złe hasło +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Nie ma cię na liście dopuszczonych klientów STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Serwer jest pełny STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Masz zabroniony dostęp do tego serwera STR_NETWORK_ERROR_KICKED :{WHITE}Zostałeś wyrzucony z serwera @@ -2981,6 +2982,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :odebrany niezna STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :zła wersja STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nazwa już w użyciu STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :złe hasło gry +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :brak na liście dopuszczonych STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :zła nazwa firmy w DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :wyrzucony przez serwer STR_NETWORK_ERROR_CLIENT_CHEATER :próbował użyć ułatwień diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 9e00518369..13193a82a0 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -1054,9 +1054,9 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}适应 STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}选中此框使边框大小随界面大小而缩放 STR_GAME_OPTIONS_GUI_FONT_SPRITE :使用位图字体 -STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}如果您想使用固定大小的传统位图字体,请勾选此框。 +STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}如果您想使用固定大小的传统位图字体,请勾选此框 STR_GAME_OPTIONS_GUI_FONT_AA :字体抗锯齿 -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :勾选此框以对游戏字体应用抗锯齿。 +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}勾选此框以对游戏字体应用抗锯齿 STR_GAME_OPTIONS_GUI_SCALE_1X :1倍 STR_GAME_OPTIONS_GUI_SCALE_2X :2倍 @@ -1275,7 +1275,7 @@ STR_CONFIG_SETTING_INFINITE_MONEY :无限资金: { STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :允许无限制的支出并禁止公司破产 STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :最大初始贷款: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :公司最大贷款额(不考虑通货膨胀的影响)。如果此项被设为“无贷款”则开局时不会有任何金钱提供。此时金钱需要由沙盒选项、无限金钱或者游戏脚本提供。 +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :公司最大贷款额(不考虑通货膨胀的影响)。如果此项被设为“无贷款”则开局时不会有任何金钱提供,此时金钱需要由“无限金钱”选项或者游戏脚本提供 STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_VALUE :{CURRENCY_LONG} ###setting-zero-is-special STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_DISABLED :无贷款 @@ -1359,7 +1359,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :汽车斜坡坡 STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :设置对汽车而言,一格斜坡的坡度大小。数值越高,坡度越大,汽车越难爬上斜坡。 STR_CONFIG_SETTING_FORBID_90_DEG :禁止列车直角转向:{STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :当水平方向轨道与垂直方向轨道交叉时,没有采用45度的轨道组合连接,而是采用轨道90度直接连接时,列车通过时需要90度转弯,当本设置”打开“时,将禁止火车90度转弯。 +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :当相邻的两个方块上有一条水平轨道和一条垂直轨道相接时,就会形成一个90度的转角,火车在穿越此方块边界时将转弯90度,而不是像其他形式的轨道转弯时形成的45度转角。如果打开此选项,那么火车将无法在这样的转角转弯 STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :允许非毗邻站台合并:{STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :启用时允许玩家用 键操作以合并不相邻的站台与车站。 @@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :公司初始主 STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :选定公司的初始配色方案 STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY :公司初始副色调: {STRING} -STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :选择公司初始副色调,需要使用支持副色调的NewGRF。 +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :选择公司初始副色调,需要使用支持副色调的NewGRF STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :总允许建设小型机场: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :“打开”此选项,每种类型机场出现后一直是可用的 @@ -1495,22 +1495,22 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :载具永不过 STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :启用时,所有载具一经面世,就可以永远选择购买使用。 STR_CONFIG_SETTING_TIMEKEEPING_UNITS :时间模式:{STRING} -STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :选择游戏的计时模式。 请注意此项无法在游戏进行时更改{}{}日历模式为经典的 OpenTTD 体验,在此模式中,一年由 12 个月组成,每个月有 28-31 天。{}{}在挂钟模式中,车辆移动、货物生产和财务计算等都以分钟为单位,一分钟约等于日历模式中的一个月,即 30 天。此模式下每 12 分钟即日历模式下的一年。{}{}两种模式都包含一个用来记录载具、房屋与其他基础设施引入日期的计时器。 +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :选择游戏的计时模式。 请注意此项无法在游戏进行时更改{}{}日历模式为经典的 OpenTTD 体验,在此模式中,一年由 12 个月组成,每个月有 28-31 天。{}{}在挂钟模式中,车辆移动、货物生产和财务计算等都以分钟为单位,一分钟约等于日历模式中的一个月,即 30 天。此模式下每 12 分钟即日历模式下的一年。{}{}两种模式都包含一个用来记录载具、房屋与其他基础设施引入日期的计时器 ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :日历 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :挂钟 STR_CONFIG_SETTING_MINUTES_PER_YEAR :一年分钟数:{STRING} -STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :选择在使用挂钟模式时,一年的分钟数。默认为 12 分钟,设置为 0 可停止日历时间的变化。此设置不影响游戏的经济模拟。 +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :选择游戏内一自然年的现实时间长度,默认为12分钟。设置为0则日期不会变化。此设定不会影响游戏的经济模拟系统,而且仅在启用挂钟计时模式时生效 STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0(日期停止) STR_CONFIG_SETTING_TOWN_CARGO_SCALE :城镇货物产出倍数:{STRING} -STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :按此比例扩大城镇的货物生产规模。 +STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :按此比例扩大城镇的货物生产规模 STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :工业货物产出倍数:{STRING} -STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :按此比例扩大工业的货物生产规模。 +STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :按此比例扩大工业的货物生产规模 STR_CONFIG_SETTING_CARGO_SCALE_VALUE :{NUM}% STR_CONFIG_SETTING_AUTORENEW_VEHICLE :当车辆报废时自动更新:{STRING} @@ -1529,7 +1529,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :错误信息持 STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :红色窗口显示错误信息的持续时间,在这个时间内一些紧急的错误信息不会自动关闭,必须手动关闭 STR_CONFIG_SETTING_HOVER_DELAY :显示提示信息:{STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :此设置决定鼠标停留在图标、按键或功能时显示提示信息的时间。如果此设置被赋值为 0,您必须揿住鼠标右键来显示图标、按键或功能的提示信息。 +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :此设置决定鼠标停留在图标、按键或功能时显示提示信息的时间。如果此设置为 0,您就必须按鼠标右键来显示图标、按键或功能的提示信息 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :停留 {COMMA} 毫秒 ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :右键点击 @@ -1541,8 +1541,8 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :图表曲线宽 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_SHOW_CARGO_IN_LISTS :在列表窗口中显示车辆可以携带的货物 {STRING} +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :在购买载具窗口中添加一行,显示选中的载具来自哪个 NewGRF +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :在列表窗口中显示车辆可以运载的货物种类 {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :如果启用,车辆的可运输负载将出现在车辆列表的上方 STR_CONFIG_SETTING_LANDSCAPE :景观: {STRING} @@ -1561,7 +1561,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY :工业布局: { STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :设置地图生成过程中,工业数量及一、二级工业比例。 STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :石油工业距地图边缘的最大距离:{STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :限制炼油厂和油井到地图边缘或海岛海岸的最大距离。对于大于 256 格的地图,该值将按比例放大。 +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :限制炼油厂和油井到地图边缘或海岛海岸的最大距离。对于大于 256 格的地图,该值将按比例放大 STR_CONFIG_SETTING_SNOWLINE_HEIGHT :雪线高度:{STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :控制在寒带气候中雪线高度。大雪会影响工业和城镇发展需求。只能在场景编辑器中更改或由“雪地比率”计算得到。 @@ -1575,7 +1575,7 @@ STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :控制热带气 STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :地面粗糙度:{STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :选择在地图上的山丘密度。光滑的地形会包含较少且相互之间较分散的山丘;粗糙的地形的山丘较密集,但可能会使地图显得重复 +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :选择在地图上的山丘密度和形状。光滑的地形会包含较少且较为广阔的山丘;粗糙的地形会包含更多,但是更小一些的山丘 ###length 4 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :非常光滑 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :光滑 @@ -1583,7 +1583,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :粗糙 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :非常粗糙 STR_CONFIG_SETTING_VARIETY :多样地形: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :此设置控制地图是否同时包含多山及平坦的地带。由于此设置只会使地图的一部份変得较平坦,请把其他相关设置(如 "地形特点")的值设为 "山地" +STR_CONFIG_SETTING_VARIETY_HELPTEXT :此设置控制地图是否同时包含多山及平坦的地带。多样性越丰富,山地和平地之间的海拔差距就越大 STR_CONFIG_SETTING_RIVER_AMOUNT :河流数量: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :选择生成河流的数量 @@ -1754,7 +1754,7 @@ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :建造铁路时 STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :建造铁路时自动移除路过的信号灯。注意,这可能导致火车事故。 STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :快进速度上限:{STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :限制快进时的最大速度。0 = 无限制(在您计算机允许的范围内)。低于 100% 的值将使游戏变慢。上限取决于您计算机的配置,并随着游戏情况浮动。 +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :限制快进时的最大速度。0 = 无限制(即电脑性能允许的最快速度)。低于 100% 的值将使游戏变慢。上限取决于您计算机的配置,并可能随着游戏情况浮动 STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% 正常游戏速度 ###setting-zero-is-special STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :无限制(在您计算机允许的范围内) @@ -1818,7 +1818,7 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :“打开”时 STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :不令脚本停运的最大代码数量:{STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :设定在每个计算循环中,脚本(AI与游戏脚本)的每一句代码最多可进行多少个计算步骤。 STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :每个脚本的内存上限: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :单个脚本(AI与游戏脚本)可使用的最大内存量,在游玩大型地图时可能需要增加。 +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :单个脚本(AI与游戏脚本)可使用的最大内存量,在游玩大型地图时可能需要增加 STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :维护间隔以百分比(%)计算: {STRING} @@ -1840,7 +1840,7 @@ STR_CONFIG_SETTING_NOSERVICE :在无故障模 STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :“打开”时,在无故障模式下,车辆禁用保养周期 STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :站台长度装卸惩罚:{STRING} -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :启用站台长度装卸惩罚。过长的火车将会在站台中装卸得更慢。此项设置不会影响寻路。 +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :启用站台长度装卸惩罚。过长的火车将会在站台中装卸得更慢。此项设置不会影响寻路 STR_CONFIG_SETTING_WAGONSPEEDLIMITS :列车车厢速度限制:{STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :启用时,列车的最高速度将取决于车厢的速度上限。 @@ -1905,13 +1905,13 @@ 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_HELPTEXT :游戏结束计分的年份。在这一年的年底,公司的分数将被记录,并展示高分榜;在此之后玩家仍可继续游戏。{}如果该年份早于游戏开始年份,则高分榜将不会展示 STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :从不 STR_CONFIG_SETTING_ECONOMY_TYPE :经济类型:{STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :平滑经济产生更小幅度更频繁的产量变动。冻结经济停止产量变动和工业倒闭。该设置可能对 NewGRF 提供的工业不起作用。 +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :平滑经济产生更小幅度更频繁的产量变动。冻结经济停止产量变动和工业倒闭。该设置可能对 NewGRF 提供的工业不起作用 ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :原版 STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :平滑 @@ -1966,7 +1966,7 @@ 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_HELPTEXT :城镇房屋的客货产出与人口的关系。{}平方增长:两倍大小的城镇生产四倍的旅客。{}线性增长:两倍大小的城镇生产两倍的旅客 ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :四倍(原版) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :线性 @@ -2007,7 +2007,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4 倍 STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8 倍 STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :贴图的最高分辨率:{STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :限制贴图的最高分辨率。限制贴图分辨率将避免使用高分辨率贴图,即使它们可用。有助于在混用有/无高分辨率图形的 GRF 文件时保持游戏外观的统一。 +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :限制贴图的最高分辨率。限制贴图分辨率将避免使用高分辨率贴图,即使它们可用。有助于在混用有/无高分辨率图形的 GRF 文件时保持游戏外观的统一 ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4 倍 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2 倍 @@ -2057,7 +2057,7 @@ STR_CONFIG_SETTING_DEMAND_SIZE :在对称模式 STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :如果把此设定赋一个少于100%的值,则到达某站的货物不会全部被送回始发站。{}如果此设定被赋值为0%,則“对称”模式的表现跟“不对称”模式完全一样 STR_CONFIG_SETTING_SHORT_PATH_SATURATION :如果最短路径的饱和度超过{STRING},把货物改派往容量较大的路径 -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :货物分配功能在派送货物时,会优先使用最短路径,当它饱和后改用第二短的路径,如此类推。当所有路径皆饱和但仍未满足需求,系统會由容量较大的路径开始继续加载货物。{}由于路径饱和度难以准确估算,此设定容许您定义一值,使短路径达到该饱和度后,系统便开始加载容量较大的路径。{}如果此设定的值少於100%,就算系统高估路径容量,也不會使过多的货物滞留在站台上。 +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :在两个给定的站点之间常常会会有多条不同的路径。货物分配算法会优先使用最短的路径,在其饱和后再使用第二短的路径,依此类推。路径的饱和度是用运载容量和计划使用量估算的。在所有路径都饱和的时候,算法会向所有路径超额装载货物,优先使用容量较高的路径。但是在多数场合算法无法准确计算容量。此设定允许您设定在较短的路径的饱和度达到设定值之后再装载下一条路径。将此值设定为小于100%,就可避免因过量估算容量而导致的站点超载 STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :速度单位(陆地):{STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :速度单位(航海):{STRING} @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}你没 STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}你没有设置服务器名。玩家名可在联机游戏窗口的上面设置 STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}此客户端版本与服务器端不匹配 STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}密码错误 +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}你不在白名单所允许的客户端范围内 STR_NETWORK_ERROR_SERVER_FULL :{WHITE}服务器已经满员 STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}您已被该服务器封禁 STR_NETWORK_ERROR_KICKED :{WHITE}您已被踢出服务器 @@ -2601,6 +2602,7 @@ 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_NOT_ON_ALLOW_LIST :不在允许列表内 STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :错误的公司ID于DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :被服务器踢出 STR_NETWORK_ERROR_CLIENT_CHEATER :正在尝试作弊 @@ -3190,7 +3192,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :公司所有土 # About OpenTTD window STR_ABOUT_OPENTTD :{WHITE}关于 OpenTTD -STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原始版权由 {COPYRIGHT} 1995 Chris Sawyer 所有,保留一切权力。 +STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}原始版权由 {COPYRIGHT} 1995 Chris Sawyer 所有,保留所有权利 STR_ABOUT_VERSION :{BLACK}OpenTTD 版本 {REV} STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} OpenTTD 团队 @@ -3198,11 +3200,11 @@ 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_GAMELOOP_TOOLTIP :{BLACK}每秒模拟的游戏刻数 STR_FRAMERATE_RATE_BLITTER :{BLACK}帧率:{STRING} -STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}每秒渲染更新的图像帧。 +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}每秒渲染更新的图像帧 STR_FRAMERATE_SPEED_FACTOR :{BLACK}当前游戏速度:{DECIMAL}x -STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}当前游戏运行速度,与正常速度之比率 +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}当前游戏运行速度与正常速度相比的比值 STR_FRAMERATE_CURRENT :{WHITE}当前 STR_FRAMERATE_AVERAGE :{WHITE}平均 STR_FRAMERATE_MEMORYUSE :{WHITE}内存 @@ -3731,7 +3733,7 @@ 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}从下拉选单中选择想要查看的页面. +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}从下拉选单中选择想要查看的页面 STR_STORY_BOOK_PREV_PAGE :{BLACK}上一个 STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}转到上一页 STR_STORY_BOOK_NEXT_PAGE :{BLACK}下一个 @@ -4026,7 +4028,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :未分组飞机 STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}组 - 点击一个组别以显示所有隶属此组的车辆。拖曳组别标签以重新排列组别的次序和层级。 +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}组 - 点击一个组别以显示所有隶属此组的车辆。拖曳组别标签以重新排列组别的次序和层级 STR_GROUP_CREATE_TOOLTIP :{BLACK}创建分组 STR_GROUP_DELETE_TOOLTIP :{BLACK}删除分组 STR_GROUP_RENAME_TOOLTIP :{BLACK}重命名该分组 diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index 3677726ee4..e6782944b2 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}No se ha STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}No se ha establecido el nombre de tu servidor. El nombre se puede establecer en la parte superior de la ventana de Multijugador STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}La versión de este cliente no corresponde con la versión del servidor STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Contraseña incorrecta +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}No estás en la lista de clientes permitidos STR_NETWORK_ERROR_SERVER_FULL :{WHITE}El servidor está completo STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Se ha prohibido tu acceso al servidor STR_NETWORK_ERROR_KICKED :{WHITE}Has sido expulsado del servidor @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :recibido paquet STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :versión incorrecta STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nombre en uso STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :contraseña incorrecta +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :no está en la lista de permitidos STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :empresa incorrecta en un DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :expulsado por el servidor STR_NETWORK_ERROR_CLIENT_CHEATER :ha intentado usar un truco diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index ad41942019..16f36d1cff 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -525,13 +525,13 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Пока STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Покаже загальну інформацію про компанію STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показати історію STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Покаже список завдань -STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки компаній і тарифи доставки вантажів STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Покаже таблицю компаній STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Фінансувати будівництво нової промисловості -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показати список поїздів компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показати список дорожнього транспорту компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Показати список кораблів компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Показати список повітряного транспорту компанії. Ctrl+клац мишою переключає відкриття звичайного/розширенного списку +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показує список поїздів компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показує список дорожнього транспорту компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Показати список кораблів компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Показує список повітряного транспорту компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Збільшити STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Зменшити STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Будувати залізницю @@ -750,7 +750,7 @@ STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Варт STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Останні 72 хвилини -STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Тарифи на доставку вантажів +STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Тарифи доставки вантажів STR_GRAPH_CARGO_PAYMENT_RATES_DAYS :{TINY_FONT}{BLACK}Днів у русі STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLACK}Секунд у русі STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Плата за доставку 10 одиниць (або 10,000 літрів) вантажу на відстань 20 квадратів @@ -1541,7 +1541,7 @@ STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :При вклю STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT_PERIOD :При включенні наприкінці кожного періоду виринає вікно фінансів для легшого огляду фінансового стану компанії. STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Створювати накази з поміткою «без зупинки»: {STRING} -STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Якщо в завданні транспортного засобу не вказана помітка «без зупинки», то воно зупиняєтся на всіх станціях на своєму шляху. Включення цієї опції призводить до того, що нові завдання будуть автоматично створюватися з поміткою «без зупинки» і транспортний засіб буде зупинятися лише на заданних станціях. Звичайно, при необхідності помітку можна зняти або встановити власноруч. +STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Якщо в завданні транспортного засобу не вказана помітка «без зупинки», то він зупиняєтся на всіх станціях на своєму шляху. Якщо увімкнути це налаштування, то нові завдання будуть автоматично створюватися з поміткою «без зупинки» і транспортний засіб буде зупинятися лише на вказаних станціях. При необхідності помітку можна зняти або встановити власноруч. STR_CONFIG_SETTING_STOP_LOCATION :Створювати накази для поїздів з зупинкою {STRING} платформи STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Задайте, який кінець платформи для зупинки поїздів вказувати у нових завданнях.{}- на початку: початок платформи в напрямку руху;{}- посередині: середина платформи;{}- наприкінці: кінець платформи в напрямку руху. @@ -1594,8 +1594,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Нормаль STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR :Дозволити переїзди на дорогах або залізницях, якими володіють конкуренти: {STRING} STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR_HELPTEXT :Дозволяє будівництво переїздів на дорогах або залізницях, якими володіють конкуренти -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Дозволити встановлення зупинок на дорогах міста: {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Дозволяє встановлення зупинок на дорогах, якими володіє місто. +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Дозволити встановлення проїзних зупинок на дорогах міста: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Дозволяє встановлення проїзних зупинок на дорогах, якими володіють міста STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Дозволити встановлення зупинок на дорогах конкурентів: {STRING} STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Дозволяє встановлення зупинок на дорогах, якими володіють конкуренти. STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Цю настройку не можливо змінити при наявності транспорту у грі @@ -1636,6 +1636,7 @@ STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Календа STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Настінний годинник STR_CONFIG_SETTING_MINUTES_PER_YEAR :Хвилин у році: {STRING} +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Оберіть кількість хвилин у календарному році. Базово 12 хвилин. Щоб зупинити зміни календаря, встановіть 0. Налаштування не вплине на симуляцію економіки у грі. Налаштування доступне тільки з годинниковим розкладом STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special @@ -1952,7 +1953,7 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Дозволя STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :Максимально допустима кількість #opcodes: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Максимально допустима кількість розрахунків, які може виконати скрипт впродовж одного ходу STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Максимальне використання пам'яті скриптом: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Скільки пам'яті може зайняти один скрипт до примусового припинення. Це може знадобитися збільшити для великих карт. +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Який обсяг пам'яті може зайняти один скрипт до примусового припинення. Можливо розмір треба збільшити для великих мап. STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MБ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Інтервали техогляду вказано у відсотках: {STRING} @@ -2734,6 +2735,7 @@ 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_NOT_ON_ALLOW_LIST :не у списку доступного STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :неправильний company-id в DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :відключено сервером від гри STR_NETWORK_ERROR_CLIENT_CHEATER :спроба грати нечесно @@ -4081,7 +4083,7 @@ STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUST 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_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 :Усі вантажі @@ -4476,7 +4478,7 @@ STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Пока ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити поїзд у депо -STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити авто в депо +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити авто в депо. Ctrl+клац тільки для техогляду STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити корабель в депо STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити літак в ангар. Ctrl+клац тільки для техогляду From d4a6ee95549d9c07d8e9ba0724040597deb9e444 Mon Sep 17 00:00:00 2001 From: Owen Rudge Date: Wed, 13 Mar 2024 14:13:09 +0000 Subject: [PATCH 07/70] Change: [CI] Use Azure Code Signing for Windows build --- .github/workflows/release-windows.yml | 43 ++++++++++++--------------- cmake/InstallAndPackage.cmake | 4 +-- os/windows/sign.bat | 18 +---------- os/windows/sign_azure.ps1 | 40 +++++++++++++++++++++++++ 4 files changed, 62 insertions(+), 43 deletions(-) create mode 100644 os/windows/sign_azure.ps1 diff --git a/.github/workflows/release-windows.yml b/.github/workflows/release-windows.yml index a574a28f01..d47b3645e5 100644 --- a/.github/workflows/release-windows.yml +++ b/.github/workflows/release-windows.yml @@ -100,21 +100,6 @@ jobs: with: arch: ${{ matrix.host }} - - name: Import code signing certificate - shell: powershell - # If this is run on a fork, there may not be a certificate set up - continue in this case - continue-on-error: true - run: | - $tempFile = [System.IO.Path]::GetTempFileName() - $bytes = [System.Convert]::FromBase64String($env:WINDOWS_CERTIFICATE_P12) - [IO.File]::WriteAllBytes($tempFile, $bytes) - $pwd = ConvertTo-SecureString $env:WINDOWS_CERTIFICATE_PASSWORD -AsPlainText -Force - Import-PfxCertificate -FilePath $tempFile -CertStoreLocation Cert:\CurrentUser\My -Password $pwd - Remove-Item $tempFile - env: - WINDOWS_CERTIFICATE_P12: ${{ secrets.WINDOWS_CERTIFICATE_P12 }} - WINDOWS_CERTIFICATE_PASSWORD: ${{ secrets.WINDOWS_CERTIFICATE_PASSWORD }} - - name: Build (with installer) if: inputs.is_tag == 'true' shell: bash @@ -131,7 +116,6 @@ jobs: -DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \ - -DWINDOWS_CERTIFICATE_COMMON_NAME="${WINDOWS_CERTIFICATE_COMMON_NAME}" \ # EOF echo "::endgroup::" @@ -139,7 +123,12 @@ jobs: cmake --build . --target openttd echo "::endgroup::" env: - WINDOWS_CERTIFICATE_COMMON_NAME: ${{ secrets.WINDOWS_CERTIFICATE_COMMON_NAME }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} + AZURE_CODESIGN_ACCOUNT_NAME: ${{ secrets.AZURE_CODESIGN_ACCOUNT_NAME }} + AZURE_CODESIGN_ENDPOINT: ${{ secrets.AZURE_CODESIGN_ENDPOINT }} + AZURE_CODESIGN_PROFILE_NAME: ${{ secrets.AZURE_CODESIGN_PROFILE_NAME }} - name: Build (without installer) if: inputs.is_tag != 'true' @@ -156,7 +145,6 @@ jobs: -DHOST_BINARY_DIR=${GITHUB_WORKSPACE}/build-host \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DOPTION_SURVEY_KEY=${{ inputs.survey_key }} \ - -DWINDOWS_CERTIFICATE_COMMON_NAME="${WINDOWS_CERTIFICATE_COMMON_NAME}" \ # EOF echo "::endgroup::" @@ -164,7 +152,12 @@ jobs: cmake --build . --target openttd echo "::endgroup::" env: - WINDOWS_CERTIFICATE_COMMON_NAME: ${{ secrets.WINDOWS_CERTIFICATE_COMMON_NAME }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} + AZURE_CODESIGN_ACCOUNT_NAME: ${{ secrets.AZURE_CODESIGN_ACCOUNT_NAME }} + AZURE_CODESIGN_ENDPOINT: ${{ secrets.AZURE_CODESIGN_ENDPOINT }} + AZURE_CODESIGN_PROFILE_NAME: ${{ secrets.AZURE_CODESIGN_PROFILE_NAME }} - name: Create breakpad symbols shell: bash @@ -198,13 +191,15 @@ jobs: - name: Sign installer if: inputs.is_tag == 'true' shell: bash - # If this is run on a fork, there may not be a certificate set up - continue in this case - continue-on-error: true run: | - cd ${GITHUB_WORKSPACE}/build/bundles - ../../os/windows/sign.bat *.exe "${WINDOWS_CERTIFICATE_COMMON_NAME}" + ${GITHUB_WORKSPACE}/os/windows/sign.bat "${GITHUB_WORKSPACE}/build/bundles" env: - WINDOWS_CERTIFICATE_COMMON_NAME: ${{ secrets.WINDOWS_CERTIFICATE_COMMON_NAME }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} + AZURE_CODESIGN_ACCOUNT_NAME: ${{ secrets.AZURE_CODESIGN_ACCOUNT_NAME }} + AZURE_CODESIGN_ENDPOINT: ${{ secrets.AZURE_CODESIGN_ENDPOINT }} + AZURE_CODESIGN_PROFILE_NAME: ${{ secrets.AZURE_CODESIGN_PROFILE_NAME }} - name: Store bundles uses: actions/upload-artifact@v4 diff --git a/cmake/InstallAndPackage.cmake b/cmake/InstallAndPackage.cmake index 9c9071fd00..feb0004d85 100644 --- a/cmake/InstallAndPackage.cmake +++ b/cmake/InstallAndPackage.cmake @@ -172,10 +172,10 @@ elseif(WIN32) set(CPACK_PACKAGE_FILE_NAME "openttd-#CPACK_PACKAGE_VERSION#-windows-${CPACK_SYSTEM_NAME}") - if(WINDOWS_CERTIFICATE_COMMON_NAME) + if(DEFINED ENV{AZURE_CODESIGN_PROFILE_NAME}) add_custom_command(TARGET openttd POST_BUILD - COMMAND "${CMAKE_SOURCE_DIR}/os/windows/sign.bat" "$" "${WINDOWS_CERTIFICATE_COMMON_NAME}" + COMMAND "${CMAKE_SOURCE_DIR}/os/windows/sign.bat" "${BINARY_DESTINATION_DIR}" ) endif() elseif(UNIX) diff --git a/os/windows/sign.bat b/os/windows/sign.bat index 3954d4618c..b438127ae8 100644 --- a/os/windows/sign.bat +++ b/os/windows/sign.bat @@ -1,18 +1,2 @@ @echo off -REM Signing script -REM Arguments: sign.bat exe_to_sign certificate_subject_name - -REM This is a loose wrapper around the Microsoft signtool application (included in the Windows SDK). -REM See https://docs.microsoft.com/en-us/dotnet/framework/tools/signtool-exe for more details. - -REM Path to signtool.exe -IF NOT DEFINED SIGNTOOL_PATH (SET SIGNTOOL_PATH=signtool) - -REM URL of the timestamp server -IF NOT DEFINED SIGNTOOL_TIMESTAMP_URL (SET SIGNTOOL_TIMESTAMP_URL=http://timestamp.digicert.com) - -REM Sign with SHA-1 for Windows 7 and below -"%SIGNTOOL_PATH%" sign -v -n %2 -t %SIGNTOOL_TIMESTAMP_URL% -fd sha1 %1 - -REM Sign with SHA-256 for Windows 8 and above -"%SIGNTOOL_PATH%" sign -v -n %2 -tr %SIGNTOOL_TIMESTAMP_URL% -fd sha256 -td sha256 -as %1 +pwsh -File "%~dp0sign_azure.ps1" %1 diff --git a/os/windows/sign_azure.ps1 b/os/windows/sign_azure.ps1 new file mode 100644 index 0000000000..e19476fa6d --- /dev/null +++ b/os/windows/sign_azure.ps1 @@ -0,0 +1,40 @@ +# Signing script for Azure Code Signing +# Arguments: sign_azure.ps1 path_to_sign +# +# Environment variables must be set up before use: +# +# AZURE_TENANT_ID +# AZURE_CLIENT_ID +# AZURE_CLIENT_SECRET +# AZURE_CODESIGN_ACCOUNT_NAME +# AZURE_CODESIGN_ENDPOINT +# AZURE_CODESIGN_PROFILE_NAME + +Param +( + # Files folder + [Parameter(Mandatory=$true, Position=0)] + $FilesFolder +) + +if (!$Env:AZURE_CODESIGN_ENDPOINT -or !$Env:AZURE_CODESIGN_ACCOUNT_NAME -or !$Env:AZURE_CODESIGN_PROFILE_NAME -or + !$Env:AZURE_TENANT_ID -or !$Env:AZURE_CLIENT_ID -or !$Env:AZURE_CLIENT_SECRET) +{ + "Code signing variables not found; most likely running in a fork. Skipping signing." + exit +} + +Install-Module -Name AzureCodeSigning -Scope CurrentUser -RequiredVersion 0.3.0 -Force -Repository PSGallery + +$params = @{} + +$params["Endpoint"] = $Env:AZURE_CODESIGN_ENDPOINT +$params["CodeSigningAccountName"] = $Env:AZURE_CODESIGN_ACCOUNT_NAME +$params["CertificateProfileName"] = $Env:AZURE_CODESIGN_PROFILE_NAME +$params["FilesFolder"] = $FilesFolder +$params["FilesFolderFilter"] = "exe" +$params["FileDigest"] = "SHA256" +$params["TimestampRfc3161"] = "http://timestamp.acs.microsoft.com" +$params["TimestampDigest"] = "SHA256" + +Invoke-AzureCodeSigning @params From 00a09af1fda7a00bc9a88a53c02638f1a2ce4526 Mon Sep 17 00:00:00 2001 From: translators Date: Wed, 20 Mar 2024 04:40:30 +0000 Subject: [PATCH 08/70] Update: Translations from eints english (us): 2 changes by 2TallTyler vietnamese: 2 changes by KhoiCanDev german: 2 changes by Wuzzy2 ukrainian: 2 changes by StepanIvasyn portuguese (brazilian): 9 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 18 +++++++++--------- src/lang/english_US.txt | 2 ++ src/lang/german.txt | 2 ++ src/lang/ukrainian.txt | 4 ++-- src/lang/vietnamese.txt | 2 ++ 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 1ff4c07c7e..4eb80d3630 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -935,7 +935,7 @@ STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MONTHS :{BIG_FONT}{BLAC STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MINUTES :{BIG_FONT}{BLACK}A autoridade local de {TOWN} assinou um contrato com {STRING} concedendo 12 minutos de direitos exclusivos de transporte! # Extra view window -STR_EXTRA_VIEWPORT_TITLE :{WHITE}Janela de visualização {COMMA} +STR_EXTRA_VIEWPORT_TITLE :{WHITE}Visualização {COMMA} STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN :{BLACK}Mudar a visualização STR_EXTRA_VIEW_MOVE_VIEW_TO_MAIN_TT :{BLACK}Copiar a localização da visualização principal para esta visualização STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW :{BLACK}Mudar a visualização principal @@ -1838,7 +1838,7 @@ STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}Di STR_CONFIG_SETTING_SERVINT_DISABLED :Desativado STR_CONFIG_SETTING_NOSERVICE :Desativar manutenção quando as quebras estão desativadas: {STRING} -STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Quando ativado, veículos não recebem manutenção se não puderem quebrar +STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Quando ativado, veículos não recebem manutenção se não podem quebrar STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Penalidade de velocidade de carregamento para trens que são mais longos que a estação: {STRING} STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Quando ativado, os trens que são muito compridos para a estação demoram mais tempo para carregar do que um trem que cabe na estação. Esta configuração não afeta a geração de rotas @@ -1883,7 +1883,7 @@ STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED :Mudanças na pr STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT :Mostrar um jornal quando ocorre alteração no nível de produção das indústrias que não são atendidas pela empresa ou por concorrentes STR_CONFIG_SETTING_NEWS_ADVICE :Avisos / informações sobre os veículos da empresa: {STRING} -STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Mostrar mensagens sobre veículos que requerem atenção +STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT :Mostrar mensagens sobre veículos que precisam de atenção STR_CONFIG_SETTING_NEWS_NEW_VEHICLES :Novos veículos: {STRING} STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT :Mostrar um jornal quando um novo tipo de veículo é disponibilizado @@ -3622,9 +3622,9 @@ STR_TOWN_VIEW_CARGO_LAST_MINUTE_MAX :{BLACK}{CARGO_L STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Requisitos para o crescimento da localidade: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} necessário STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} necessário no inverno -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregado +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} entregue STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ainda necessário) -STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (entregado) +STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (entregue) STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Localidade cresce a cada {ORANGE}{UNITS_DAYS_OR_SECONDS} STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Localidade cresce a cada {ORANGE}{UNITS_DAYS_OR_SECONDS} (financiada) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Localidade {RED}não{BLACK} está crescendo @@ -3762,9 +3762,9 @@ STR_STATION_VIEW_CAPTION :{WHITE}{STATION STR_STATION_VIEW_WAITING_CARGO :{WHITE}{CARGO_LONG} STR_STATION_VIEW_RESERVED :{YELLOW}({CARGO_SHORT} reservado para carregamento) -STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Aceitas +STR_STATION_VIEW_ACCEPTS_BUTTON :{BLACK}Aceita STR_STATION_VIEW_ACCEPTS_TOOLTIP :{BLACK}Mostrar lista de cargas que são aceitas -STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Aceitas: {WHITE}{CARGO_LIST} +STR_STATION_VIEW_ACCEPTS_CARGO :{BLACK}Aceita: {WHITE}{CARGO_LIST} STR_STATION_VIEW_EXCLUSIVE_RIGHTS_SELF :{BLACK}Esta estação tem direitos exclusivos de transporte nesta localidade. STR_STATION_VIEW_EXCLUSIVE_RIGHTS_COMPANY :{YELLOW}{COMPANY}{BLACK} adquiriu direitos exclusivos de transporte nesta localidade. @@ -5451,9 +5451,9 @@ STR_SV_STNAME_NORTH :{STRING} Norte STR_SV_STNAME_SOUTH :{STRING} Sul STR_SV_STNAME_EAST :{STRING} Leste STR_SV_STNAME_WEST :{STRING} Oeste -STR_SV_STNAME_CENTRAL :{STRING} Centro +STR_SV_STNAME_CENTRAL :{STRING} Central STR_SV_STNAME_TRANSFER :{STRING} Transbordo -STR_SV_STNAME_HALT :{STRING} Parada +STR_SV_STNAME_HALT :{STRING} Terminal STR_SV_STNAME_VALLEY :{STRING} Vale STR_SV_STNAME_HEIGHTS :{STRING} Colinas STR_SV_STNAME_WOODS :{STRING} Bosque diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 87fa19c2fe..29ece3c052 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Your pla STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Your server name has not been set. The name can be set at the top of the Multiplayer window STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}The revision of this client does not match the server's revision STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Wrong password +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}You are not on the list of allowed clients STR_NETWORK_ERROR_SERVER_FULL :{WHITE}The server is full STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}You are banned from this server STR_NETWORK_ERROR_KICKED :{WHITE}You were kicked out of the game @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :received invali STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :wrong revision STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :name already in use STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :wrong game-password +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :not on allow list STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :wrong company-id in DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :kicked by server STR_NETWORK_ERROR_CLIENT_CHEATER :was trying to use a cheat diff --git a/src/lang/german.txt b/src/lang/german.txt index 7cfc2bc775..eb1555b68f 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Ihr Spie STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Ihr Servername wurde nicht gesetzt. Der Name kann oben im Mehrspielerfenster gesetzt werden STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Diese Version des Spiels entspricht nicht der des Servers STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Falsches Passwort +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Sie sind nicht auf der Liste der erlaubten Clients STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Der Server ist voll STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Sie sind auf diesem Server gesperrt STR_NETWORK_ERROR_KICKED :{WHITE}Sie wurden vom Server hinausgeworfen @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :Ungültiges ode STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :Falsche Version STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :Name wird bereits verwendet STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :Falsches Spielpasswort +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :nicht auf Erlaubnisliste STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :Falsche Firmen-ID in DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :vom Server hinausgeworfen STR_NETWORK_ERROR_CLIENT_CHEATER :hat versucht zu mogeln diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 16f36d1cff..7d86a875e8 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -1633,7 +1633,7 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :При вклю STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Дотримання розкладу: {STRING} ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Календар -STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Настінний годинник +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Годинник STR_CONFIG_SETTING_MINUTES_PER_YEAR :Хвилин у році: {STRING} STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Оберіть кількість хвилин у календарному році. Базово 12 хвилин. Щоб зупинити зміни календаря, встановіть 0. Налаштування не вплине на симуляцію економіки у грі. Налаштування доступне тільки з годинниковим розкладом @@ -4314,7 +4314,7 @@ STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} т STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) ###length VEHICLE_TYPES -STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Поїзди - перетягніть транспорт (вагон) лівою кнопкою миші, щоб додати/вилучити з поїзда. Натисніть праву кнопку миші для інформації. Утримуйте Ctrl для застосування обох функцій до всього ланцюга +STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Потяги - перетягніть транспорт (вагон) лівою кнопкою миші, щоб додати/вилучити з потяга. Натисніть праву кнопку миші для інформації. Ctrl+клац для застосування обох функцій до всього ланцюга STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Авто - натисніть на авто для інформації STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Кораблі - натисніть для інформації STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Літаки - натисніть на літак для інформації diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index fcff61c8ca..3dd328d84b 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Bạn ch STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Bạn chưa đặt tên server. Bạn có thể đặt tên này tại phía trên của cửa sổ Chơi trên mạng STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Phiên bản của máy trạm không hợp với phiên bản máy server STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Sai mật khẩu +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Bạn không có trong danh sách máy khách được cho phép STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Server bị đầy STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Bạn bị từ chối ở server này STR_NETWORK_ERROR_KICKED :{WHITE}Bạn bị đá khỏi ván chơi @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :nhận được STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :sai phiên bản STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :tên đã dùng rồi STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :sai mật khẩu +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :không có trong danh sách cho phép STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :sai công ty trong DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :bí đá bởi server STR_NETWORK_ERROR_CLIENT_CHEATER :đã cố sử dụng cheat From 704d3b8a9b4c13e4c99caf1317774b12f7670a19 Mon Sep 17 00:00:00 2001 From: Tyler Trahan Date: Wed, 20 Mar 2024 16:32:38 -0400 Subject: [PATCH 09/70] Fix #12342: Add missing ellipsis to town generation error string (#12343) --- src/lang/english.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index 3fff8c6939..9263705e4b 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Can't bu STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Can't build company headquarters... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Can't rename town... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Can't found town here... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Can't expand town... From 0eaeeaabb6eab4581f77b4493adecbbe708e600c Mon Sep 17 00:00:00 2001 From: translators Date: Thu, 21 Mar 2024 04:40:53 +0000 Subject: [PATCH 10/70] Update: Translations from eints russian: 2 changes by Ln-Wolf catalan: 2 changes by J0anJosep portuguese (brazilian): 23 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 46 +++++++++++++++---------------- src/lang/catalan.txt | 2 ++ src/lang/russian.txt | 2 ++ 3 files changed, 27 insertions(+), 23 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 4eb80d3630..61466fd43a 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -399,8 +399,8 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Abrir li STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Abrir lista de veículos da empresa. Ctrl+Clique para mostrar ou ocultar grupos de veículos, oposto da configuração escolhida STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Abrir lista de embarcações da empresa. Ctrl+Clique para mostrar ou ocultar grupos de veículos, oposto da configuração escolhida STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Abrir lista de aeronaves da empresa. Ctrl+Clique para mostrar ou ocultar grupos de veículos, oposto da configuração escolhida -STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Aproximar a visão -STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Afastar a visão +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Ampliar +STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Reduzir STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Construir infraestrutura ferroviária STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Construir infraestrutura rodoviária STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Construir infraestrutura para bondes @@ -856,7 +856,7 @@ STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi vendida para {STRING} por {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Falência! STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi fechada pelos credores e todos os seus bens foram vendidos! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes foi lançada! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} inicia construção perto de {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} foi comprada por {STRING} por um valor não revelado! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Gerente) @@ -880,7 +880,7 @@ STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Novas reservas de petróleo encontradas n{G o a} {INDUSTRY}!{}A produção deverá duplicar! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Métodos agrícolas aperfeiçoados na {INDUSTRY} deverão duplicar a produção! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}Produção de {STRING} n{G o a} {INDUSTRY} aumenta {COMMA}%! -STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}A produção de {INDUSTRY} foi reduzida em 50% +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}A produção de {INDUSTRY} diminui 50% STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Infestação de insetos causa destruição n{G o a} {INDUSTRY}!{}Produção diminui 50% STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}Produção de {STRING} n{G o a} {INDUSTRY} diminui {COMMA}%! @@ -1918,8 +1918,8 @@ STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Original STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Suave STR_CONFIG_SETTING_ECONOMY_TYPE_FROZEN :Congelada -STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Porcentagem do lucro da etapa a pagar em sistemas de transbordo: {STRING} -STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Porcentagem da receita dada às etapas intermediárias em sistemas de transbordo, dando maior controle sobre a renda +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Porcentagem da renda da etapa a ser paga em sistemas de transbordo: {STRING} +STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Porcentagem da receita dada às etapas intermediárias em sistemas de transbordo, proporcionando maior controle sobre a receita STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Quando arrastar, colocar sinais a cada: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Definir a distância na qual os sinais serão construídos em uma linha até o próximo obstáculo (sinal, junção), quando colocar sinais arrastando @@ -1956,7 +1956,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Permitir que lo STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Localidades podem construir passagens de nível: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Ativando esta configuração, as localidades poderão construir passagens de nível -STR_CONFIG_SETTING_NOISE_LEVEL :Limitar a localização do aeroporto em função do nível de ruído: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL :Limitar a colocação de aeroportos com base no nível de ruído: {STRING} STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Permitir que as localidades impeçam a construção de aeroportos em função do nível de aceitação de ruído, que é baseado no total de habitantes da localidade e no tamanho e distância do aeroporto. Se esta configuração estiver desativada, as localidades permitirão somente dois aeroportos, a menos que a atitude da autoridade local esteja definida como "Permissiva" STR_CONFIG_SETTING_TOWN_FOUNDING :Fundar localidades no jogo: {STRING} @@ -1996,9 +1996,9 @@ STR_CONFIG_SETTING_SOFT_LIMIT_VALUE :{COMMA} STR_CONFIG_SETTING_SOFT_LIMIT_DISABLED :desativado STR_CONFIG_SETTING_ZOOM_MIN :Nível máximo de ampliação: {STRING} -STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Nível máximo de ampliação para visualizações. Níveis de ampliação muito grandes aumentam o uso de memória +STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT :Limite de ampliação para visualizações. Níveis de ampliação muito grandes aumentam o uso de memória STR_CONFIG_SETTING_ZOOM_MAX :Nível máximo de redução: {STRING} -STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Nível máximo de redução para visualizações. Níveis de redução muito grandes podem causar atrasos quando utilizados +STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT :Limite de redução para visualizações. Níveis de redução muito grandes podem causar atrasos quando utilizados ###length 6 STR_CONFIG_SETTING_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_ZOOM_LVL_IN_2X :2x @@ -2008,7 +2008,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Resolução máxima de sprites: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limita a resolução máxima a ser usada para sprites. Limitar a resolução de sprites evitará o uso de gráficos de alta resolução, mesmo quando estiverem disponíveis. Isso pode ajudar a manter o jogo com uma aparência unificada quando usar uma mistura de arquivos GRF com e sem gráficos de alta resolução +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limite de resolução máxima a ser usada para sprites. Limitar a resolução de sprites evitará o uso de gráficos de alta resolução, mesmo quando estiverem disponíveis. Isso pode ajudar a manter o jogo com uma aparência unificada quando usar uma mistura de arquivos GRF com e sem gráficos de alta resolução ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2170,7 +2170,7 @@ STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Falha ao # Video initalization errors STR_VIDEO_DRIVER_ERROR :{WHITE}Erro nas configurações de vídeo... STR_VIDEO_DRIVER_ERROR_NO_HARDWARE_ACCELERATION :{WHITE}... nenhuma GPU compatível encontrada. Aceleração por hardware desativada -STR_VIDEO_DRIVER_ERROR_HARDWARE_ACCELERATION_CRASH :{WHITE}... O controlador gráfico (GPU) travou o jogo. Aceleração por hardware desativada +STR_VIDEO_DRIVER_ERROR_HARDWARE_ACCELERATION_CRASH :{WHITE}... o controlador gráfico (GPU) travou o jogo. Aceleração por hardware desativada # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -2639,7 +2639,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {0:STRING} STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} entrou como espectador STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {0:STRING} iniciou uma nova empresa (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {0:STRING} saiu do jogo ({2:STRING}) -STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} mudou seu nome para {STRING} +STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} mudou o nome para {STRING} STR_NETWORK_MESSAGE_GIVE_MONEY :*** {0:STRING} deu {2:CURRENCY_LONG} para {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor fechou a sessão STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor está reiniciando...{}Aguarde... @@ -2715,7 +2715,7 @@ STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Concluí STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} de {BYTES} foram baixados ({NUM} %) # Content downloading error messages -STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Não foi possível conectar ao servidor... +STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Não foi possível conectar ao servidor de conteúdo... STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD :{WHITE}O download falhou... STR_CONTENT_ERROR_COULD_NOT_DOWNLOAD_FILE_NOT_WRITABLE :{WHITE}... arquivo não pode ser gravado STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Falha na descompactação do arquivo @@ -4987,7 +4987,7 @@ STR_ERROR_CAN_T_CHANGE_PRESIDENT :{WHITE}Não é STR_ERROR_MAXIMUM_PERMITTED_LOAN :{WHITE}... o valor máximo de empréstimo permitido é {CURRENCY_LONG} STR_ERROR_CAN_T_BORROW_ANY_MORE_MONEY :{WHITE}Não é possível pedir mais dinheiro emprestado... -STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... não há empréstimo para pagar +STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... não existe empréstimo para pagar STR_ERROR_CURRENCY_REQUIRED :{WHITE}... é necessário {CURRENCY_LONG} STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Não é possível pagar empréstimo... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Não é possível doar dinheiro proveniente de empréstimo bancário... @@ -4996,14 +4996,14 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Não é STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Não é possível construir sede da empresa... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Não é possível construir localidades +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Não é possível construir localidades... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Não é possível renomear a localidade... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Não é possível fundar uma localidade aqui... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Não é possível expandir a localidade... STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP_SUB :{WHITE}... muito perto da borda do mapa STR_ERROR_TOO_CLOSE_TO_ANOTHER_TOWN :{WHITE}... muito perto de outra localidade STR_ERROR_TOO_MANY_TOWNS :{WHITE}... há localidades demais -STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... não existe mais espaço no mapa +STR_ERROR_NO_SPACE_FOR_TOWN :{WHITE}... não há mais espaço no mapa STR_ERROR_ROAD_WORKS_IN_PROGRESS :{WHITE}Trabalhos sendo realizados na estrada STR_ERROR_TOWN_CAN_T_DELETE :{WHITE}Não é possível remover esta localidade...{}Uma estação ou depósito refere-se à localidade ou não é possível remover um quadrado que pertence à mesma STR_ERROR_STATUE_NO_SUITABLE_PLACE :{WHITE}... não há local adequado para uma estátua no centro desta localidade @@ -5064,7 +5064,7 @@ STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Não é STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de passageiros... STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de carga... STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}É necessário remover o ponto de parada rodoviária primeiro -STR_ERROR_THERE_IS_NO_STATION :{WHITE}...não há estação aqui +STR_ERROR_THERE_IS_NO_STATION :{WHITE}...não existe uma estação aqui STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}É necessário demolir a estação ferroviária primeiro STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}É necessário demolir a estação de ônibus primeiro @@ -5140,8 +5140,8 @@ STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Não é STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Não é possível remover ferrovia daqui... STR_ERROR_CAN_T_REMOVE_SIGNALS_FROM :{WHITE}Não é possível remover sinais daqui... STR_ERROR_SIGNAL_CAN_T_CONVERT_SIGNALS_HERE :{WHITE}Não é possível converter os sinais daqui... -STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}...não há ferrovia -STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}...não há sinais +STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}...não existe uma ferrovia +STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}...não existem sinais STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Não é possível converter o tipo de trilho daqui... @@ -5152,8 +5152,8 @@ STR_ERROR_CAN_T_BUILD_ROAD_HERE :{WHITE}Não é STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Não é possível construir linha de bonde aqui... STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}Não é possível remover estrada daqui... STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Não é possível remover linha de bonde daqui... -STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... não há estrada -STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... não há linha de bonde +STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... não existe uma estrada +STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... não existe uma linha de bonde STR_ERROR_CAN_T_CONVERT_ROAD :{WHITE}Não é possível converter o tipo de estrada daqui... STR_ERROR_CAN_T_CONVERT_TRAMWAY :{WHITE}Não é possível converter o tipo de linha de bonde daqui... STR_ERROR_NO_SUITABLE_ROAD :{WHITE}Estrada não adequada @@ -5275,7 +5275,7 @@ STR_ERROR_CAN_T_SELL_AIRCRAFT :{WHITE}Não é STR_ERROR_TOO_MANY_VEHICLES_IN_GAME :{WHITE}Há veículos demais no jogo STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Não é possível alterar o intervalo de manutenção... -STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... o veículo está destruído +STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... veículo está destruído STR_ERROR_CAN_T_CLONE_VEHICLE_LIST :{WHITE}... nem todos os veículos são idênticos @@ -5322,7 +5322,7 @@ STR_ERROR_NO_DOCK :{WHITE}Não exi STR_ERROR_NO_AIRPORT :{WHITE}Não existe um aeroporto/heliporto STR_ERROR_NO_STOP_COMPATIBLE_ROAD_TYPE :{WHITE}Não existem paradas com um tipo de estrada compatível STR_ERROR_NO_STOP_COMPATIBLE_TRAM_TYPE :{WHITE}Não existem paradas com um tipo de bonde compatível -STR_ERROR_NO_STOP_ARTICULATED_VEHICLE :{WHITE}Não existem paradas adequadas para veículos rodoviários articulados.{}Os veículos rodoviários articulados só podem parar em estações de passagem e não em estações padrão +STR_ERROR_NO_STOP_ARTICULATED_VEHICLE :{WHITE}Não existem paradas adequadas para veículos rodoviários articulados.{}Veículos rodoviários articulados só podem parar em estações de passagem, não em estações padrão STR_ERROR_AIRPORT_NO_PLANES :{WHITE}Este avião não pode pousar neste heliporto STR_ERROR_AIRPORT_NO_HELICOPTERS :{WHITE}Este helicóptero não pode pousar neste aeroporto STR_ERROR_NO_RAIL_WAYPOINT :{WHITE}Não existe um ponto de controle ferroviário diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index d48c497b8f..03de11cf9a 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}No s'ha STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}No s'ha establit un nom per al vostre servidor. El nom s'estableix a la part superior de la finestra multijugador. STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}La revisió d'aquest client no concorda amb la revisió del servidor STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Contrasenya incorrecta +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}No esteu en la llista de clients permesos STR_NETWORK_ERROR_SERVER_FULL :{WHITE}El servidor està ple STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Estàs exclòs d'aquest servidor STR_NETWORK_ERROR_KICKED :{WHITE}T'han fet fora de la partida @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :s'ha rebut un p STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :revisió incorrecta STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nom ja utilitzat STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :contrasenya incorrecta +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :no en la llista de permesos STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :id-companyia erroni en DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :tret pel servidor STR_NETWORK_ERROR_CLIENT_CHEATER :s'ha intentat utilitzar una trampa diff --git a/src/lang/russian.txt b/src/lang/russian.txt index 61444f8bbd..a9bd38bb6a 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -2725,6 +2725,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Не у STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Не указано имя сервера. Его можно ввести в верхней части окна «Сетевая игра». STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Версия этого клиента не совместима с версией сервера STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Неверный пароль +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Ваш клиент отсутствует в списке разрешённых STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Сервер переполнен STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Вас заблокировали на этом сервере STR_NETWORK_ERROR_KICKED :{WHITE}Вас отключили от игры @@ -2752,6 +2753,7 @@ 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_NOT_ON_ALLOW_LIST :нет в списке разрешённых STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :неправильный параметр company в DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :вас выкинул сервер STR_NETWORK_ERROR_CLIENT_CHEATER :попытался применить чит From e42aec5a89ea90f45fb554dff2563a0c234ced17 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sat, 16 Mar 2024 15:45:14 +0000 Subject: [PATCH 11/70] Fix #12305: Crash with large positive sprite x offset in engine preview window --- src/engine_gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/engine_gui.cpp b/src/engine_gui.cpp index a6423be3a7..b24f902363 100644 --- a/src/engine_gui.cpp +++ b/src/engine_gui.cpp @@ -98,7 +98,7 @@ struct EnginePreviewWindow : Window { } this->vehicle_space = std::max(ScaleSpriteTrad(40), y - y_offs); - size->width = std::max(size->width, x - x_offs); + size->width = std::max(size->width, x + std::abs(x_offs)); SetDParam(0, GetEngineCategoryName(engine)); size->height = GetStringHeight(STR_ENGINE_PREVIEW_MESSAGE, size->width) + WidgetDimensions::scaled.vsep_wide + GetCharacterHeight(FS_NORMAL) + this->vehicle_space; SetDParam(0, engine); From 2189607c34518494b912f21b4ba754aabb0f3051 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Mon, 11 Mar 2024 23:11:19 +0000 Subject: [PATCH 12/70] Codechange: Reduce size of class WaterRegion The tile patch array is 256 bytes and is not needed for the majority of water regions, change it to be optional via std::unique_ptr --- src/pathfinder/water_regions.cpp | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/src/pathfinder/water_regions.cpp b/src/pathfinder/water_regions.cpp index df4da633df..e34f3ad47e 100644 --- a/src/pathfinder/water_regions.cpp +++ b/src/pathfinder/water_regions.cpp @@ -38,6 +38,8 @@ static inline int GetWaterRegionMapSizeY() { return Map::SizeY() / WATER_REGION_ static inline TWaterRegionIndex GetWaterRegionIndex(int region_x, int region_y) { return GetWaterRegionMapSizeX() * region_y + region_x; } static inline TWaterRegionIndex GetWaterRegionIndex(TileIndex tile) { return GetWaterRegionIndex(GetWaterRegionX(tile), GetWaterRegionY(tile)); } +using TWaterRegionPatchLabelArray = std::array; + /** * Represents a square section of the map of a fixed size. Within this square individual unconnected patches of water are * identified using a Connected Component Labeling (CCL) algorithm. Note that all information stored in this class applies @@ -49,10 +51,10 @@ class WaterRegion private: std::array edge_traversability_bits{}; bool has_cross_region_aqueducts = false; + bool initialized = false; TWaterRegionPatchLabel number_of_patches = 0; // 0 = no water, 1 = one single patch of water, etc... const OrthogonalTileArea tile_area; - std::array tile_patch_labels{}; - bool initialized = false; + std::unique_ptr tile_patch_labels; ///< Tile patch labels, this may be nullptr in the following trivial cases: region is invalid, region is only land (0 patches), region is only water (1 patch) /** * Returns the local index of the tile within the region. The N corner represents 0, @@ -110,7 +112,10 @@ public: TWaterRegionPatchLabel GetLabel(TileIndex tile) const { assert(this->tile_area.Contains(tile)); - return this->tile_patch_labels[GetLocalIndex(tile)]; + if (this->tile_patch_labels == nullptr) { + return this->NumberOfPatches() == 0 ? INVALID_WATER_REGION_PATCH : 1; + } + return (*this->tile_patch_labels)[GetLocalIndex(tile)]; } /** @@ -122,7 +127,12 @@ public: Debug(map, 3, "Updating water region ({},{})", GetWaterRegionX(this->tile_area.tile), GetWaterRegionY(this->tile_area.tile)); this->has_cross_region_aqueducts = false; - this->tile_patch_labels.fill(INVALID_WATER_REGION_PATCH); + /* Acquire a tile patch label array if this region does not already have one */ + if (this->tile_patch_labels == nullptr) { + this->tile_patch_labels = std::make_unique(); + } + + this->tile_patch_labels->fill(INVALID_WATER_REGION_PATCH); this->edge_traversability_bits.fill(0); TWaterRegionPatchLabel current_label = 1; @@ -143,9 +153,10 @@ public: const TrackdirBits valid_dirs = TrackBitsToTrackdirBits(GetWaterTracks(tile)); if (valid_dirs == TRACKDIR_BIT_NONE) continue; - if (this->tile_patch_labels[GetLocalIndex(tile)] != INVALID_WATER_REGION_PATCH) continue; + TWaterRegionPatchLabel &tile_patch = (*this->tile_patch_labels)[GetLocalIndex(tile)]; + if (tile_patch != INVALID_WATER_REGION_PATCH) continue; - this->tile_patch_labels[GetLocalIndex(tile)] = current_label; + tile_patch = current_label; highest_assigned_label = current_label; increase_label = true; @@ -172,6 +183,12 @@ public: this->number_of_patches = highest_assigned_label; this->initialized = true; + + if (this->number_of_patches == 0 || (this->number_of_patches == 1 && + std::all_of(this->tile_patch_labels->begin(), this->tile_patch_labels->end(), [](TWaterRegionPatchLabel label) { return label == 1; }))) { + /* No need for patch storage: trivial cases */ + this->tile_patch_labels.reset(); + } } /** @@ -196,7 +213,7 @@ public: for (int y = 0; y < WATER_REGION_EDGE_LENGTH; ++y) { std::string line{}; for (int x = 0; x < WATER_REGION_EDGE_LENGTH; ++x) { - const auto label = this->tile_patch_labels[x + y * WATER_REGION_EDGE_LENGTH]; + const auto label = this->GetLabel(TileAddXY(tile_area.tile, x, y)); const std::string label_str = label == INVALID_WATER_REGION_PATCH ? "." : std::to_string(label); line = fmt::format("{:{}}", label_str, max_element_width) + " " + line; } From e141734e54661b6d2995522b801804689c57e5da Mon Sep 17 00:00:00 2001 From: translators Date: Fri, 22 Mar 2024 04:41:18 +0000 Subject: [PATCH 13/70] Update: Translations from eints english (au): 1 change by krysclarke norwegian (bokmal): 1 change by eriksorngard english (us): 1 change by 2TallTyler korean: 3 changes by telk5093 german: 1 change by Wuzzy2 finnish: 3 changes by hpiirai ukrainian: 12 changes by StepanIvasyn portuguese (brazilian): 81 changes by pasantoro polish: 1 change by pAter-exe --- src/lang/brazilian_portuguese.txt | 162 +++++++++++++++--------------- src/lang/english_AU.txt | 2 +- src/lang/english_US.txt | 2 +- src/lang/finnish.txt | 4 +- src/lang/german.txt | 2 +- src/lang/korean.txt | 4 +- src/lang/norwegian_bokmal.txt | 2 +- src/lang/polish.txt | 2 +- src/lang/ukrainian.txt | 23 +++-- 9 files changed, 104 insertions(+), 99 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 61466fd43a..9733189049 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -281,8 +281,8 @@ STR_BUTTON_CATCHMENT :{BLACK}Cobertur STR_TOOLTIP_CATCHMENT :{BLACK}Mostrar/Ocultar a área de cobertura STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Fechar janela -STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Título da janela - Clique+Arraste isto para mover a janela -STR_TOOLTIP_SHADE :{BLACK}Encolher janela - mostrar somente a barra de título +STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Título da janela - arraste isto para mover a janela +STR_TOOLTIP_SHADE :{BLACK}Encolher janela - somente a barra de título fica visível STR_TOOLTIP_DEBUG :{BLACK}Mostrar informação de depuração de NewGRF STR_TOOLTIP_DEFSIZE :{BLACK}Redimensionar a janela para o tamanho padrão. Ctrl+Clique para salvar o tamanho atual como padrão STR_TOOLTIP_STICKY :{BLACK}Fixar esta janela para ela não ser fechada pela tecla 'Fechar Todas as Janelas'. Ctrl+Clique para salvar o estado como padrão @@ -472,7 +472,7 @@ STR_MAP_MENU_SIGN_LIST :Lista de placas # Town menu STR_TOWN_MENU_TOWN_DIRECTORY :Lista de localidades -STR_TOWN_MENU_FOUND_TOWN :Fundar localidade +STR_TOWN_MENU_FOUND_TOWN :Fundar uma localidade # Subsidies menu STR_SUBSIDIES_MENU_SUBSIDIES :Subsídios @@ -482,7 +482,7 @@ STR_GRAPH_MENU_OPERATING_PROFIT_GRAPH :Gráfico do luc STR_GRAPH_MENU_INCOME_GRAPH :Gráfico de rendimentos STR_GRAPH_MENU_DELIVERED_CARGO_GRAPH :Gráfico da carga entregada STR_GRAPH_MENU_PERFORMANCE_HISTORY_GRAPH :Gráfico do histórico de desempenho -STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Gráfico do valor da empresa +STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Gráfico de valor da empresa STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Receitas por carga # Company league menu @@ -534,8 +534,8 @@ STR_ABOUT_MENU_SHOW_FRAMERATE :Mostrar taxa de STR_ABOUT_MENU_ABOUT_OPENTTD :Sobre o 'OpenTTD' STR_ABOUT_MENU_SPRITE_ALIGNER :Alinhador de sprites STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Mostrar/Ocultar as caixas delimitadoras -STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Ativar/Desativar a coloração dos blocos sujos -STR_ABOUT_MENU_TOGGLE_WIDGET_OUTLINES :Mostrar/Ocultar contornos do elemento +STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Ativar/Desativar coloração dos blocos sujos +STR_ABOUT_MENU_TOGGLE_WIDGET_OUTLINES :Mostrar/Ocultar contornos dos widgets ###length 31 STR_DAY_NUMBER_1ST :1 @@ -676,7 +676,7 @@ STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Quantia STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Unidades de carga entregada nos últimos quatro trimestres STR_PERFORMANCE_DETAIL_CARGO_TOOLTIP :{BLACK}Número de tipos de carga entregada no último trimestre STR_PERFORMANCE_DETAIL_MONEY_TOOLTIP :{BLACK}Quantia de dinheiro que esta empresa tem no banco -STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}A quantia de dinheiro que esta empresa tomou por empréstimo +STR_PERFORMANCE_DETAIL_LOAN_TOOLTIP :{BLACK}O montante que esta empresa tomou por empréstimo STR_PERFORMANCE_DETAIL_TOTAL_TOOLTIP :{BLACK}Total de pontos de pontos possíveis # Music window @@ -851,12 +851,12 @@ STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLAC STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundações!{}Pelo menos {COMMA} desaparecidos, supostamente mortos após terríveis inundações! STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Empresa de transporte em dificuldades! -STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} será vendida ou declarada falida, a menos que aumente o desempenho em breve! +STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} será vendida ou declarada falida se não aumentar o desempenho em breve! STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLACK}Fusão de empresas de transportes! STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi vendida para {STRING} por {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Falência! STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi fechada pelos credores e todos os seus bens foram vendidos! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Lançada nova empresa de transportes! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} inicia construção perto de {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} foi comprada por {STRING} por um valor não revelado! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Gerente) @@ -888,7 +888,7 @@ STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLAC STR_NEWS_TRAIN_IS_WAITING :{WHITE}{VEHICLE} está aguardando no depósito STR_NEWS_ROAD_VEHICLE_IS_WAITING :{WHITE}{VEHICLE} está aguardando no depósito STR_NEWS_SHIP_IS_WAITING :{WHITE}{VEHICLE} está aguardando no depósito -STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE} está aguardando no hangar de aeronaves +STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE} está aguardando no hangar ###next-name-looks-similar # Order review system / warnings @@ -905,14 +905,14 @@ STR_NEWS_TRAIN_IS_STUCK :{WHITE}{VEHICLE STR_NEWS_VEHICLE_IS_LOST :{WHITE}{VEHICLE} está perdido STR_NEWS_VEHICLE_UNPROFITABLE_YEAR :{WHITE}{VEHICLE} gerou um lucro de {CURRENCY_LONG} no último ano STR_NEWS_VEHICLE_UNPROFITABLE_PERIOD :{WHITE}{VEHICLE} gerou um lucro de {CURRENCY_LONG} no último período -STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} não pode chegar no próximo destino porque ele está além da autonomia +STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE} não consegue chegar no próximo destino porque está fora de alcance STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} parou porque uma ordem de adaptação falhou STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Renovação automática falhou para {VEHICLE}{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} já disponível! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} disponível! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nov{G o a} {STRING} já disponível! - {ENGINE} +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nov{G o a} {STRING} disponível! - {ENGINE} STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Abrir a janela de grupos focada no grupo do veículo @@ -945,13 +945,13 @@ STR_EXTRA_VIEW_MOVE_MAIN_TO_VIEW_TT :{BLACK}Copiar a STR_GAME_OPTIONS_CAPTION :{WHITE}Opções do Jogo STR_GAME_OPTIONS_TAB_GENERAL :Geral -STR_GAME_OPTIONS_TAB_GENERAL_TT :{BLACK}Selecionar as configurações gerais +STR_GAME_OPTIONS_TAB_GENERAL_TT :{BLACK}Escolher as definições gerais STR_GAME_OPTIONS_TAB_GRAPHICS :Gráficos -STR_GAME_OPTIONS_TAB_GRAPHICS_TT :{BLACK}Selecionar as configurações gráficas +STR_GAME_OPTIONS_TAB_GRAPHICS_TT :{BLACK}Escolher as definições gráficas STR_GAME_OPTIONS_TAB_SOUND :Som -STR_GAME_OPTIONS_TAB_SOUND_TT :{BLACK}Selecionar as configurações de sons e música +STR_GAME_OPTIONS_TAB_SOUND_TT :{BLACK}Escolher as definições de sons e música STR_GAME_OPTIONS_TAB_SOCIAL :Social -STR_GAME_OPTIONS_TAB_SOCIAL_TT :{BLACK}Selecionar as configurações de integração social +STR_GAME_OPTIONS_TAB_SOCIAL_TT :{BLACK}Escolher as definições de integração social STR_GAME_OPTIONS_VOLUME :Volume STR_GAME_OPTIONS_SFX_VOLUME :Efeitos sonoros @@ -1048,11 +1048,11 @@ STR_GAME_OPTIONS_VIDEO_DRIVER_INFO :{BLACK}Controla STR_GAME_OPTIONS_GUI_SCALE_FRAME :{BLACK}Tamanho da interface STR_GAME_OPTIONS_GUI_SCALE_TOOLTIP :{BLACK}Arraste o controle deslizante para definir o tamanho da interface. Ctrl+Arraste para um ajuste contínuo -STR_GAME_OPTIONS_GUI_SCALE_AUTO :{BLACK}Detetar automaticamente o tamanho -STR_GAME_OPTIONS_GUI_SCALE_AUTO_TOOLTIP :{BLACK}Marque esta caixa para detetar automaticamente o tamanho da interface +STR_GAME_OPTIONS_GUI_SCALE_AUTO :{BLACK}Detectar automaticamente o tamanho +STR_GAME_OPTIONS_GUI_SCALE_AUTO_TOOLTIP :{BLACK}Marque esta caixa para detectar automaticamente o tamanho da interface -STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Escalar chanfros -STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Marque esta caixa para dimensionar os chanfros pelo tamanho de interface +STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Escalar bordas +STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Marque esta caixa para dimensionar as bordas pelo tamanho de interface STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Usar a fonte fixa tradicional STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Marque esta caixa se preferir usar o tipo de fonte tradicional de tamanho fixo @@ -1433,7 +1433,7 @@ STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Permitir compra STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Se uma empresa comprar direitos exclusivos de transporte para uma localidade, as estações dos concorrentes (passageiros e carga) não receberão carga durante doze meses STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT_MINUTES :Se uma empresa comprar direitos exclusivos de transporte para uma localidade, as estações dos concorrentes (passageiros e carga) não receberão carga durante doze minutos -STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Permitir financiar edifícios: {STRING} +STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Permitir financiar edificações: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Permitir que empresas doem dinheiro às localidades para custear novas casas STR_CONFIG_SETTING_ALLOW_FUND_ROAD :Permitir financiar a reconstrução de estradas locais:{STRING} @@ -1481,7 +1481,7 @@ STR_CONFIG_SETTING_WARN_LOST_VEHICLE :Avisar se o ve STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT :Mostrar mensagens sobre veículos que não conseguem encontrar um caminho para o destino programado STR_CONFIG_SETTING_ORDER_REVIEW :Revisar as ordens dos veículos: {STRING} -STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Quando ativado, as ordens dos veículos são periodicamente verificadas e alguns problemas evidentes, quando detetados, são relatados com uma mensagem de aviso +STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT :Quando ativado, as ordens dos veículos são periodicamente verificadas e alguns problemas evidentes, quando detectados, são relatados com uma mensagem de aviso ###length 3 STR_CONFIG_SETTING_ORDER_REVIEW_OFF :Não STR_CONFIG_SETTING_ORDER_REVIEW_EXDEPOT :Sim, mas excluir veículos parados @@ -1527,7 +1527,7 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :Quantia mínima STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Quantia mínima de dinheiro que deve existir na conta bancária para a renovação automática de veículos ser considerada STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da mensagem de erro: {STRING} -STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da visualização de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo, mas precisam ser fechadas manualmente +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da visualização de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Quando este valor está definido como 0, os textos de ajuda podem ser mostrados com o botão direito do mouse @@ -1638,8 +1638,8 @@ STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_BLUE :Verde para azul STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREY_TO_RED :Cinza para vermelho STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREYSCALE :Escala de cinza -STR_CONFIG_SETTING_SCROLLMODE :Comportamento do deslocamento da visualização: {STRING} -STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Comportamento da movimentação do mapa. A opção "posição do mouse travada" não funciona em todos os sistemas, tais como versões baseadas na web, telas sensíveis ao toque, Linux com Wayland e outros +STR_CONFIG_SETTING_SCROLLMODE :Comportamento de rolagem da visualização: {STRING} +STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Comportamento de movimentação do mapa. A opção "posição do mouse travada" não funciona em todos os sistemas, tais como versões baseadas na web, telas sensíveis ao toque, Linux com Wayland e outros ###length 4 STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :Mover visualização com o Botão Direito, posição do mouse travada STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :Mover mapa com o Botão Direito, posição do mouse travada @@ -2015,7 +2015,7 @@ STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_NORMAL :1x STR_CONFIG_SETTING_TOWN_GROWTH :Ritmo de crescimento das localidades: {STRING} -STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Velocidade do crescimento das localidades +STR_CONFIG_SETTING_TOWN_GROWTH_HELPTEXT :Velocidade de crescimento das localidades ###length 5 STR_CONFIG_SETTING_TOWN_GROWTH_NONE :Nenhum STR_CONFIG_SETTING_TOWN_GROWTH_SLOW :Devagar @@ -2027,7 +2027,7 @@ STR_CONFIG_SETTING_LARGER_TOWNS :Proporção de STR_CONFIG_SETTING_LARGER_TOWNS_HELPTEXT :Quantidade de localidades que se tornarão cidades. Assim, uma localidade que começa maior crescerá mais rápido STR_CONFIG_SETTING_LARGER_TOWNS_VALUE :1 a cada {COMMA} ###setting-zero-is-special -STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nenhum +STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Nenhuma STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador de tamanho inicial da cidade: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamanho médio das cidades em relação às localidades normais no início do jogo @@ -2251,7 +2251,7 @@ STR_CHEAT_NO_JETCRASH :{LTBLUE}Aeronav STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altura máxima do mapa: {ORANGE}{NUM} STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altura máxima das montanhas no mapa STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} -STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar ano atual +STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar o ano atual STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} STR_CHEAT_STATION_RATING :{LTBLUE}Fixar classificações da estação em 100%: {ORANGE}{STRING} @@ -2593,7 +2593,7 @@ STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Nos últ ###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :erro geral -STR_NETWORK_ERROR_CLIENT_DESYNC :erro/falha de sincronização +STR_NETWORK_ERROR_CLIENT_DESYNC :erro de sincronização STR_NETWORK_ERROR_CLIENT_SAVEGAME :não foi possível carregar o mapa STR_NETWORK_ERROR_CLIENT_CONNECTION_LOST :conexão perdida STR_NETWORK_ERROR_CLIENT_PROTOCOL_ERROR :erro de protocolo @@ -2658,15 +2658,15 @@ STR_CONTENT_NAME_CAPTION :{BLACK}Nome STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Nome do conteúdo STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Clique em uma linha para ver os detalhes{}Clique na caixa de seleção para marcar e fazer o download STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Selecionar tudo -STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marcar todo o conteúdo para ser baixado +STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marcar todo o conteúdo para download STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Selecionar atualizações -STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Marcar para baixar todo conteúdo que seja atualização para um conteúdo existente +STR_CONTENT_SELECT_UPDATES_CAPTION_TOOLTIP :{BLACK}Marcar para download todo conteúdo que seja atualização para um conteúdo existente STR_CONTENT_UNSELECT_ALL_CAPTION :{BLACK}Desmarcar tudo STR_CONTENT_UNSELECT_ALL_CAPTION_TOOLTIP :{BLACK}Desmarcar todo o conteúdo selecionado STR_CONTENT_SEARCH_EXTERNAL :{BLACK}Procurar em sites externos STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Procurar conteúdo, que não está disponível no servidor de conteúdo do OpenTTD, em sites não associados ao OpenTTD STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Você está saindo do OpenTTD! -STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Os termos e condições ao baixar conteúdo de fontes externas pode variar.{}Você deverá consultar as fontes para obter instruções de como instalar o conteúdo no OpenTTD.{}Você deseja continuar? +STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Os termos e condições para download de conteúdo de fontes externas pode variar.{}Você deverá consultar as fontes para obter instruções de como instalar o conteúdo no OpenTTD.{}Você deseja continuar? STR_CONTENT_FILTER_TITLE :{BLACK}Filtrar por etiqueta/nome: STR_CONTENT_OPEN_URL :{BLACK}Página da internet STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visitar o site desse conteúdo @@ -2676,11 +2676,11 @@ STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER}Tamanho STR_CONTENT_DETAIL_TITLE :{SILVER}INFORMAÇÕES DO CONTEÚDO ###length 5 -STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}Você não selecionou isto para ser baixado -STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Você selecionou isto para ser baixado -STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Esta dependência foi selecionada para ser baixada +STR_CONTENT_DETAIL_SUBTITLE_UNSELECTED :{SILVER}Você não selecionou isto para download +STR_CONTENT_DETAIL_SUBTITLE_SELECTED :{SILVER}Você selecionou isto para download +STR_CONTENT_DETAIL_SUBTITLE_AUTOSELECTED :{SILVER}Esta dependência foi selecionada para download STR_CONTENT_DETAIL_SUBTITLE_ALREADY_HERE :{SILVER}Você já tem isto -STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Esse conteúdo é desconhecido e não pode ser baixado pelo OpenTTD +STR_CONTENT_DETAIL_SUBTITLE_DOES_NOT_EXIST :{SILVER}Esse conteúdo é desconhecido e o OpenTTD não pode fazer o download STR_CONTENT_DETAIL_UPDATE :{SILVER}Isto é uma atualização para {STRING} STR_CONTENT_DETAIL_NAME :{SILVER}Nome: {WHITE}{STRING} @@ -2708,11 +2708,11 @@ STR_CONTENT_TYPE_GAME_SCRIPT :Script de jogo STR_CONTENT_TYPE_GS_LIBRARY :Biblioteca de SJ # Content downloading progress window -STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Baixando conteúdo... +STR_CONTENT_DOWNLOAD_TITLE :{WHITE}Fazendo download de conteúdo... STR_CONTENT_DOWNLOAD_INITIALISE :{WHITE}Requisitando arquivos... -STR_CONTENT_DOWNLOAD_FILE :{WHITE}Baixando {STRING} ({NUM} de {NUM}) +STR_CONTENT_DOWNLOAD_FILE :{WHITE}Fazendo download de {STRING} ({NUM} de {NUM}) STR_CONTENT_DOWNLOAD_COMPLETE :{WHITE}Concluído -STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} de {BYTES} foram baixados ({NUM} %) +STR_CONTENT_DOWNLOAD_PROGRESS_SIZE :{WHITE}{BYTES} de {BYTES} foram transferidos ({NUM} %) # Content downloading error messages STR_CONTENT_ERROR_COULD_NOT_CONNECT :{WHITE}Não foi possível conectar ao servidor de conteúdo... @@ -2722,11 +2722,11 @@ STR_CONTENT_ERROR_COULD_NOT_EXTRACT :{WHITE}Falha na STR_MISSING_GRAPHICS_SET_CAPTION :{WHITE}Gráficos não instalados STR_MISSING_GRAPHICS_SET_MESSAGE :{BLACK}OpenTTD precisa de gráficos para funcionar, mas nenhum foi encontrado. Você permite que o OpenTTD faça o download e instale esses gráficos? -STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sim, obter os gráficos pela rede +STR_MISSING_GRAPHICS_YES_DOWNLOAD :{BLACK}Sim, fazer o download dos gráficos STR_MISSING_GRAPHICS_NO_QUIT :{BLACK}Não, sair do OpenTTD STR_MISSING_GRAPHICS_ERROR_TITLE :{WHITE}O download falhou -STR_MISSING_GRAPHICS_ERROR :{BLACK}O download de gráficos falhou.{}Por favor, obtenha os gráficos manualmente +STR_MISSING_GRAPHICS_ERROR :{BLACK}O download dos gráficos falhou.{}Por favor, faça o download dos gráficos manualmente. STR_MISSING_GRAPHICS_ERROR_QUIT :{BLACK}Sair do OpenTTD # Transparency settings window @@ -2809,7 +2809,7 @@ STR_BUILD_DEPOT_TRAIN_ORIENTATION_TOOLTIP :{BLACK}Escolher # Rail waypoint construction window STR_WAYPOINT_CAPTION :{WHITE}Ponto de controle -STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Escolher tipo de ponto de controle +STR_WAYPOINT_GRAPHICS_TOOLTIP :{BLACK}Escolher um tipo de ponto de controle # Rail station construction window STR_STATION_BUILD_RAIL_CAPTION :{WHITE}Seleção de Estação Ferroviária @@ -2820,7 +2820,7 @@ STR_STATION_BUILD_NUMBER_OF_TRACKS_TOOLTIP :{BLACK}Escolher STR_STATION_BUILD_PLATFORM_LENGTH :{BLACK}Comprimento da plataforma STR_STATION_BUILD_PLATFORM_LENGTH_TOOLTIP :{BLACK}Escolher o comprimento da estação ferroviária STR_STATION_BUILD_DRAG_DROP :{BLACK}Arrastar & Soltar -STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construir estação usando arrastar & soltar +STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Construir estação usando arrastar e soltar STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Escolher uma classe de estação para mostrar STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Escolher um tipo de estação para construir @@ -2854,7 +2854,7 @@ STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Aumentar # Bridge selection window STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Selecionar Ponte Ferroviária STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Selecionar Ponte Rodoviária -STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Seleção de ponte - Clique na ponte de sua preferência para construí-la +STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Seleção de ponte - clique na ponte de sua preferência para construí-la STR_SELECT_BRIDGE_INFO_NAME :{GOLD}{STRING} STR_SELECT_BRIDGE_INFO_NAME_MAX_SPEED :{GOLD}{STRING},{} {VELOCITY} STR_SELECT_BRIDGE_INFO_NAME_COST :{GOLD}{0:STRING},{} {WHITE}{2:CURRENCY_LONG} @@ -2966,7 +2966,7 @@ STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Comprar # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Seleção de Objeto -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Escolher objeto para construir. Ctrl+Clique+Arraste para selecionar a área diagonalmente. Pressione também Shift para só mostrar o custo estimado +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Escolher um objeto para construir. Ctrl+Clique+Arraste para selecionar a área diagonalmente. Pressione também Shift para só mostrar o custo estimado STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Escolher a classe do objeto para construir STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Pré-visualização do objeto STR_OBJECT_BUILD_SIZE :{BLACK}Tamanho: {GOLD}{NUM} x {NUM} quadrados @@ -3028,7 +3028,7 @@ STR_FOUND_TOWN_INITIAL_SIZE_TOOLTIP :{BLACK}Escolher STR_FOUND_TOWN_CITY :{BLACK}Cidade STR_FOUND_TOWN_CITY_TOOLTIP :{BLACK}Cidades crescem mais depressa do que as localidades normais{}Dependendo das configurações, elas são maiores quando fundadas -STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Disposição de estradas na localidade: +STR_FOUND_TOWN_ROAD_LAYOUT :{YELLOW}Disposição das estradas na localidade: STR_FOUND_TOWN_SELECT_TOWN_ROAD_LAYOUT :{BLACK}Selecionar disposição das estradas utilizada nesta localidade STR_FOUND_TOWN_SELECT_LAYOUT_ORIGINAL :{BLACK}Original STR_FOUND_TOWN_SELECT_LAYOUT_BETTER_ROADS :{BLACK}Estradas melhores @@ -3193,7 +3193,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno que per # About OpenTTD window STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... -STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Copyright original {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados +STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Direitos autorais originais {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} A equipe do OpenTTD @@ -3267,7 +3267,7 @@ STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lista de unidades, diretórios e arquivos de jogos gravados STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Nome selecionado para salvar o jogo STR_SAVELOAD_DELETE_BUTTON :{BLACK}Apagar -STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Apagar o jogo salvo selecionado +STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Excluir o jogo salvo selecionado STR_SAVELOAD_SAVE_BUTTON :{BLACK}Salvar STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Salvar o jogo atual usando o nome escolhido STR_SAVELOAD_LOAD_BUTTON :{BLACK}Abrir @@ -3372,7 +3372,7 @@ STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura d STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais elevado STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com neve (em %) STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com deserto (em %) -STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Alterar ano de início +STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Alterar o ano de início # SE Map generation STR_SE_MAPGEN_CAPTION :{WHITE}Tipo de cenário @@ -3435,7 +3435,7 @@ STR_NEWGRF_SETTINGS_TOGGLE_PALETTE :{BLACK}Ativar/D STR_NEWGRF_SETTINGS_TOGGLE_PALETTE_TOOLTIP :{BLACK}Ativar/Desativar a paleta do NewGRF selecionado.{}Faça isso quando os gráficos deste NewGRF ficarem cor de rosa no jogo STR_NEWGRF_SETTINGS_APPLY_CHANGES :{BLACK}Aplicar modificações -STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Procurar conteúdo que falta online +STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_BUTTON :{BLACK}Procurar conteúdo em falta online STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Verificar se o conteúdo em falta pode ser encontrado online STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Nome do arquivo: {SILVER}{STRING} @@ -3497,7 +3497,7 @@ STR_SPRITE_ALIGNER_GOTO_TOOLTIP :{BLACK}Ir para STR_SPRITE_ALIGNER_PREVIOUS_BUTTON :{BLACK}Sprite anterior STR_SPRITE_ALIGNER_PREVIOUS_TOOLTIP :{BLACK}Ir para o sprite normal anterior, pulando quaisquer sprites falsos/recoloridos/tipo de letra, retornando do primeiro sprite para o último STR_SPRITE_ALIGNER_SPRITE_TOOLTIP :{BLACK}Representação do sprite atualmente selecionado. O alinhamento é ignorado ao desenhar este sprite -STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Move o sprite, alterando os deslocamentos X e Y. Ctrl+Clique para mover o sprite 8 unidades por vez +STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Mover o sprite, alterando os deslocamentos X e Y. Ctrl+Clique para mover o sprite 8 unidades por vez ###length 2 STR_SPRITE_ALIGNER_CENTRE_OFFSET :{BLACK}Deslocamento centralizado @@ -3610,7 +3610,7 @@ STR_TOWN_DIRECTORY_CAPTION :{WHITE}Localida STR_TOWN_DIRECTORY_NONE :{ORANGE}- Nenhum - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Cidade){BLACK} ({COMMA}) -STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Nomes das localidades - Clique no nome para centralizar visualização principal na cidade. Ctrl+Clique para abrir uma nova visualização na localização da localidade +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Nomes das localidades - clique em um nome para centralizar a visualização principal na cidade. Ctrl+Clique para abrir uma nova visualização na localização da localidade STR_TOWN_POPULATION :{BLACK}População mundial: {COMMA} # Town view window @@ -3643,12 +3643,12 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Renomear Locali # Town local authority window STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Autoridade local de {TOWN} -STR_LOCAL_AUTHORITY_ZONE :{BLACK}Região +STR_LOCAL_AUTHORITY_ZONE :{BLACK}Área STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Mostrar a região dentro dos limites da autoridade local STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classificações das empresas de transporte: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Ações disponíveis: -STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - Clique no item para mais detalhes +STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - clique em um item para mais detalhes STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Fazer isto STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Executar a ação selecionada na lista acima @@ -3669,7 +3669,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{Y STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MONTHS :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 meses.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MINUTES :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 minutos.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Construir uma estátua em homenagem à sua empresa.{}Produz um aumento permanente na classificação da estação nesta localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{PUSH_COLOUR}{YELLOW}Financiar a construção de novos edifícios na localidade.{}Produz um aumento temporário no crescimento desta localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{PUSH_COLOUR}{YELLOW}Financiar a construção de novos imóveis na localidade.{}Produz um aumento temporário no crescimento desta localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MONTHS :{PUSH_COLOUR}{YELLOW}Comprar os direitos exclusivos de transporte na localidade por 12 meses.{}A autoridade local não permitirá que passageiros e cargas usem as estações dos concorrentes. Um suborno bem sucedido feito por um concorrente irá cancelar este contrato.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MINUTES :{PUSH_COLOUR}{YELLOW}Comprar os direitos exclusivos de transporte na localidade por 12 minutos.{}A autoridade local não permitirá que passageiros e cargas usem as estações dos concorrentes. Um suborno bem sucedido feito por um concorrente irá cancelar este contrato.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{PUSH_COLOUR}{YELLOW}Subornar a autoridade local para aumentar a sua avaliação e anular um direito exclusivo de transporte de um concorrente, correndo o risco de uma penalidade severa se for apanhado.{}{POP_COLOUR}Custo: {CURRENCY_LONG} @@ -3686,7 +3686,7 @@ STR_GOALS_TEXT :{ORANGE}{STRING STR_GOALS_NONE :{ORANGE}- Nenhum - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} -STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique no objetivo para centralizar visualização principal na indústria/localidade/quadrado. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade/quadrado +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique no objetivo para centralizar a visualização principal na indústria/localidade/quadrado. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade/quadrado # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}Pergunta @@ -3722,7 +3722,7 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_NONE :{ORANGE}- Nenhum - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serviços de transporte já subsidiados: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique em um serviço para centralizar visualização principal em uma indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique em um serviço para centralizar a visualização principal em uma indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade STR_SUBSIDIES_OFFERED_EXPIRY_DATE :até {DATE_SHORT} STR_SUBSIDIES_OFFERED_EXPIRY_TIME :durante {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :até {DATE_SHORT} @@ -3734,7 +3734,7 @@ STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}Livro de STR_STORY_BOOK_SPECTATOR :Livro de Histórias Global STR_STORY_BOOK_TITLE :{YELLOW}{STRING} STR_STORY_BOOK_GENERIC_PAGE_ITEM :Página {NUM} -STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Saltar para uma página específica escolhendo-a nesta lista +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Ir para uma página específica escolhendo-a nesta lista STR_STORY_BOOK_PREV_PAGE :{BLACK}Anterior STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Ir para a página anterior STR_STORY_BOOK_NEXT_PAGE :{BLACK}Próxima @@ -3742,7 +3742,7 @@ STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Ir para STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Referência de objetivo inválida # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Nomes das estações - Clique no nome para centralizar visualização principal na estação. Ctrl+Clique para abrir uma nova visualização na localização da estação +STR_STATION_LIST_TOOLTIP :{BLACK}Nomes das estações - clique em um nome para centralizar a visualização principal na estação. Ctrl+Clique para abrir uma nova visualização na localização da estação STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Ctrl+Clique para selecionar vários itens STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Estaç{P ão ões} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} @@ -3897,11 +3897,11 @@ STR_COMPANY_VIEW_INFRASTRUCTURE_AIRPORT :{WHITE}{COMMA} STR_COMPANY_VIEW_INFRASTRUCTURE_NONE :{WHITE}Nenhum STR_COMPANY_VIEW_BUILD_HQ_BUTTON :{BLACK}Construir sede -STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Construir sede da empresa +STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Construir a sede da empresa STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Ver sede -STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Mostrar sede da empresa +STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Mostrar a sede da empresa STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Mover sede -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reconstruir sede da empresa em outro local por 1% do valor da empresa. Pressione também Shift para só mostrar o custo estimado +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reconstruir a sede da empresa em outro local por 1% do valor da empresa. Pressione também Shift para só mostrar o custo estimado STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detalhes STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Ver contagens detalhadas da infraestrutura STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Dar dinheiro @@ -3910,7 +3910,7 @@ STR_COMPANY_VIEW_HOSTILE_TAKEOVER_BUTTON :{BLACK}Aquisiç STR_COMPANY_VIEW_HOSTILE_TAKEOVER_TOOLTIP :{BLACK}Fazer a aquisição hostil desta empresa STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nova Face -STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Escolher nova face para o presidente +STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Escolher uma face nova para o presidente STR_COMPANY_VIEW_COLOUR_SCHEME_BUTTON :{BLACK}Esquema de Cores STR_COMPANY_VIEW_COLOUR_SCHEME_TOOLTIP :{BLACK}Alterar a cor dos veículos da empresa STR_COMPANY_VIEW_COMPANY_NAME_BUTTON :{BLACK}Nome da Empresa @@ -3923,7 +3923,7 @@ STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nome do Preside STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Digitar a quantia de dinheiro que você quer dar STR_BUY_COMPANY_MESSAGE :{WHITE}Estamos procurando uma empresa de transportes para comprar a nossa empresa.{}{}Você deseja comprar {COMPANY} por {CURRENCY_LONG}? -STR_BUY_COMPANY_HOSTILE_TAKEOVER :{WHITE}Na aquisição hostil de {COMPANY} você irá adquirir todos os ativos, liquidar todos os empréstimos e pagar o valor de 2 anos de lucros.{}{}O total estimado é de {CURRENCY_LONG}.{}{}Você deseja continuar esta aquisição hostil? +STR_BUY_COMPANY_HOSTILE_TAKEOVER :{WHITE}Na aquisição hostil de {COMPANY} você irá adquirir todos os ativos, liquidar todos os empréstimos e pagar dois anos de lucros.{}{}O total estimado é de {CURRENCY_LONG}.{}{}Você deseja continuar esta aquisição hostil? # Company infrastructure window STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Infraestrutura de {COMPANY} @@ -3948,7 +3948,7 @@ STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUST 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} e mais {NUM} ... -STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Nomes de indústrias - Clique no nome para centralizar visualização principal na indústria. Ctrl+Clique para abrir uma nova visualização na localização da indústria +STR_INDUSTRY_DIRECTORY_LIST_CAPTION :{BLACK}Nomes de indústrias - clique em um nome para centralizar a visualização principal na indústria. Ctrl+Clique para abrir uma nova visualização na localização da indústria STR_INDUSTRY_DIRECTORY_ACCEPTED_CARGO_FILTER :{BLACK}Carga aceita: {SILVER}{STRING} STR_INDUSTRY_DIRECTORY_PRODUCED_CARGO_FILTER :{BLACK}Carga produzida: {SILVER}{STRING} STR_INDUSTRY_DIRECTORY_FILTER_ALL_TYPES :Todos os tipos de carga @@ -3971,7 +3971,7 @@ STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Necessit STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{0:STRING}{BLACK}{3:STRING} STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} aguardando{STRING} -STR_CONFIG_GAME_PRODUCTION :{WHITE}Alterar produção (múltiplo de 8, até 2040) +STR_CONFIG_GAME_PRODUCTION :{WHITE}Alterar a produção (múltiplo de 8, até 2040) STR_CONFIG_GAME_PRODUCTION_LEVEL :{WHITE}Alterar o nível de produção (porcentagem, até 800%) # Vehicle lists @@ -3982,10 +3982,10 @@ STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Aeronave{P "" s} ###length VEHICLE_TYPES -STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Trens - Clique em um trem para informações -STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Veículos - Clique em um veículo para informações -STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Embarcações - Clique em uma embarcação para informações -STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Aeronaves - Clique em uma aeronave para informações +STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Trens - clique em um trem para informações +STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Veículos - clique em um veículo para informações +STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Embarcações - clique em uma embarcação para informações +STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Aeronaves - clique em uma aeronave para informações ###length VEHICLE_TYPES STR_VEHICLE_LIST_AVAILABLE_TRAINS :Trens Disponíveis @@ -4029,7 +4029,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Aeronaves sem g STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupos - Clique em um grupo para listar todos os veículos do grupo. Clique+Arraste para organizar a hierarquia +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupos - clique em um grupo para listar todos os veículos do grupo. Clique+Arraste para organizar a hierarquia STR_GROUP_CREATE_TOOLTIP :{BLACK}Clique para criar um grupo STR_GROUP_DELETE_TOOLTIP :{BLACK}Excluir o grupo selecionado STR_GROUP_RENAME_TOOLTIP :{BLACK}Alterar o nome do grupo selecionado @@ -4180,9 +4180,9 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trens - arraste o veículo com o botão esquerdo do mouse para acrescentar/retirar do trem. Clique com o botão direito para informações. Ctrl+Clique para aplicar uma das funções à cadeia seguinte -STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veículos - Clique com o botão direito em um veículo para informações -STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Embarcações - Clique com o botão direito em uma embarcação para informações -STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeronaves - Clique com o botão direito em uma aeronave para informações +STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veículos - clique com o botão direito em um veículo para informações +STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Embarcações - clique com o botão direito em uma embarcação para informações +STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeronaves - clique com o botão direito em uma aeronave para informações ###length VEHICLE_TYPES STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Arraste o veículo ferroviário até aqui para vendê-lo @@ -4377,10 +4377,10 @@ STR_VEHICLE_VIEW_SHIP_SHOW_DETAILS_TOOLTIP :{BLACK}Mostrar STR_VEHICLE_VIEW_AIRCRAFT_SHOW_DETAILS_TOOLTIP :{BLACK}Mostrar detalhes da aeronave ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual do trem - Clique para iniciar/parar o trem -STR_VEHICLE_VIEW_ROAD_VEHICLE_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual do veículo - Clique para iniciar/parar o veículo -STR_VEHICLE_VIEW_SHIP_STATE_STATUS_STOP_TOOLTIP :{BLACK}Estado atual da embarcação - Clique para iniciar/parar a embarcação -STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual da aeronave - Clique para iniciar/parar a aeronave +STR_VEHICLE_VIEW_TRAIN_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual do trem - clique para iniciar/parar o trem +STR_VEHICLE_VIEW_ROAD_VEHICLE_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual do veículo - clique para iniciar/parar o veículo +STR_VEHICLE_VIEW_SHIP_STATE_STATUS_STOP_TOOLTIP :{BLACK}Estado atual da embarcação - clique para iniciar/parar a embarcação +STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Estado atual da aeronave - clique para iniciar/parar a aeronave # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Carregando / descarregando @@ -4528,7 +4528,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horários STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de horários -STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - Clique em uma ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem +STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - clique em uma ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} {STRING} @@ -4700,7 +4700,7 @@ STR_TIMETABLE_TITLE :{WHITE}{VEHICLE STR_TIMETABLE_ORDER_VIEW :{BLACK}Ordens STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Mudar para visualização de ordens -STR_TIMETABLE_TOOLTIP :{BLACK}Horários - Clique em uma ordem para selecioná-la +STR_TIMETABLE_TOOLTIP :{BLACK}Horários - clique em uma ordem para selecioná-la STR_TIMETABLE_NO_TRAVEL :Não viajar STR_TIMETABLE_NOT_TIMETABLEABLE :Viajar (automático; programado pela próxima ordem manual) diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 3427437456..e84cc263ee 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Can't bu STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Can't build company headquarters... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Can't rename town... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Can't found town here... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Can't expand town... diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 29ece3c052..fcb8d3e559 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Can't bu STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Can't build company headquarters... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Can't build any towns... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Can't rename town... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Can't found town here... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Can't expand town... diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index f7a52f4d97..ac950a5fa3 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Et ole a STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Et ole asettanut palvelimesi nimeä. Nimen voi asettaa moninpeli-ikkunan ylälaidassa. STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Tämän asiakkaan versio ei vastaa palvelimen versiota STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Väärä salasana +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Et ole sallittujen asiakkaiden listalla STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Palvelin on täynnä STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Sinut on estetty palvelimelta STR_NETWORK_ERROR_KICKED :{WHITE}Sinut potkittiin pihalle palvelimelta @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :vastaanotettiin STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :väärä revisio STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nimi on jo käytössä STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :väärä salasana +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :ei sallittujen listalla STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :väärä company-id DoCommandissa STR_NETWORK_ERROR_CLIENT_KICKED :palvelin potki pihalle STR_NETWORK_ERROR_CLIENT_CHEATER :yritti käyttää huijausta @@ -4993,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Yhtiöt STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Yhtiön päärakennusta ei voi rakentaa... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kuntia ei voi luoda +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kuntia ei voida luoda… STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kunnan nimeä ei voi vaihtaa... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kuntaa ei voi perustaa tähän... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kuntaa ei voi laajentaa... diff --git a/src/lang/german.txt b/src/lang/german.txt index eb1555b68f..db7508884e 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -4996,7 +4996,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Firmenka STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Firmensitz kann nicht gebaut werden ... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Bau von Städten unmöglich +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Bau von Städten unmöglich … STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Die Stadt kann nicht umbenannt werden ... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Stadt kann hier nicht gegründet werden ... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Stadt kann nicht vergrößert werden ... diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 9a7d68d4ae..25b8d1f611 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}접속 STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}서버 이름을 지정하지 않았습니다. 서버 이름은 멀티플레이 창 맨 위에서 설정할 수 있습니다. STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}이 접속자의 게임 버전이 서버의 버전과 일치하지 않습니다 STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}잘못된 비밀번호입니다 +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}접속이 허용된 접속자가 아닙니다 STR_NETWORK_ERROR_SERVER_FULL :{WHITE}서버에 인원이 가득 찼습니다 STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}서버 관리자에 의해 접속이 차단되었습니다 STR_NETWORK_ERROR_KICKED :{WHITE}서버에서 강제로 추방되었습니다 @@ -2602,6 +2603,7 @@ 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_NOT_ON_ALLOW_LIST :접속이 허용되지 않음 STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :DoCommand 구문 내의 잘못된 회사 STR_NETWORK_ERROR_CLIENT_KICKED :강제추방 STR_NETWORK_ERROR_CLIENT_CHEATER :치트 사용 시도 @@ -4994,7 +4996,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}회사 STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}본사를 건설할 수 없습니다... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}도시를 만들 수 없습니다 +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}도시를 만들 수 없습니다... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}도시 이름을 바꿀 수 없습니다... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}여기에 도시를 건설할 수 없습니다... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}도시를 확장할 수 없습니다... diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 43722b0af0..e5555a8b89 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -4997,7 +4997,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Kan ikke STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Kan ikke bygge selskapets hovedkontor... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan ikke grunnlegge noen byer +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan ikke grunnlegge noen byer... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kan ikke endre navn på byen... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kan ikke grunnlegge by her... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kan ikke utvide byen... diff --git a/src/lang/polish.txt b/src/lang/polish.txt index e579023bd2..4df0d47163 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -5381,7 +5381,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Nie moż STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Nie można zbudować siedziby firmy... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Nie można wybudować miasta +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Nie można zbudować żadnego miasta... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Nie można zmienić nazwy miasta... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Nie można tutaj zbudować miasta... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Nie można rozszerzyć miasta... diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 7d86a875e8..7a9df710f9 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -1630,7 +1630,8 @@ STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT_PERIOD :При вклю STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Транспортні засоби не застарівають: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :При включенні будь-яка модель транспортного засобу буде доступна для придбання безстроково після її впровадження. -STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Дотримання розкладу: {STRING} +STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Вимір часу: {STRING} +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Оберіть вимір часу. Це налаштування неможливо змінити в грі.{}{}Календарний час, у якому рік складається з 12 місяців, а кожен місяць має 28-31 день, базовий в OpenTTD.{}{}Годинниковий час складається з однохвилинних зростань виробництва товарів і фінансових потоків, які відповідають 30-денному місяцю у календарному часі. Зростання об'єднані у 12-хвилинні періоди, які відповідають 1му року в календарному часі.{}{}У будь-якому варіанті використовуються базові дати появи транспорту, будиків та іншої інфраструктури. ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Календар STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Годинник @@ -1677,7 +1678,7 @@ 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_SHOW_CARGO_IN_LISTS :Показати вантажі, які може перевозити транспорт, у віконному списку{STRING} +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Показати у віконному списку вантажі, які може перевозити транспорт:{STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :При включенні придатний вантаж для транспортних засобів показано нижче у списку транспорту STR_CONFIG_SETTING_LANDSCAPE :Ландшафт: {STRING} @@ -1696,7 +1697,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY :Густота STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Встановіть кількість підприємств, що будуть створені і кількість підприємств, що існуватимуть впродовж гри STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Макс. відстань від краю карти до нафтопереробних заводів: {STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Обмеження того, наскільки далеко може бути побудований кордон нафтопереробних заводів та нафтових установок. На островних картах це гарантує, що вони знаходяться біля узбережжя. На картах більше 256 плиток це значення збільшується. +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Обмеження віддалення від меж мапи будівництва нафтопереробних заводів та нафтових установок. На острівних мапах це гарантує розташування біля узбережжя. На мапах понад 256 клітинок це значення збільшиться. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Рівень снігової шапки: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Контроль висоти, вище якої лежить сніг в субарктичному ландшафті. Сніг впливає на генерування підприємств та на умови росту міст. Можливо змінити лише в редакторі сценаріїв, інакше вираховується за параметром "покриття снігом" @@ -2191,7 +2192,7 @@ STR_CONFIG_SETTING_DEMAND_SIZE :Кількіс STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Встановивши це на менше ніж 100% можна зробити симетричну доставку схожою на асиметричну. Менше вантажу буде примусово повертатися назад, якщо певна його кількість надсилається на станцію. При 0% - симетрична доставка поводить себе зовсім як асиметрична. STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Рівень заповнення коротких маршрутів перед переходом до містких: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Часто між двома заданими станціями є більше, ніж один шлях. Cargodist заповнить спочатку найкоротший маршрут, потім другий після найкоротшого і т. д. Рівень заповнення визначається за допомогою оцінки місткості та запланованого використання. Якщо всі маршрути буде заповнено, а джерело вантажу не вичерпається, алгоритм почне переповнювати маршрути, починаючи з наймісткіших. Ця настройка дозволяє задати рівень заповнення в процентах, якого треба досягнути на першому маршруті перед тим, як перейти до заповнення наступного. Варто встановити цей рівень меншим за 100%, щоб уникнути переповнення станцій в разі переоцінки місткості маршруту. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Часто між двома заданими станціями є кілька шляхів. Cargodist заповнить спочатку найкоротший маршрут, потім другий після найкоротшого тощо. Рівень заповнення визначається оцінкою місткості та запланованого використання. Якщо всі маршрути буде заповнено, а джерело вантажу не вичерпається, алгоритм почне переповнювати маршрути, починаючи з наймісткіших. Налаштування дозволяє вказати рівень заповнення у відсотках, якого треба досягти на першому маршруті перед заповненням наступного. Встановлення рівня меншим за 100% дозводить уникнути переповнення станцій у випадку переоцінки місткості. STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Одиниці швидкості (на суші): {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :Одиниці швидкості (на воді): {STRING} @@ -2564,7 +2565,7 @@ 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_VISIBILITY_LABEL :{BLACK}Видимість +STR_NETWORK_START_SERVER_VISIBILITY_LABEL :{BLACK}Видимість: STR_NETWORK_START_SERVER_VISIBILITY_TOOLTIP :{BLACK}Чи бачитимуть інші твій сервер у загальному списку STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} клієнт{P "" а ів} STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Макс. клієнтів: @@ -3095,7 +3096,7 @@ STR_STATION_BUILD_NOISE :{BLACK}Ріве # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Ландшафт STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Опустити край ділянки землі. Протягування мишею опускає вибраний край і вирівнює вибрану ділянку до його нової висоти. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат -STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Підняти край ділянки землі. Протягування мишею піднімає вибраний край і вирівнює вибрану ділянку до його нової висоти. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат +STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Підняти край ділянки землі. Протягування мишею піднімає вибраний край і вирівнює вибрану ділянку до його нової висоти. Ctrl+клац+протягування для виділення клітинок по діагоналі. Утримуйте Shift для показу очікуваних витрат STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Вирівняти ділянку землі до висоти першого обраного краю. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Купити ділянку для використання у майбутньому. Утримуйте Ctrl для виділення діагональної ділянки. Утримуйте Shift для показу вартості ділянки @@ -3958,7 +3959,7 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Забо # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} -STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Показати точку маршруту в центрі екрану. Ctrl+клац мишею відкриє нове вікно у місці розташування точки маршруту +STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Показати точку маршруту в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на точку маршруту STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Перейменувати точку маршруту STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Показати буй в центрі екрану. Ctrl+клац мишею відкриє нове вікно у місці розташування буя STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Перейменувати буй @@ -4036,7 +4037,7 @@ STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Побу STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Показати Офіс STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Показати офіс компанії STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Перенести Офіс -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Перенесення Офісу в інше місце. Коштує 1% від вартості компанії. Утримуйте Shift для показу очікуваних витрат на перенесення +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Перенесення офісу в інше місце. Коштує 1% від вартості компанії. Утримуйте Shift для показу очікуваних витрат на перенесення STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Деталі STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Переглянути детальну інформацію про інфраструктуру STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Дати грошей @@ -4263,7 +4264,7 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Купи ###length VEHICLE_TYPES 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_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Придбати та переобладнати виділене судно. Утримуйте Shift, щоб побачити тільки орієнтовну вартість STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Придбайте та переобладнайте виділений повітряний апарат. Утримуйте Shift, щоб побачити тільки орієнтовну вартість ###length VEHICLE_TYPES @@ -4365,7 +4366,7 @@ STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купи STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати залізничне депо у центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на залізничне депо STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Показати гараж у центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на гараж STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Показати док у центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на док -STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати ангар в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на ангар +STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Показати ангар у центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на ангар ###length VEHICLE_TYPES STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Отримати список усіх поїздів, що заходять до цього депо @@ -5133,7 +5134,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Немо STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Неможливо збудувати Офіс... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Не можна створити місто +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Неможливо створити місто... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Неможливо перейменувати... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Тут не можна будувати місто... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Неможливо розширити місто... From 5751da78093bb689f0fbec89dbcf19437cc19632 Mon Sep 17 00:00:00 2001 From: raddari Date: Sat, 23 Mar 2024 00:03:16 +1030 Subject: [PATCH 14/70] Fix #7982: Show existing coverage with unambiguous adjacent station (#12346) When hovering a tile containing a station, show existing coverage for that station even when adjacent to a different station. Co-authored-by: Peter Nelson --- src/station_gui.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/station_gui.cpp b/src/station_gui.cpp index 3215b72500..414b48a466 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -92,6 +92,15 @@ void FindStationsAroundSelection() /* Tile area for TileHighlightData */ TileArea location(TileVirtXY(_thd.pos.x, _thd.pos.y), _thd.size.x / TILE_SIZE - 1, _thd.size.y / TILE_SIZE - 1); + /* If the current tile is already a station, then it must be the nearest station. */ + if (IsTileType(location.tile, MP_STATION) && GetTileOwner(location.tile) == _local_company) { + T* st = T::GetByTile(location.tile); + if (st != nullptr) { + SetViewportCatchmentSpecializedStation(st, true); + return; + } + } + /* Extended area by one tile */ uint x = TileX(location.tile); uint y = TileY(location.tile); From 7457f8d0ffa1cf345b80a5a386b54968f9a7dd29 Mon Sep 17 00:00:00 2001 From: merni-ns <66267867+merni-ns@users.noreply.github.com> Date: Sat, 23 Mar 2024 00:49:29 +0530 Subject: [PATCH 15/70] Codefix: Incorrect pluralisation in last service/service interval texts (#12352) --- src/lang/english.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index 9263705e4b..39d9cb6432 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} {STRING1} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}minutes{BLACK} {STRING1} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}minute{P "" s}{BLACK} {STRING1} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicing interval: {LTBLUE}{COMMA}%{BLACK} {STRING1} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Last service: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last service: {LTBLUE}{NUM} minutes ago +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last service: {LTBLUE}{NUM} minute{P "" s} ago STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Increase servicing interval by 10 days. Ctrl+Click to increase servicing interval by 5 days STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Increase servicing interval by 5 minutes. Ctrl+Click to increase servicing interval by 1 minute STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Increase servicing interval by 10 percent. Ctrl+Click to increase servicing interval by 5 percent From e904122441430b704439164d45f5ead198dcb119 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Fri, 22 Mar 2024 21:30:44 +0100 Subject: [PATCH 16/70] Codefix: follow coding style --- src/newgrf_text.cpp | 10 +++++----- src/station_gui.cpp | 2 +- src/tile_map.h | 8 ++++---- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/newgrf_text.cpp b/src/newgrf_text.cpp index 40ef28c9a2..967af68196 100644 --- a/src/newgrf_text.cpp +++ b/src/newgrf_text.cpp @@ -269,7 +269,7 @@ std::string TranslateTTDPatchCodes(uint32_t grfid, uint8_t language_id, bool all continue; } } else { - c = (uint8_t)*src++; + c = static_cast(*src++); } if (c == '\0') break; @@ -305,8 +305,8 @@ std::string TranslateTTDPatchCodes(uint32_t grfid, uint8_t language_id, bool all { if (src[0] == '\0' || src[1] == '\0') goto string_end; StringID string; - string = ((uint8_t)* src++); - string |= ((uint8_t)* src++) << 8; + string = static_cast(*src++); + string |= static_cast(*src++) << 8; Utf8Encode(d, SCC_NEWGRF_STRINL); Utf8Encode(d, MapGRFStringID(grfid, string)); break; @@ -350,8 +350,8 @@ std::string TranslateTTDPatchCodes(uint32_t grfid, uint8_t language_id, bool all case 0x03: { if (src[0] == '\0' || src[1] == '\0') goto string_end; - uint16_t tmp = ((uint8_t)* src++); - tmp |= ((uint8_t)* src++) << 8; + uint16_t tmp = static_cast(*src++); + tmp |= static_cast(*src++) << 8; Utf8Encode(d, SCC_NEWGRF_PUSH_WORD); Utf8Encode(d, tmp); break; diff --git a/src/station_gui.cpp b/src/station_gui.cpp index 414b48a466..098be7a228 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -94,7 +94,7 @@ void FindStationsAroundSelection() /* If the current tile is already a station, then it must be the nearest station. */ if (IsTileType(location.tile, MP_STATION) && GetTileOwner(location.tile) == _local_company) { - T* st = T::GetByTile(location.tile); + T *st = T::GetByTile(location.tile); if (st != nullptr) { SetViewportCatchmentSpecializedStation(st, true); return; diff --git a/src/tile_map.h b/src/tile_map.h index 687963270b..6fbb3a53fa 100644 --- a/src/tile_map.h +++ b/src/tile_map.h @@ -244,12 +244,12 @@ inline TropicZone GetTropicZone(Tile tile) /** * Get the current animation frame * @param t the tile - * @pre IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) ||IsTileType(t, MP_STATION) + * @pre IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) || IsTileType(t, MP_STATION) * @return frame number */ inline uint8_t GetAnimationFrame(Tile t) { - assert(IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) ||IsTileType(t, MP_STATION)); + assert(IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) || IsTileType(t, MP_STATION)); return t.m7(); } @@ -257,11 +257,11 @@ inline uint8_t GetAnimationFrame(Tile t) * Set a new animation frame * @param t the tile * @param frame the new frame number - * @pre IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) ||IsTileType(t, MP_STATION) + * @pre IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) || IsTileType(t, MP_STATION) */ inline void SetAnimationFrame(Tile t, uint8_t frame) { - assert(IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) ||IsTileType(t, MP_STATION)); + assert(IsTileType(t, MP_HOUSE) || IsTileType(t, MP_OBJECT) || IsTileType(t, MP_INDUSTRY) || IsTileType(t, MP_STATION)); t.m7() = frame; } From df2ee7b06cfa074706a40905e2dd7dc1e67860aa Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sat, 23 Mar 2024 00:12:35 +0000 Subject: [PATCH 17/70] Cleanup: Remove old SaveLoad workarounds for MS VS 2017. (#12355) --- src/saveload/station_sl.cpp | 17 ++--------------- src/saveload/vehicle_sl.cpp | 34 ++++------------------------------ 2 files changed, 6 insertions(+), 45 deletions(-) diff --git a/src/saveload/station_sl.cpp b/src/saveload/station_sl.cpp index 35d9b7e81a..8c5b962ead 100644 --- a/src/saveload/station_sl.cpp +++ b/src/saveload/station_sl.cpp @@ -329,17 +329,7 @@ public: class SlStationGoods : public DefaultSaveLoadHandler { public: -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - /* This table access private members of other classes; they have this - * class as friend. For MSVC CL 19.15 and 19.16 this doesn't work for - * "inline static const", so we are forced to wrap the table in a - * function. CL 19.16 is the latest for VS2017. */ - inline static const SaveLoad description[] = {{}}; - SaveLoadTable GetDescription() const override { -#else - inline -#endif - static const SaveLoad description[] = { + inline static const SaveLoad description[] = { SLEG_CONDVAR("waiting_acceptance", _waiting_acceptance, SLE_UINT16, SL_MIN_VERSION, SLV_68), SLE_CONDVAR(GoodsEntry, status, SLE_UINT8, SLV_68, SL_MAX_VERSION), SLE_VAR(GoodsEntry, time_since_pickup, SLE_UINT8), @@ -363,10 +353,7 @@ public: SLEG_CONDSTRUCTLIST("flow", SlStationFlow, SLV_183, SL_MAX_VERSION), SLEG_CONDSTRUCTLIST("cargo", SlStationCargo, SLV_183, SL_MAX_VERSION), }; -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - return description; - } -#endif + inline const static SaveLoadCompatTable compat_description = _station_goods_sl_compat; /** diff --git a/src/saveload/vehicle_sl.cpp b/src/saveload/vehicle_sl.cpp index 2ae6e6ed3f..4e42de3962 100644 --- a/src/saveload/vehicle_sl.cpp +++ b/src/saveload/vehicle_sl.cpp @@ -634,17 +634,7 @@ static Money _cargo_feeder_share; class SlVehicleCommon : public DefaultSaveLoadHandler { public: -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - /* This table access private members of other classes; they have this - * class as friend. For MSVC CL 19.15 and 19.16 this doesn't work for - * "inline static const", so we are forced to wrap the table in a - * function. CL 19.16 is the latest for VS2017. */ - inline static const SaveLoad description[] = {{}}; - SaveLoadTable GetDescription() const override { -#else - inline -#endif - static const SaveLoad description[] = { + inline static const SaveLoad description[] = { SLE_VAR(Vehicle, subtype, SLE_UINT8), SLE_REF(Vehicle, next, REF_VEHICLE_OLD), @@ -773,10 +763,7 @@ public: SLE_CONDVAR(Vehicle, depot_unbunching_next_departure, SLE_UINT64, SLV_DEPOT_UNBUNCHING, SL_MAX_VERSION), SLE_CONDVAR(Vehicle, round_trip_time, SLE_INT32, SLV_DEPOT_UNBUNCHING, SL_MAX_VERSION), }; -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - return description; - } -#endif + inline const static SaveLoadCompatTable compat_description = _vehicle_common_sl_compat; void Save(Vehicle *v) const override @@ -982,17 +969,7 @@ public: class SlVehicleDisaster : public DefaultSaveLoadHandler { public: -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - /* This table access private members of other classes; they have this - * class as friend. For MSVC CL 19.15 and 19.16 this doesn't work for - * "inline static const", so we are forced to wrap the table in a - * function. CL 19.16 is the latest for VS2017. */ - inline static const SaveLoad description[] = {{}}; - SaveLoadTable GetDescription() const override { -#else - inline -#endif - static const SaveLoad description[] = { + inline static const SaveLoad description[] = { SLE_REF(Vehicle, next, REF_VEHICLE_OLD), SLE_VAR(Vehicle, subtype, SLE_UINT8), @@ -1026,10 +1003,7 @@ public: SLE_CONDVAR(DisasterVehicle, big_ufo_destroyer_target, SLE_UINT32, SLV_191, SL_MAX_VERSION), SLE_CONDVAR(DisasterVehicle, flags, SLE_UINT8, SLV_194, SL_MAX_VERSION), }; -#if defined(_MSC_VER) && (_MSC_VER == 1915 || _MSC_VER == 1916) - return description; - } -#endif + inline const static SaveLoadCompatTable compat_description = _vehicle_disaster_sl_compat; void Save(Vehicle *v) const override From 4321cca5fbada9b7ad43587b462539bb3e22f300 Mon Sep 17 00:00:00 2001 From: translators Date: Sat, 23 Mar 2024 04:41:01 +0000 Subject: [PATCH 18/70] Update: Translations from eints vietnamese: 1 change by KhoiCanDev chinese (simplified): 1 change by WenSimEHRP ukrainian: 11 changes by StepanIvasyn catalan: 1 change by J0anJosep danish: 1 change by bscargo dutch: 3 changes by Afoklala portuguese (brazilian): 58 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 116 +++++++++++++++--------------- src/lang/catalan.txt | 2 +- src/lang/danish.txt | 2 +- src/lang/dutch.txt | 4 +- src/lang/simplified_chinese.txt | 2 +- src/lang/ukrainian.txt | 22 +++--- src/lang/vietnamese.txt | 2 +- 7 files changed, 76 insertions(+), 74 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 9733189049..1524cfccc3 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -433,8 +433,8 @@ STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Colocar ###length 7 STR_SCENEDIT_FILE_MENU_SAVE_SCENARIO :Salvar cenário STR_SCENEDIT_FILE_MENU_LOAD_SCENARIO :Abrir cenário -STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Salvar mapa topográfico -STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Abrir mapa topográfico +STR_SCENEDIT_FILE_MENU_SAVE_HEIGHTMAP :Salvar mapa de altitudes +STR_SCENEDIT_FILE_MENU_LOAD_HEIGHTMAP :Abrir mapa de altitudes STR_SCENEDIT_FILE_MENU_QUIT_EDITOR :Sair do editor de cenários STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Sair @@ -800,10 +800,10 @@ STR_SMALLMAP_COMPANY :{TINY_FONT}{COM STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} STR_SMALLMAP_DISABLE_ALL :{BLACK}Desabilitar tudo STR_SMALLMAP_ENABLE_ALL :{BLACK}Habilitar tudo -STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostrar altura +STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostrar altitudes STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}Não mostrar indústrias no mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Mostrar todas as indústrias no mapa -STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Mostrar/Ocultar mapa topográfico +STR_SMALLMAP_TOOLTIP_SHOW_HEIGHT :{BLACK}Mostrar/Ocultar mapa de altitudes STR_SMALLMAP_TOOLTIP_DISABLE_ALL_COMPANIES :{BLACK}Mostrar no mapa as propriedades que não pertencem às empresas STR_SMALLMAP_TOOLTIP_ENABLE_ALL_COMPANIES :{BLACK}Mostrar no mapa as propriedades de todas as empresas STR_SMALLMAP_TOOLTIP_DISABLE_ALL_CARGOS :{BLACK}Não mostrar as cargas no mapa @@ -1198,8 +1198,8 @@ STR_TERRAIN_TYPE_FLAT :Plano STR_TERRAIN_TYPE_HILLY :Acidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso STR_TERRAIN_TYPE_ALPINIST :Alpinismo -STR_TERRAIN_TYPE_CUSTOM :Altura personalizada -STR_TERRAIN_TYPE_CUSTOM_VALUE :Altura personalizada ({NUM}) +STR_TERRAIN_TYPE_CUSTOM :Altitude personalizada +STR_TERRAIN_TYPE_CUSTOM_VALUE :Altitude personalizada ({NUM}) ###length 4 STR_CITY_APPROVAL_LENIENT :Leniente @@ -1320,12 +1320,12 @@ STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Ativar desastre STR_CONFIG_SETTING_CITY_APPROVAL :Atitude da autoridade local: {STRING} STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Escolher de que modo o ruído sonoro e os danos ambientais, causados pelas empresas, afetam a classificação delas na localidade e as ações futuras de construção na localidade -STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Limite de altura do mapa: {STRING} -STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Definir a altura máxima do terreno do mapa. Com "(automático)" um valor adequado será escolhido após a geração do terreno +STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Limite de altitude do mapa: {STRING} +STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Definir a altitude máxima do terreno do mapa. Com "(automático)" um valor adequado será escolhido após a geração do terreno STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_AUTO :(automático) -STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Você não pode definir o limite de altura do mapa para este valor. Pelo menos uma montanha no mapa é mais alta +STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Você não pode definir o limite de altitude do mapa para este valor. Pelo menos uma montanha no mapa é mais alta STR_CONFIG_SETTING_AUTOSLOPE :Permitir paisagismo sob edifícios, vias, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permitir paisagismo sob edifícios e vias sem precisar removê-lo(a)s @@ -1527,7 +1527,7 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :Quantia mínima STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Quantia mínima de dinheiro que deve existir na conta bancária para a renovação automática de veículos ser considerada STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da mensagem de erro: {STRING} -STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da visualização de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da exibição de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Quando este valor está definido como 0, os textos de ajuda podem ser mostrados com o botão direito do mouse @@ -1556,7 +1556,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno: {STRING} -STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Escolher a altura das colinas e montanhas da paisagem +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Escolher a altitude das colinas e montanhas da paisagem STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidade de indústrias: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Definir quantas indústrias devem ser geradas e que nível deve ser mantido durante o jogo @@ -1603,13 +1603,13 @@ STR_CONFIG_SETTING_ROAD_SIDE_HELPTEXT :Escolher o lado STR_CONFIG_SETTING_ROAD_SIDE_LEFT :Conduzir pela esquerda STR_CONFIG_SETTING_ROAD_SIDE_RIGHT :Conduzir pela direita -STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotação do mapa topográfico: {STRING} -STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_TOOLTIP :Escolher em que sentido a imagem do mapa topográfico será girada para caber no mundo do jogo +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Rotação do mapa de altitudes: {STRING} +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_TOOLTIP :Escolher em que sentido a imagem do mapa de altitudes será girada para caber no mundo do jogo ###length 2 STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Sentido Anti-horário STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Sentido Horário -STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altura de um mapa de cenário plano: {STRING} +STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altitude para um mapa de cenário plano: {STRING} ###length 2 STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Um ou mais quadrados na borda norte não estão vazios STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Um ou mais quadrados em um dos cantos não é água @@ -2178,7 +2178,7 @@ STR_INTRO_CAPTION :{WHITE}OpenTTD STR_INTRO_NEW_GAME :{BLACK}Novo Jogo STR_INTRO_LOAD_GAME :{BLACK}Abrir Jogo STR_INTRO_PLAY_SCENARIO :{BLACK}Jogar em Cenário -STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Jogar em Mapa Topográfico +STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Jogar em Mapa de Altitudes STR_INTRO_SCENARIO_EDITOR :{BLACK}Editor de Cenário STR_INTRO_MULTIPLAYER :{BLACK}Multijogador @@ -2194,7 +2194,7 @@ STR_INTRO_QUIT :{BLACK}Sair do STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Iniciar um novo jogo. Ctrl+Clique para saltar a configuração do mapa STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Abrir um jogo salvo -STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Iniciar um novo jogo, usando um mapa topográfico como terreno +STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Iniciar um novo jogo, usando um mapa de altitudes como terreno STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Iniciar um novo jogo, usando um cenário personalizado STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Criar um cenário de jogo personalizado STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Iniciar um jogo multijogador @@ -2248,8 +2248,8 @@ STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Jogando STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Escavadeira mágica (remove indústrias, objetos estáticos): {ORANGE}{STRING} STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Os túneis podem se cruzar: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Aeronaves a jato não irão se acidentar (frequentemente) em aeroportos pequenos: {ORANGE}{STRING} -STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altura máxima do mapa: {ORANGE}{NUM} -STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altura máxima das montanhas no mapa +STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altitude máxima do mapa: {ORANGE}{NUM} +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altitude máxima das montanhas no mapa STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar o ano atual STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} @@ -2701,7 +2701,7 @@ STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :IA STR_CONTENT_TYPE_AI_LIBRARY :Biblioteca de IA STR_CONTENT_TYPE_SCENARIO :Cenário -STR_CONTENT_TYPE_HEIGHTMAP :Mapa topográfico +STR_CONTENT_TYPE_HEIGHTMAP :Mapa de altitudes STR_CONTENT_TYPE_BASE_SOUNDS :Sons base STR_CONTENT_TYPE_BASE_MUSIC :Músicas base STR_CONTENT_TYPE_GAME_SCRIPT :Script de jogo @@ -3260,8 +3260,8 @@ STR_SAVELOAD_SAVE_CAPTION :{WHITE}Salvar J STR_SAVELOAD_LOAD_CAPTION :{WHITE}Abrir Jogo STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Salvar Cenário STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Abrir Cenário -STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Abrir mapa topográfico -STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Salvar mapa topográfico +STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Abrir mapa de altitudes +STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Salvar mapa de altitudes STR_SAVELOAD_HOME_BUTTON :{BLACK}Acessar o diretório padrão atual onde salvar/abrir jogos STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} livres STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lista de unidades, diretórios e arquivos de jogos gravados @@ -3272,7 +3272,7 @@ STR_SAVELOAD_SAVE_BUTTON :{BLACK}Salvar STR_SAVELOAD_SAVE_TOOLTIP :{BLACK}Salvar o jogo atual usando o nome escolhido STR_SAVELOAD_LOAD_BUTTON :{BLACK}Abrir STR_SAVELOAD_LOAD_TOOLTIP :{BLACK}Carregar o jogo selecionado -STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Carregar o mapa topográfico selecionado +STR_SAVELOAD_LOAD_HEIGHTMAP_TOOLTIP :{BLACK}Carregar o mapa de altitudes selecionado STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Detalhes do Jogo STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Nenhuma informação disponível STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} @@ -3361,14 +3361,14 @@ STR_MAPGEN_BORDER_RANDOM :{BLACK}Aleatór STR_MAPGEN_BORDER_RANDOMIZE :{BLACK}Aleatório STR_MAPGEN_BORDER_MANUAL :{BLACK}Manual -STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Rotação do mapa topográfico: -STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do mapa topográfico: -STR_MAPGEN_HEIGHTMAP_NAME_TOOLTIP :{BLACK}O nome do arquivo de imagem do mapa topográfico +STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Rotação do mapa de altitudes: +STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do mapa de altitudes: +STR_MAPGEN_HEIGHTMAP_NAME_TOOLTIP :{BLACK}O nome do arquivo de imagem do mapa de altitudes STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho: -STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanho da imagem original do mapa topográfico. Para obter melhores resultados, cada lado deve corresponder a um comprimento de lado de mapa disponível no OpenTTD, tais como 256, 512, 1024, etc. +STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanho da imagem original do mapa de altitudes. Para obter melhores resultados, cada lado deve corresponder a um comprimento de lado de mapa disponível no OpenTTD, tais como 256, 512, 1024, etc. STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} -STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura desejada do pico +STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altitude desejada para o pico STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais elevado STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com neve (em %) STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com deserto (em %) @@ -3379,12 +3379,12 @@ STR_SE_MAPGEN_CAPTION :{WHITE}Tipo de STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Terreno plano STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Gerar um terreno plano STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Terreno aleatório -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altura do terreno plano: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altitude do terreno plano: STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_TOOLTIP :{BLACK}Escolher a elevação do terreno acima do nível do mar STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Mover altura do terreno plano um nível abaixo STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Mover altura do terreno plano um nível acima -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Modificar a altura do terreno plano +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Modificar a altitude do terreno plano # Map generation progress STR_GENERATION_WORLD :{WHITE}Gerando Mundo... @@ -3617,8 +3617,8 @@ STR_TOWN_POPULATION :{BLACK}Populaç STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Cidade) STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}População: {ORANGE}{COMMA}{BLACK} Casas: {ORANGE}{COMMA} -STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} no último mês: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} -STR_TOWN_VIEW_CARGO_LAST_MINUTE_MAX :{BLACK}{CARGO_LIST} no último minuto: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} +STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} no último mês: {ORANGE}{COMMA}{BLACK} máx.: {ORANGE}{COMMA} +STR_TOWN_VIEW_CARGO_LAST_MINUTE_MAX :{BLACK}{CARGO_LIST} no último minuto: {ORANGE}{COMMA}{BLACK} máx.: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Requisitos para o crescimento da localidade: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} necessário STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} necessário no inverno @@ -3628,7 +3628,7 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_ STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Localidade cresce a cada {ORANGE}{UNITS_DAYS_OR_SECONDS} STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Localidade cresce a cada {ORANGE}{UNITS_DAYS_OR_SECONDS} (financiada) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Localidade {RED}não{BLACK} está crescendo -STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Limite de ruído na localidade: {ORANGE}{COMMA}{BLACK} máx: {ORANGE}{COMMA} +STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Limite de ruído na localidade: {ORANGE}{COMMA}{BLACK} máx.: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Centralizar visualização principal na localização da localidade. Ctrl+Clique para abrir uma nova visualização na localização da localidade STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Autoridade Local STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Mostrar informações sobre a autoridade local @@ -4179,7 +4179,7 @@ STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} ve STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) ###length VEHICLE_TYPES -STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trens - arraste o veículo com o botão esquerdo do mouse para acrescentar/retirar do trem. Clique com o botão direito para informações. Ctrl+Clique para aplicar uma das funções à cadeia seguinte +STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trens - arraste o veículo com o botão esquerdo do mouse para acrescentar/retirar do trem, clique com o botão direito para informações. Ctrl+Clique para aplicar uma das funções à cadeia seguinte STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veículos - clique com o botão direito em um veículo para informações STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Embarcações - clique com o botão direito em uma embarcação para informações STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeronaves - clique com o botão direito em uma aeronave para informações @@ -4329,7 +4329,7 @@ STR_REPLACE_ROAD_VEHICLES :Veículos Rodov STR_REPLACE_TRAM_VEHICLES :Bondes STR_REPLACE_REMOVE_WAGON :{BLACK}Remoção de vagões ({STRING}): {ORANGE}{STRING} -STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Fazer a substituição automática mantendo o comprimento do trem, removendo vagões (começando pela frente), se a substituição da locomotiva aumentar o comprimento do trem +STR_REPLACE_REMOVE_WAGON_HELP :{BLACK}Fazer a substituição automática sem modificar o comprimento do trem, removendo vagões (começando pela frente), se a substituição da locomotiva aumentar o comprimento do trem STR_REPLACE_REMOVE_WAGON_GROUP_HELP :{STRING}. Ctrl+Clique para também aplicar aos subgrupos # Vehicle view @@ -4342,10 +4342,10 @@ STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Centrali STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Centralizar visualização principal na localização da aeronave. Clique duplo para seguir a aeronave na visualização principal. Ctrl+Clique para abrir uma nova visualização na localização da aeronave ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar trem para o depósito. Ctrl+Clique para fazer apenas manutenção -STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar veículo para o depósito. Ctrl+Clique para fazer apenas manutenção -STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar embarcação para o depósito. Ctrl+Clique para fazer apenas manutenção -STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar aeronave para o hangar. Ctrl+Clique para fazer apenas manutenção +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar o trem para o depósito. Ctrl+Clique para fazer apenas manutenção +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar o veículo para o depósito. Ctrl+Clique para fazer apenas manutenção +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar a embarcação para o depósito. Ctrl+Clique para fazer apenas manutenção +STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Enviar a aeronave para o hangar. Ctrl+Clique para fazer apenas manutenção ###length VEHICLE_TYPES STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Comprar uma cópia do trem, incluindo todos os vagões. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado @@ -4365,10 +4365,10 @@ STR_VEHICLE_VIEW_SHIP_REFIT_TOOLTIP :{BLACK}Adaptar STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Adaptar aeronave para transportar um tipo de carga diferente ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Mostrar ordens do trem. Ctrl+Clique para mostrar a tabela de horários do trem -STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Mostrar ordens do veículo. Ctrl+Clique para mostrar a tabela de horários do veículo -STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Mostrar ordens da embarcação. Ctrl+Clique para mostrar a tabela de horários da embarcação -STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Mostrar ordens da aeronave. Ctrl+Clique para mostrar a tabela de horários da aeronave +STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Mostrar as ordens do trem. Ctrl+Clique para mostrar a tabela de horários do trem +STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Mostrar as ordens do veículo. Ctrl+Clique para mostrar a tabela de horários do veículo +STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Mostrar as ordens da embarcação. Ctrl+Clique para mostrar a tabela de horários da embarcação +STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Mostrar as ordens da aeronave. Ctrl+Clique para mostrar a tabela de horários da aeronave ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_SHOW_DETAILS_TOOLTIP :{BLACK}Mostrar detalhes do trem @@ -4432,8 +4432,8 @@ STR_VEHICLE_INFO_AGE_RUNNING_COST_PERIOD :{BLACK}Idade: { STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Velocidade máx.: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}Velocidade máx.: {LTBLUE}{VELOCITY} {BLACK}Tipo de aeronave: {LTBLUE}{STRING} STR_VEHICLE_INFO_MAX_SPEED_TYPE_RANGE :{BLACK}Velocidade máx.: {LTBLUE}{VELOCITY} {BLACK}Tipo de aeronave: {LTBLUE}{STRING} {BLACK}Autonomia: {LTBLUE}{COMMA} quadrados -STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Peso: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potência: {LTBLUE}{POWER}{BLACK} Velocidade máx: {LTBLUE}{VELOCITY} -STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Peso: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potência: {LTBLUE}{POWER}{BLACK} Velocidade máx: {LTBLUE}{VELOCITY} {BLACK}Força de Tração máx.: {LTBLUE}{FORCE} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Peso: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potência: {LTBLUE}{POWER}{BLACK} Velocidade máx.: {LTBLUE}{VELOCITY} +STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Peso: {LTBLUE}{WEIGHT_SHORT} {BLACK}Potência: {LTBLUE}{POWER}{BLACK} Velocidade máx.: {LTBLUE}{VELOCITY} {BLACK}Força de Tração máx.: {LTBLUE}{FORCE} STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Lucro neste ano: {LTBLUE}{CURRENCY_LONG} (último ano: {CURRENCY_LONG}) STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR_MIN_PERFORMANCE :{BLACK}Lucro neste ano: {LTBLUE}{CURRENCY_LONG} (último ano: {CURRENCY_LONG}) {BLACK}Desempenho mín.: {LTBLUE}{POWER_TO_WEIGHT} @@ -4565,7 +4565,7 @@ STR_ORDER_DROP_REFIT_AUTO :Carga fixa STR_ORDER_DROP_REFIT_AUTO_ANY :Carga disponível STR_ORDER_DROP_GO_ALWAYS_DEPOT :Ir sempre -STR_ORDER_DROP_SERVICE_DEPOT :Manutenção, se necessária +STR_ORDER_DROP_SERVICE_DEPOT :Manutenção, se precisar STR_ORDER_DROP_HALT_DEPOT :Parar STR_ORDER_DROP_UNBUNCH :Desagrupar @@ -4687,7 +4687,7 @@ STR_ORDER_STOP_LOCATION_NEAR_END :[início] STR_ORDER_STOP_LOCATION_MIDDLE :[meio] STR_ORDER_STOP_LOCATION_FAR_END :[final] -STR_ORDER_OUT_OF_RANGE :{RED} (Próximo destino está além da autonomia) +STR_ORDER_OUT_OF_RANGE :{RED} (Próximo destino está fora de alcance) STR_ORDER_CONDITIONAL_UNCONDITIONAL :Saltar para a ordem {COMMA} STR_ORDER_CONDITIONAL_NUM :Saltar para a ordem {COMMA} quando {STRING} {STRING} {COMMA} @@ -4783,7 +4783,7 @@ STR_AI_DEBUG_MATCH_CASE :{BLACK}Diferenc STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Ativar/Desativar correspondência de maiúsculas/minúsculas quando comparar as mensagens de registro da IA com a sequência de caracteres de parada STR_AI_DEBUG_CONTINUE :{BLACK}Continuar STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Sair da pausa e continuar a IA -STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Mostrar saída de depuração desta IA. Ctrl+Clique para abrir em uma nova janela +STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Mostrar a saída de depuração desta IA. Ctrl+Clique para abrir em uma nova janela STR_AI_GAME_SCRIPT :{BLACK}Script de Jogo STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Verificar o registro do Script de Jogo. Ctrl+Clique para abrir em uma nova janela @@ -4829,7 +4829,7 @@ STR_AI_LIST_VERSION :{LTBLUE}Versão STR_AI_LIST_URL :{LTBLUE}URL: {ORANGE}{STRING} STR_AI_LIST_ACCEPT :{BLACK}Aceitar -STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Aceitar o script selecionado +STR_AI_LIST_ACCEPT_TOOLTIP :{BLACK}Usar o script selecionado STR_AI_LIST_CANCEL :{BLACK}Cancelar STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Não mudar o script @@ -4838,13 +4838,13 @@ STR_SCREENSHOT_SCREENSHOT :{BLACK}Captura STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}Captura de tela com ampliação máxima STR_SCREENSHOT_DEFAULTZOOM_SCREENSHOT :{BLACK}Captura de tela com ampliação padrão STR_SCREENSHOT_WORLD_SCREENSHOT :{BLACK}Captura de tela do mapa completo -STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captura de tela do mapa topográfico +STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captura de tela do mapa de altitudes STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura de tela do minimapa # Script Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parâmetros -STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de Jogo +STR_AI_SETTINGS_CAPTION :{WHITE}Parâmetros d{G o a} {STRING} +STR_AI_SETTINGS_CAPTION_AI :{G=f}IA +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :{G=m}Script de Jogo STR_AI_SETTINGS_CLOSE :{BLACK}Fechar STR_AI_SETTINGS_RESET :{BLACK}Restaurar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} @@ -4857,7 +4857,7 @@ STR_TEXTFILE_JUMPLIST_ITEM :{WHITE}{STRING} STR_TEXTFILE_NAVBACK_TOOLTIP :{BLACK}Retornar no histórico de navegação STR_TEXTFILE_NAVFORWARD_TOOLTIP :{BLACK}Avançar no histórico de navegação STR_TEXTFILE_WRAP_TEXT :{WHITE}Quebrar linhas do texto -STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Ajustar o comprimento das linhas para o texto preencher a janela e não precisar rolar o conteúdo +STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Ajustar o comprimento das linhas à largura da janela para facilitar a leitura do texto STR_TEXTFILE_VIEW_README :{BLACK}Leia-me STR_TEXTFILE_VIEW_README_TOOLTIP :Ver o arquivo Leia-me para este conteúdo STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Registro de modificações @@ -4937,7 +4937,7 @@ STR_WARNING_FALLBACK_SOUNDSET :{WHITE}Somente STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}Captura tela enorme STR_WARNING_SCREENSHOT_SIZE_MESSAGE :{YELLOW}A captura de tela terá uma resolução de {COMMA}x{COMMA} pixels. Essa captura pode demorar. Deseja continuar? -STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Mapa topográfico '{STRING}' gravado com sucesso. O pico mais alto tem {NUM} +STR_MESSAGE_HEIGHTMAP_SUCCESSFULLY :{WHITE}Mapa de altitudes '{STRING}' gravado com sucesso. O pico mais alto tem {NUM} STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}Captura de tela '{STRING}' gravada com sucesso STR_ERROR_SCREENSHOT_FAILED :{WHITE}A captura de tela falhou! @@ -4952,7 +4952,7 @@ STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Dinheiro STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}É necessário terreno plano STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Terreno inclinado na direção errada STR_ERROR_CAN_T_DO_THIS :{WHITE}Não é possível fazer isto... -STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}Edifício deve ser demolido primeiro +STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}O imóvel deve ser demolido primeiro STR_ERROR_CAN_T_CLEAR_THIS_AREA :{WHITE}Não é possível limpar esta área... STR_ERROR_SITE_UNSUITABLE :{WHITE}... local inadequado STR_ERROR_ALREADY_BUILT :{WHITE}... já construído @@ -5064,7 +5064,7 @@ STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Não é STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de passageiros... STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de carga... STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}É necessário remover o ponto de parada rodoviária primeiro -STR_ERROR_THERE_IS_NO_STATION :{WHITE}...não existe uma estação aqui +STR_ERROR_THERE_IS_NO_STATION :{WHITE}... não existe uma estação aqui STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}É necessário demolir a estação ferroviária primeiro STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}É necessário demolir a estação de ônibus primeiro @@ -5140,8 +5140,8 @@ STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK :{WHITE}Não é STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK :{WHITE}Não é possível remover ferrovia daqui... STR_ERROR_CAN_T_REMOVE_SIGNALS_FROM :{WHITE}Não é possível remover sinais daqui... STR_ERROR_SIGNAL_CAN_T_CONVERT_SIGNALS_HERE :{WHITE}Não é possível converter os sinais daqui... -STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}...não existe uma ferrovia -STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}...não existem sinais +STR_ERROR_THERE_IS_NO_RAILROAD_TRACK :{WHITE}... não existe uma ferrovia +STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}... não existem sinais STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Não é possível converter o tipo de trilho daqui... diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index 03de11cf9a..8dfe187a17 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -4996,7 +4996,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}No pots STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}No es pot construir la seu de la companyia... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Impossible construir poblacions +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Impossible construir poblacions... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}No es pot canviar el nom de la població... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}No es pot construir una població aquí... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}No es pot expandir la població... diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 6439fbb633..c19d052d86 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Kan ikke STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Kan ikke bygge selskabets hovedkvarter... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan ikke bygge nogen byer +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan ikke bygge nogen byer... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kan ikke omdøbe byen... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kan ikke bygge en by her... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kan ikke udvide byen... diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index 57822bf0ed..15636e70d3 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Je spele STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Je servernaam is niet ingesteld. Je kunt de naam instellen bovenin het venster Netwerkspel STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}De revisie van deze client komt niet overeen met de revisie van de server STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Ongeldig wachtwoord +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Je staat niet op de lijst met toegestane clients 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 @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :ongeldig of onv STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :foute revisie STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :naam al in gebruik STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :fout spelwachtwoord +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :niet op toegestane lijst STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :verkeerd bedrijfsnummer in verstuurd commando STR_NETWORK_ERROR_CLIENT_KICKED :eruit geschopt door server STR_NETWORK_ERROR_CLIENT_CHEATER :probeerde vals te spelen @@ -4993,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Kan het STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Kan bedrijfshoofdkantoor niet bouwen... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan geen steden bouwen +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan geen steden bouwen... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kan stad niet hernoemen... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kan hier geen nieuwe stad bouwen... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kan dorp niet uitbreiden... diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 13193a82a0..745aded6e7 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}不能 STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}不能设置公司总部 # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}不能建设任何城镇 +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}无法建设城镇…… STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}不能重命名城镇…… STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}不能在这里建设城镇…… STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}无法扩展城镇... diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 7a9df710f9..9502d5a9ff 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -517,13 +517,13 @@ STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Пауз STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Прискорити гру STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Опції STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Зберегти гру, покинути гру, вихід -STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Показати карту +STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Показує мапу, додаткове вікно, легенду вантажопотоку або список позначок STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Показати міста -STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Показати субсидії +STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Показує субсидії STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Показати список станцій компанії STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Покаже фінансову інформацію про компанію STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Покаже загальну інформацію про компанію -STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показати історію +STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Показує історію STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Покаже список завдань STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки компаній і тарифи доставки вантажів STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Покаже таблицю компаній @@ -1691,7 +1691,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :стандар STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Тип ландшафту: {STRING} -STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Тільки TerraGenesis) Горбистість ландшафту +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Оберіть висоту пагорбів і гір ландшафту STR_CONFIG_SETTING_INDUSTRY_DENSITY :Густота підприємств: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Встановіть кількість підприємств, що будуть створені і кількість підприємств, що існуватимуть впродовж гри @@ -2925,7 +2925,7 @@ STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Будівни STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Будувати колію. Ctrl переключає побудову/знесення для будівництва колії. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Будувати колію, використовуючи авторежим. Ctrl переключає побудову/знесення для будівництва колії. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Будувати залізничне депо (для купівлі та обслуговування поїздів). Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Будувати залізничне депо (для купівлі та обслуговування потягів). Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Перетворити колію на точку маршруту. Ctrl дозволяє об'єднання точок маршруту. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будувати станцію. Ctrl дозволяє об'єднання станцій. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати залізничні сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка мишою будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки чи сигналу{}Ctrl+клац мишою вмикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво @@ -3016,7 +3016,7 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Буду STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Будувати трамвайне депо (для будівництва та обслуговування трамваїв). Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Будувати автобусну зупинку. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу тільки витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Будувати пасажирську трамвайну станцію. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Будувати вантажний майданчик. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Будувати вантажну станцію. Ctrl+клац щоб обрати іншу станцію для при'єднання. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Побудувати вантажну трамвайну станцію. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу тільки витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Вкл./відкл. односторонні дороги STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Будувати дорожній міст. Утримуйте Shift для показу тільки витрат на придбання @@ -3056,8 +3056,8 @@ STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Буду STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Будувати док. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Розмістити бакен, який можна використовувати як точку маршруту. Утримуйте Shift для показу витрат на розміщення STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Побудувати акведук. Утримуйте Shift для показу витрат на будівництво -STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Позначити, де буде вода.{}Робити канал, поки не натиснений Ctrl на рівні моря, - тоді будуть затоплені околиці -STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Прокласти річки. Ctrl для вибору діагональних ділянок +STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Будувати канал. Ctrl+клац на рівні моря для затоплення морською водою +STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Прокласти річки. Ctrl+клац для вибору діагональних ділянок # Ship depot construction window STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Орієнтація елінга @@ -3858,7 +3858,7 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}Пер STR_SUBSIDIES_NONE :{ORANGE}- немає - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Призначені субсидії: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}Перевезення {STRING.r} з {STRING} до {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисніть на субсидії, щоб показати підприємство/місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на підприємство/місто +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Натисніть на субсидії, щоб показати підприємство/місто у центрі екрану. Ctrl+клац мишею відкриває нове вікно з видом на підприємство/місто STR_SUBSIDIES_OFFERED_EXPIRY_DATE :до {DATE_SHORT} STR_SUBSIDIES_OFFERED_EXPIRY_TIME :впродовж {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :до {DATE_SHORT} @@ -4359,7 +4359,7 @@ STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Клон ###length VEHICLE_TYPES STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію поїзда, включно з усіма автомобілями. Натисніть на цю кнопку, а потім на поїзд в депо або ззовні. Ctrl+клац мишею дозволить поділитися спільними завданнями. Shift+клац мишею покаже орієнтовні витрати на придбання STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Купити копію авто. Натисніть на цю кнопку і потім на авто в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Купити копію корабля. Натисніть на цю кнопку, і потім на корабель в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Купити копію корабля. Натисніть на цю кнопку, і потім на корабель в елінгу або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу витрат на придбання STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купити копію літака. Натисніть на цю кнопку і потім на літак в ангарі або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання ###length VEHICLE_TYPES @@ -4480,7 +4480,7 @@ STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Пока ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити поїзд у депо STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити авто в депо. Ctrl+клац тільки для техогляду -STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити корабель в депо +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити корабель в елінг. Ctrl+клац тільки для техогляду STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити літак в ангар. Ctrl+клац тільки для техогляду ###length VEHICLE_TYPES diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index 3dd328d84b..e2f8d89799 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -4995,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Không m STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Không thể xây trụ sở công ty... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Không thể xây thêm đô thị +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Không thể xây thêm đô thị... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Không thể đổi tên đô thị... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Không thấy thị trấn ở đây... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Không thể mở rộng thành phố... From f599108c164735ec1e43a564aadf1c8a7f53ed9e Mon Sep 17 00:00:00 2001 From: Rubidium Date: Sat, 23 Mar 2024 09:35:28 +0100 Subject: [PATCH 19/70] Codechange: move 'months_empty' to CompanyProperties --- src/company_base.h | 1 + src/network/network_server.cpp | 18 +++++++++--------- src/network/network_type.h | 1 - 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/company_base.h b/src/company_base.h index ea4565a808..356a5fe058 100644 --- a/src/company_base.h +++ b/src/company_base.h @@ -91,6 +91,7 @@ struct CompanyProperties { TimerGameEconomy::Year inaugurated_year; ///< Economy year of starting the company. + uint8_t months_empty = 0; ///< NOSAVE: Number of months this company has not had a client in multiplayer. uint8_t months_of_bankruptcy; ///< Number of months that the company is unable to pay its debts CompanyMask bankrupt_asked; ///< which companies were asked about buying it? int16_t bankrupt_timeout; ///< If bigger than \c 0, amount of time to wait for an answer on an offer to buy this company. diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index 39bd2aa540..f63c79bd65 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -961,7 +961,8 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::Receive_CLIENT_IDENTIFY(Packet Debug(desync, 1, "client: {:08x}; {:02x}; {:02x}; {:02x}", TimerGameEconomy::date, TimerGameEconomy::date_fract, (int)ci->client_playas, (int)ci->index); /* Make sure companies to which people try to join are not autocleaned */ - if (Company::IsValidID(playas)) _network_company_states[playas].months_empty = 0; + Company *c = Company::GetIfValid(playas); + if (c != nullptr) c->months_empty = 0; return this->SendNewGRFCheck(); } @@ -1643,37 +1644,37 @@ static void NetworkAutoCleanCompanies() } /* Go through all the companies */ - for (const Company *c : Company::Iterate()) { + for (Company *c : Company::Iterate()) { /* Skip the non-active once */ if (c->is_ai) continue; if (!HasBit(has_clients, c->index)) { /* The company is empty for one month more */ - _network_company_states[c->index].months_empty++; + if (c->months_empty != std::numeric_limitsmonths_empty)>::max()) c->months_empty++; /* Is the company empty for autoclean_unprotected-months, and is there no protection? */ - if (_settings_client.network.autoclean_unprotected != 0 && _network_company_states[c->index].months_empty > _settings_client.network.autoclean_unprotected && _network_company_states[c->index].password.empty()) { + if (_settings_client.network.autoclean_unprotected != 0 && c->months_empty > _settings_client.network.autoclean_unprotected && _network_company_states[c->index].password.empty()) { /* Shut the company down */ Command::Post(CCA_DELETE, c->index, CRR_AUTOCLEAN, INVALID_CLIENT_ID); IConsolePrint(CC_INFO, "Auto-cleaned company #{} with no password.", c->index + 1); } /* Is the company empty for autoclean_protected-months, and there is a protection? */ - if (_settings_client.network.autoclean_protected != 0 && _network_company_states[c->index].months_empty > _settings_client.network.autoclean_protected && !_network_company_states[c->index].password.empty()) { + if (_settings_client.network.autoclean_protected != 0 && c->months_empty > _settings_client.network.autoclean_protected && !_network_company_states[c->index].password.empty()) { /* Unprotect the company */ _network_company_states[c->index].password.clear(); IConsolePrint(CC_INFO, "Auto-removed protection from company #{}.", c->index + 1); - _network_company_states[c->index].months_empty = 0; + c->months_empty = 0; NetworkServerUpdateCompanyPassworded(c->index, false); } /* Is the company empty for autoclean_novehicles-months, and has no vehicles? */ - if (_settings_client.network.autoclean_novehicles != 0 && _network_company_states[c->index].months_empty > _settings_client.network.autoclean_novehicles && !HasBit(has_vehicles, c->index)) { + if (_settings_client.network.autoclean_novehicles != 0 && c->months_empty > _settings_client.network.autoclean_novehicles && !HasBit(has_vehicles, c->index)) { /* Shut the company down */ Command::Post(CCA_DELETE, c->index, CRR_AUTOCLEAN, INVALID_CLIENT_ID); IConsolePrint(CC_INFO, "Auto-cleaned company #{} with no vehicles.", c->index + 1); } } else { /* It is not empty, reset the date */ - _network_company_states[c->index].months_empty = 0; + c->months_empty = 0; } } } @@ -2266,7 +2267,6 @@ void NetworkServerNewCompany(const Company *c, NetworkClientInfo *ci) if (!_network_server) return; - _network_company_states[c->index].months_empty = 0; _network_company_states[c->index].password.clear(); NetworkServerUpdateCompanyPassworded(c->index, false); diff --git a/src/network/network_type.h b/src/network/network_type.h index a3c0f47e74..4f8617ff37 100644 --- a/src/network/network_type.h +++ b/src/network/network_type.h @@ -73,7 +73,6 @@ struct NetworkCompanyStats { /** Some state information of a company, especially for servers */ struct NetworkCompanyState { std::string password; ///< The password for the company - uint16_t months_empty; ///< How many months the company is empty }; struct NetworkClientInfo; From ea74ca0a7606d12b5ccd7cb97798a85aa87eb87d Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sat, 23 Mar 2024 12:03:59 +0000 Subject: [PATCH 20/70] Fix #12347: Crash attempting to find catchment tiles of a station with no catchment area. (#12348) --- src/script/api/script_tilelist.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/script/api/script_tilelist.cpp b/src/script/api/script_tilelist.cpp index 7b3d101490..db5aafddaf 100644 --- a/src/script/api/script_tilelist.cpp +++ b/src/script/api/script_tilelist.cpp @@ -152,7 +152,10 @@ ScriptTileList_StationCoverage::ScriptTileList_StationCoverage(StationID station { if (!ScriptStation::IsValidStation(station_id)) return; - BitmapTileIterator it(::Station::Get(station_id)->catchment_tiles); + const BitmapTileArea &ta = ::Station::Get(station_id)->catchment_tiles; + if (ta.tile == INVALID_TILE) return; + + BitmapTileIterator it(ta); for (TileIndex tile = it; tile != INVALID_TILE; tile = ++it) { this->AddTile(tile); } From 2732b3d6c6581da690d094149d76dda8213f533d Mon Sep 17 00:00:00 2001 From: Tyler Trahan Date: Sat, 23 Mar 2024 08:23:13 -0400 Subject: [PATCH 21/70] Change: Show unbunching action in timetable window (#12351) --- src/order_gui.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 44fbdea6ac..84d7f3e443 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -337,8 +337,8 @@ void DrawOrderString(const Vehicle *v, const Order *order, int order_index, int SetDParam(6, CargoSpec::Get(order->GetRefitCargo())->name); } - /* Do not show unbunching in the depot in the timetable window. */ - if (!timetable && (order->GetDepotActionType() & ODATFB_UNBUNCH)) { + /* Show unbunching depot in both order and timetable windows. */ + if (order->GetDepotActionType() & ODATFB_UNBUNCH) { SetDParam(8, STR_ORDER_WAIT_TO_UNBUNCH); } From 515303b8becc566c33049af87dc25d547096d12a Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sat, 23 Mar 2024 11:27:58 +0000 Subject: [PATCH 22/70] Fix #12092: Incorrect x-axis in cargo payment graph window --- src/graph_gui.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/graph_gui.cpp b/src/graph_gui.cpp index a9fc671d90..743bf8bda8 100644 --- a/src/graph_gui.cpp +++ b/src/graph_gui.cpp @@ -173,8 +173,8 @@ protected: static const int GRAPH_ZERO_LINE_COLOUR = GREY_SCALE(8); static const int GRAPH_YEAR_LINE_COLOUR = GREY_SCALE(5); static const int GRAPH_NUM_MONTHS = 24; ///< Number of months displayed in the graph. - static const int PAYMENT_GRAPH_X_STEP_DAYS = 20; ///< X-axis step label for cargo payment rates "Days in transit". - static const int PAYMENT_GRAPH_X_STEP_SECONDS = 10; ///< X-axis step label for cargo payment rates "Seconds in transit". + static const int PAYMENT_GRAPH_X_STEP_DAYS = 10; ///< X-axis step label for cargo payment rates "Days in transit". + static const int PAYMENT_GRAPH_X_STEP_SECONDS = 20; ///< X-axis step label for cargo payment rates "Seconds in transit". static const int ECONOMY_QUARTER_MINUTES = 3; ///< Minutes per economic quarter. static const TextColour GRAPH_AXIS_LABEL_COLOUR = TC_BLACK; ///< colour of the graph axis label. From 0f25eaa27165ebc293de38c8e4b6dd67b7a53485 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Fri, 22 Mar 2024 19:50:27 +0100 Subject: [PATCH 23/70] Fix: crash to desktop when attempting to join a company while not joined (yet) --- src/console_cmds.cpp | 8 +++++++- src/network/network.cpp | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp index 6b88247dfb..ad940cd425 100644 --- a/src/console_cmds.cpp +++ b/src/console_cmds.cpp @@ -921,13 +921,19 @@ DEF_CONSOLE_CMD(ConJoinCompany) CompanyID company_id = (CompanyID)(atoi(argv[1]) <= MAX_COMPANIES ? atoi(argv[1]) - 1 : atoi(argv[1])); + const NetworkClientInfo *info = NetworkClientInfo::GetByClientID(_network_own_client_id); + if (info == nullptr) { + IConsolePrint(CC_ERROR, "You have not joined the game yet!"); + return true; + } + /* Check we have a valid company id! */ if (!Company::IsValidID(company_id) && company_id != COMPANY_SPECTATOR) { IConsolePrint(CC_ERROR, "Company does not exist. Company-id must be between 1 and {}.", MAX_COMPANIES); return true; } - if (NetworkClientInfo::GetByClientID(_network_own_client_id)->client_playas == company_id) { + if (info->client_playas == company_id) { IConsolePrint(CC_ERROR, "You are already there!"); return true; } diff --git a/src/network/network.cpp b/src/network/network.cpp index 717cf077dc..2b0a79ba16 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -798,6 +798,7 @@ public: Debug(net, 9, "Client::OnConnect(): connection_string={}", this->connection_string); _networking = true; + _network_own_client_id = ClientID{}; new ClientNetworkGameSocketHandler(s, this->connection_string); IConsoleCmdExec("exec scripts/on_client.scr 0"); NetworkClient_Connected(); From 603154899a25ad2dbafc0818e8afb6c1f6f4fde4 Mon Sep 17 00:00:00 2001 From: frosch Date: Sat, 23 Mar 2024 20:48:26 +0100 Subject: [PATCH 24/70] Add: [SDL2] Driver parameter 'no_mouse_capture' to ease interactive debugging (#12336) --- src/video/sdl2_v.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/video/sdl2_v.cpp b/src/video/sdl2_v.cpp index 4bbe30de66..585571385d 100644 --- a/src/video/sdl2_v.cpp +++ b/src/video/sdl2_v.cpp @@ -534,6 +534,15 @@ const char *VideoDriver_SDL_Base::Start(const StringList ¶m) const char *error = this->Initialize(); if (error != nullptr) return error; +#ifdef SDL_HINT_MOUSE_AUTO_CAPTURE + if (GetDriverParamBool(param, "no_mouse_capture")) { + /* By default SDL captures the mouse, while a button is pressed. + * This is annoying during debugging, when OpenTTD is suspended while the button was pressed. + */ + if (!SDL_SetHint(SDL_HINT_MOUSE_AUTO_CAPTURE, "0")) return SDL_GetError(); + } +#endif + this->startup_display = FindStartupDisplay(GetDriverParamInt(param, "display", -1)); if (!CreateMainSurface(_cur_resolution.width, _cur_resolution.height, false)) { From 704e871a0eec119d27df1a5a21abb6f9da1cb8da Mon Sep 17 00:00:00 2001 From: glx22 Date: Sat, 23 Mar 2024 17:41:13 +0100 Subject: [PATCH 25/70] Revert bbdbf9a: ScriptTimeMode was not the best solution for economy/calendar support --- src/script/api/CMakeLists.txt | 2 -- src/script/api/ai_changelog.hpp | 1 - src/script/api/game_changelog.hpp | 1 - src/script/api/script_date.cpp | 31 ++++---------------- src/script/api/script_object.cpp | 10 ------- src/script/api/script_object.hpp | 14 ---------- src/script/api/script_timemode.cpp | 29 ------------------- src/script/api/script_timemode.hpp | 45 ------------------------------ src/script/script_storage.hpp | 2 -- 9 files changed, 5 insertions(+), 130 deletions(-) delete mode 100644 src/script/api/script_timemode.cpp delete mode 100644 src/script/api/script_timemode.hpp diff --git a/src/script/api/CMakeLists.txt b/src/script/api/CMakeLists.txt index 6a8cb66d9c..f41efd068c 100644 --- a/src/script/api/CMakeLists.txt +++ b/src/script/api/CMakeLists.txt @@ -151,7 +151,6 @@ add_files( script_basestation.hpp script_bridge.hpp script_bridgelist.hpp - script_timemode.hpp script_cargo.hpp script_cargolist.hpp script_cargomonitor.hpp @@ -226,7 +225,6 @@ add_files( script_basestation.cpp script_bridge.cpp script_bridgelist.cpp - script_timemode.cpp script_cargo.cpp script_cargolist.cpp script_cargomonitor.cpp diff --git a/src/script/api/ai_changelog.hpp b/src/script/api/ai_changelog.hpp index e6b524a857..39037efd06 100644 --- a/src/script/api/ai_changelog.hpp +++ b/src/script/api/ai_changelog.hpp @@ -20,7 +20,6 @@ * \b 14.0 * * API additions: - * \li AITimeMode * \li AITown::ROAD_LAYOUT_RANDOM * \li AIVehicle::IsPrimaryVehicle * \li AITileList_StationCoverage diff --git a/src/script/api/game_changelog.hpp b/src/script/api/game_changelog.hpp index 8ebf05310c..8963190e26 100644 --- a/src/script/api/game_changelog.hpp +++ b/src/script/api/game_changelog.hpp @@ -24,7 +24,6 @@ * \li GSAsyncMode * \li GSCompanyMode::IsValid * \li GSCompanyMode::IsDeity - * \li GSTimeMode * \li GSTown::ROAD_LAYOUT_RANDOM * \li GSVehicle::IsPrimaryVehicle * \li GSOrder::SetOrderJumpTo diff --git a/src/script/api/script_date.cpp b/src/script/api/script_date.cpp index 076f196cd4..4d3a3866cf 100644 --- a/src/script/api/script_date.cpp +++ b/src/script/api/script_date.cpp @@ -9,9 +9,7 @@ #include "../../stdafx.h" #include "script_date.hpp" -#include "script_timemode.hpp" #include "../../timer/timer_game_calendar.h" -#include "../../timer/timer_game_economy.h" #include @@ -24,21 +22,14 @@ /* static */ ScriptDate::Date ScriptDate::GetCurrentDate() { - if (ScriptTimeMode::IsCalendarMode()) return (ScriptDate::Date)TimerGameCalendar::date.base(); - - return (ScriptDate::Date)TimerGameEconomy::date.base(); + return (ScriptDate::Date)TimerGameCalendar::date.base(); } /* static */ SQInteger ScriptDate::GetYear(ScriptDate::Date date) { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.year.base(); - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.year.base(); } @@ -46,12 +37,7 @@ { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.month + 1; - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.month + 1; } @@ -59,12 +45,7 @@ { if (date < 0) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) { - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); - return ymd.day; - } - - ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); + ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); return ymd.day; } @@ -74,9 +55,7 @@ if (day_of_month < 1 || day_of_month > 31) return DATE_INVALID; if (year < 0 || year > CalendarTime::MAX_YEAR) return DATE_INVALID; - if (ScriptTimeMode::IsCalendarMode()) return (ScriptDate::Date)::TimerGameCalendar::ConvertYMDToDate(year, month - 1, day_of_month).base(); - - return (ScriptDate::Date)::TimerGameEconomy::ConvertYMDToDate(year, month - 1, day_of_month).base(); + return (ScriptDate::Date)::TimerGameCalendar::ConvertYMDToDate(year, month - 1, day_of_month).base(); } /* static */ SQInteger ScriptDate::GetSystemTime() diff --git a/src/script/api/script_object.cpp b/src/script/api/script_object.cpp index 9b0f6bd259..8e3a684240 100644 --- a/src/script/api/script_object.cpp +++ b/src/script/api/script_object.cpp @@ -200,16 +200,6 @@ ScriptObject::ActiveInstance::~ActiveInstance() return GetStorage()->allow_do_command; } -/* static */ void ScriptObject::SetTimeMode(bool calendar) -{ - GetStorage()->time_mode = calendar; -} - -/* static */ bool ScriptObject::IsCalendarTimeMode() -{ - return GetStorage()->time_mode; -} - /* static */ void ScriptObject::SetCompany(CompanyID company) { if (GetStorage()->root_company == INVALID_OWNER) GetStorage()->root_company = company; diff --git a/src/script/api/script_object.hpp b/src/script/api/script_object.hpp index c9bf1a4fb4..28cac81d59 100644 --- a/src/script/api/script_object.hpp +++ b/src/script/api/script_object.hpp @@ -244,20 +244,6 @@ protected: */ static bool GetAllowDoCommand(); - /** - * Set if the script is running in calendar time or economy time mode. - * Calendar time is used by OpenTTD for technology like vehicle introductions and expiration, and variable snowline. It can be sped up or slowed down by the player. - * Economy time always runs at the same pace and handles things like cargo production, everything related to money, etc. - * @param Calendar Should we use calendar time mode? (Set to false for economy time mode.) - */ - static void SetTimeMode(bool calendar); - - /** - * Check if the script is operating in calendar time mode, or in economy time mode. See SetTimeMode() for more information. - * @return True if we are in calendar time mode, false if we are in economy time mode. - */ - static bool IsCalendarTimeMode(); - /** * Set the current company to execute commands for or request * information about. diff --git a/src/script/api/script_timemode.cpp b/src/script/api/script_timemode.cpp deleted file mode 100644 index f927368f8a..0000000000 --- a/src/script/api/script_timemode.cpp +++ /dev/null @@ -1,29 +0,0 @@ -/* - * This file is part of OpenTTD. - * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. - * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . - */ - -/** @file script_timemode.cpp Implementation of ScriptTimeMode. */ - -#include "../../stdafx.h" -#include "script_timemode.hpp" - -#include "../../safeguards.h" - -ScriptTimeMode::ScriptTimeMode(bool calendar) -{ - this->last_time_mode = ScriptObject::IsCalendarTimeMode(); - ScriptObject::SetTimeMode(calendar); -} - -ScriptTimeMode::~ScriptTimeMode() -{ - ScriptObject::SetTimeMode(this->last_time_mode); -} - -/* static */ bool ScriptTimeMode::IsCalendarMode() -{ - return ScriptObject::IsCalendarTimeMode(); -} diff --git a/src/script/api/script_timemode.hpp b/src/script/api/script_timemode.hpp deleted file mode 100644 index eb03b0b3f9..0000000000 --- a/src/script/api/script_timemode.hpp +++ /dev/null @@ -1,45 +0,0 @@ -/* - * This file is part of OpenTTD. - * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. - * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . - */ - -/** @file script_timemode.hpp Switch the time mode. */ - -#ifndef SCRIPT_TIMEMODE_HPP -#define SCRIPT_TIMEMODE_HPP - -#include "script_object.hpp" - -/** - * Class to switch the current time. - * If you create an instance of this class, the mode will be switched to either calendar time or economy time mode. - * @note Destroying this object will restore the previous time mode. - * @api ai game - */ -class ScriptTimeMode : public ScriptObject { -private: - bool last_time_mode; ///< The last time mode we were using. -public: - /** - * Creating an instance of this class switches the time mode used for queries and commands. - * Calendar time is used by OpenTTD for technology like vehicle introductions and expiration, and variable snowline. It can be sped up or slowed down by the player. - * Economy time always runs at the same pace and handles things like cargo production, everything related to money, etc. - * @param Calendar Should we use calendar time mode? (Set to false for economy time mode.) - */ - ScriptTimeMode(bool calendar); - - /** - * Destroying this instance resets the time mode to the mode it was in when the instance was created. - */ - ~ScriptTimeMode(); - - /** - * Check if the script is operating in calendar time mode, or in economy time mode. See ScriptTimeMode() for more information. - * @return True if we are in calendar time mode, false if we are in economy time mode. - */ - static bool IsCalendarMode(); -}; - -#endif /* SCRIPT_TIMEMODE_HPP */ diff --git a/src/script/script_storage.hpp b/src/script/script_storage.hpp index a2d7d91dc2..6f856908d5 100644 --- a/src/script/script_storage.hpp +++ b/src/script/script_storage.hpp @@ -41,7 +41,6 @@ private: class ScriptObject *mode_instance; ///< The instance belonging to the current build mode. ScriptAsyncModeProc *async_mode; ///< The current command async mode we are in. class ScriptObject *async_mode_instance; ///< The instance belonging to the current command async mode. - bool time_mode; ///< True if we in calendar time mode, or false (default) if we are in economy time mode. CompanyID root_company; ///< The root company, the company that the script really belongs to. CompanyID company; ///< The current company. @@ -71,7 +70,6 @@ public: mode_instance (nullptr), async_mode (nullptr), async_mode_instance (nullptr), - time_mode (false), root_company (INVALID_OWNER), company (INVALID_OWNER), delay (1), From 02c00f3e3ebebb17f00f979a41e6d55d69d11b0d Mon Sep 17 00:00:00 2001 From: glx22 Date: Sat, 23 Mar 2024 18:06:22 +0100 Subject: [PATCH 26/70] Change: [Script] Use economy time for ScriptDate --- src/script/api/script_date.cpp | 14 +++++++------- src/script/api/script_date.hpp | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/script/api/script_date.cpp b/src/script/api/script_date.cpp index 4d3a3866cf..cffa57fea9 100644 --- a/src/script/api/script_date.cpp +++ b/src/script/api/script_date.cpp @@ -9,7 +9,7 @@ #include "../../stdafx.h" #include "script_date.hpp" -#include "../../timer/timer_game_calendar.h" +#include "../../timer/timer_game_economy.h" #include @@ -22,14 +22,14 @@ /* static */ ScriptDate::Date ScriptDate::GetCurrentDate() { - return (ScriptDate::Date)TimerGameCalendar::date.base(); + return (ScriptDate::Date)TimerGameEconomy::date.base(); } /* static */ SQInteger ScriptDate::GetYear(ScriptDate::Date date) { if (date < 0) return DATE_INVALID; - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); + ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); return ymd.year.base(); } @@ -37,7 +37,7 @@ { if (date < 0) return DATE_INVALID; - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); + ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); return ymd.month + 1; } @@ -45,7 +45,7 @@ { if (date < 0) return DATE_INVALID; - ::TimerGameCalendar::YearMonthDay ymd = ::TimerGameCalendar::ConvertDateToYMD(date); + ::TimerGameEconomy::YearMonthDay ymd = ::TimerGameEconomy::ConvertDateToYMD(date); return ymd.day; } @@ -53,9 +53,9 @@ { if (month < 1 || month > 12) return DATE_INVALID; if (day_of_month < 1 || day_of_month > 31) return DATE_INVALID; - if (year < 0 || year > CalendarTime::MAX_YEAR) return DATE_INVALID; + if (year < 0 || year > EconomyTime::MAX_YEAR) return DATE_INVALID; - return (ScriptDate::Date)::TimerGameCalendar::ConvertYMDToDate(year, month - 1, day_of_month).base(); + return (ScriptDate::Date)::TimerGameEconomy::ConvertYMDToDate(year, month - 1, day_of_month).base(); } /* static */ SQInteger ScriptDate::GetSystemTime() diff --git a/src/script/api/script_date.hpp b/src/script/api/script_date.hpp index 43d197226f..5c7ddec042 100644 --- a/src/script/api/script_date.hpp +++ b/src/script/api/script_date.hpp @@ -11,7 +11,7 @@ #define SCRIPT_DATE_HPP #include "script_object.hpp" -#include "../../timer/timer_game_calendar.h" +#include "../../timer/timer_game_economy.h" /** * Class that handles all date related (calculation) functions. @@ -31,7 +31,7 @@ public: * compose valid date values for a known year, month and day. */ enum Date { - DATE_INVALID = ::CalendarTime::INVALID_DATE.base(), ///< A value representing an invalid date. + DATE_INVALID = ::EconomyTime::INVALID_DATE.base(), ///< A value representing an invalid date. }; /** From ff35288ddfa3b746412569aed7dfc2eedb1b2094 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sat, 23 Mar 2024 20:18:31 +0000 Subject: [PATCH 27/70] Fix: Don't let CT_INVALID map to valid cargo type. (#12364) --- src/cargotype.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cargotype.cpp b/src/cargotype.cpp index bca7e368b5..98d53a9d1c 100644 --- a/src/cargotype.cpp +++ b/src/cargotype.cpp @@ -95,7 +95,7 @@ void BuildCargoLabelMap() CargoSpec::label_map.clear(); for (const CargoSpec &cs : CargoSpec::array) { /* During initialization, CargoSpec can be marked valid before the label has been set. */ - if (!cs.IsValid() || cs.label == CargoLabel{0}) continue; + if (!cs.IsValid() || cs.label == CargoLabel{0} || cs.label == CT_INVALID) continue; /* Label already exists, don't addd again. */ if (CargoSpec::label_map.count(cs.label) != 0) continue; From 668186ca5b065d0ef10bf929bee0c84007e09940 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sat, 23 Mar 2024 21:55:50 +0000 Subject: [PATCH 28/70] Codechange: Remove macros involved with NewGRFClass. (#12363) Use direct class instantiation instead. --- src/newgrf_airport.cpp | 11 ++++---- src/newgrf_airport.h | 2 +- src/newgrf_class.h | 2 +- src/newgrf_class_func.h | 62 ++++++++++++++++------------------------- src/newgrf_object.cpp | 11 ++++---- src/newgrf_object.h | 4 +-- src/newgrf_roadstop.cpp | 11 ++++---- src/newgrf_roadstop.h | 2 +- src/newgrf_station.cpp | 11 ++++---- src/newgrf_station.h | 4 +-- 10 files changed, 55 insertions(+), 65 deletions(-) diff --git a/src/newgrf_airport.cpp b/src/newgrf_airport.cpp index 2c0012141d..bdac26abaf 100644 --- a/src/newgrf_airport.cpp +++ b/src/newgrf_airport.cpp @@ -23,8 +23,8 @@ * This includes initialising the defaults classes with an empty * entry, for standard airports. */ -template -/* static */ void NewGRFClass::InsertDefaults() +template <> +/* static */ void AirportClass::InsertDefaults() { AirportClass::Get(AirportClass::Allocate('SMAL'))->name = STR_AIRPORT_CLASS_SMALL; AirportClass::Get(AirportClass::Allocate('LARG'))->name = STR_AIRPORT_CLASS_LARGE; @@ -32,13 +32,14 @@ template AirportClass::Get(AirportClass::Allocate('HELI'))->name = STR_AIRPORT_CLASS_HELIPORTS; } -template -bool NewGRFClass::IsUIAvailable(uint) const +template <> +bool AirportClass::IsUIAvailable(uint) const { return true; } -INSTANTIATE_NEWGRF_CLASS_METHODS(AirportClass, AirportSpec, AirportClassID, APC_MAX) +/* Instantiate AirportClass. */ +template class NewGRFClass; AirportOverrideManager _airport_mngr(NEW_AIRPORT_OFFSET, NUM_AIRPORTS, AT_INVALID); diff --git a/src/newgrf_airport.h b/src/newgrf_airport.h index 5d031f7c56..7099e42e47 100644 --- a/src/newgrf_airport.h +++ b/src/newgrf_airport.h @@ -141,7 +141,7 @@ private: }; /** Information related to airport classes. */ -typedef NewGRFClass AirportClass; +using AirportClass = NewGRFClass; void BindAirportSpecs(); diff --git a/src/newgrf_class.h b/src/newgrf_class.h index 6e375e5515..38e068a881 100644 --- a/src/newgrf_class.h +++ b/src/newgrf_class.h @@ -17,7 +17,7 @@ * Struct containing information relating to NewGRF classes for stations and airports. */ template -struct NewGRFClass { +class NewGRFClass { private: uint ui_count; ///< Number of specs in this class potentially available to the user. std::vector spec; ///< List of specifications. diff --git a/src/newgrf_class_func.h b/src/newgrf_class_func.h index 4e41915916..b3de6ba9c1 100644 --- a/src/newgrf_class_func.h +++ b/src/newgrf_class_func.h @@ -11,20 +11,13 @@ #include "table/strings.h" -/** - * Helper for defining the class method's signatures. - * @param type The type of the class. - */ -#define DEFINE_NEWGRF_CLASS_METHOD(type) \ - template \ - type NewGRFClass - /** Instantiate the array. */ template NewGRFClass NewGRFClass::classes[Tmax]; /** Reset the class, i.e. clear everything. */ -DEFINE_NEWGRF_CLASS_METHOD(void)::ResetClass() +template +void NewGRFClass::ResetClass() { this->global_id = 0; this->name = STR_EMPTY; @@ -34,7 +27,8 @@ DEFINE_NEWGRF_CLASS_METHOD(void)::ResetClass() } /** Reset the classes, i.e. clear everything. */ -DEFINE_NEWGRF_CLASS_METHOD(void)::Reset() +template +void NewGRFClass::Reset() { for (Tid i = (Tid)0; i < Tmax; i++) { classes[i].ResetClass(); @@ -50,7 +44,8 @@ DEFINE_NEWGRF_CLASS_METHOD(void)::Reset() * @note Upon allocating the same global class ID for a * second time, this first allocation will be given. */ -DEFINE_NEWGRF_CLASS_METHOD(Tid)::Allocate(uint32_t global_id) +template +Tid NewGRFClass::Allocate(uint32_t global_id) { for (Tid i = (Tid)0; i < Tmax; i++) { if (classes[i].global_id == global_id) { @@ -71,7 +66,8 @@ DEFINE_NEWGRF_CLASS_METHOD(Tid)::Allocate(uint32_t global_id) * Insert a spec into the class. * @param spec The spec to insert. */ -DEFINE_NEWGRF_CLASS_METHOD(void)::Insert(Tspec *spec) +template +void NewGRFClass::Insert(Tspec *spec) { this->spec.push_back(spec); @@ -83,7 +79,8 @@ DEFINE_NEWGRF_CLASS_METHOD(void)::Insert(Tspec *spec) * @param spec The spec to assign. * @note The spec must have a valid class id set. */ -DEFINE_NEWGRF_CLASS_METHOD(void)::Assign(Tspec *spec) +template +void NewGRFClass::Assign(Tspec *spec) { assert(spec->cls_id < Tmax); Get(spec->cls_id)->Insert(spec); @@ -105,7 +102,8 @@ NewGRFClass *NewGRFClass::Get(Tid cls_id) * Get the number of allocated classes. * @return The number of classes. */ -DEFINE_NEWGRF_CLASS_METHOD(uint)::GetClassCount() +template +uint NewGRFClass::GetClassCount() { uint i; for (i = 0; i < Tmax && classes[i].global_id != 0; i++) {} @@ -116,7 +114,8 @@ DEFINE_NEWGRF_CLASS_METHOD(uint)::GetClassCount() * Get the number of classes available to the user. * @return The number of classes. */ -DEFINE_NEWGRF_CLASS_METHOD(uint)::GetUIClassCount() +template +uint NewGRFClass::GetUIClassCount() { uint cnt = 0; for (uint i = 0; i < Tmax && classes[i].global_id != 0; i++) { @@ -130,7 +129,8 @@ DEFINE_NEWGRF_CLASS_METHOD(uint)::GetUIClassCount() * @param index UI index of a class. * @return The class ID of the class. */ -DEFINE_NEWGRF_CLASS_METHOD(Tid)::GetUIClass(uint index) +template +Tid NewGRFClass::GetUIClass(uint index) { for (uint i = 0; i < Tmax && classes[i].global_id != 0; i++) { if (classes[i].GetUISpecCount() == 0) continue; @@ -144,7 +144,8 @@ DEFINE_NEWGRF_CLASS_METHOD(Tid)::GetUIClass(uint index) * @param index The index where to find the spec. * @return The spec at given location. */ -DEFINE_NEWGRF_CLASS_METHOD(const Tspec *)::GetSpec(uint index) const +template +const Tspec *NewGRFClass::GetSpec(uint index) const { /* If the custom spec isn't defined any more, then the GRF file probably was not loaded. */ return index < this->GetSpecCount() ? this->spec[index] : nullptr; @@ -155,7 +156,8 @@ DEFINE_NEWGRF_CLASS_METHOD(const Tspec *)::GetSpec(uint index) const * @param ui_index UI index of the spec. * @return index of the spec, or -1 if out of range. */ -DEFINE_NEWGRF_CLASS_METHOD(int)::GetIndexFromUI(int ui_index) const +template +int NewGRFClass::GetIndexFromUI(int ui_index) const { if (ui_index < 0) return -1; for (uint i = 0; i < this->GetSpecCount(); i++) { @@ -170,7 +172,8 @@ DEFINE_NEWGRF_CLASS_METHOD(int)::GetIndexFromUI(int ui_index) const * @param index index of the spec. * @return UI index of the spec, or -1 if out of range. */ -DEFINE_NEWGRF_CLASS_METHOD(int)::GetUIFromIndex(int index) const +template +int NewGRFClass::GetUIFromIndex(int index) const { if ((uint)index >= this->GetSpecCount()) return -1; uint ui_index = 0; @@ -187,7 +190,8 @@ DEFINE_NEWGRF_CLASS_METHOD(int)::GetUIFromIndex(int index) const * @param index Pointer to return the index of the spec in its class. If nullptr then not used. * @return The spec. */ -DEFINE_NEWGRF_CLASS_METHOD(const Tspec *)::GetByGrf(uint32_t grfid, uint16_t local_id, int *index) +template +const Tspec *NewGRFClass::GetByGrf(uint32_t grfid, uint16_t local_id, int *index) { uint j; @@ -205,21 +209,3 @@ DEFINE_NEWGRF_CLASS_METHOD(const Tspec *)::GetByGrf(uint32_t grfid, uint16_t loc return nullptr; } - -#undef DEFINE_NEWGRF_CLASS_METHOD - -/** Force instantiation of the methods so we don't get linker errors. */ -#define INSTANTIATE_NEWGRF_CLASS_METHODS(name, Tspec, Tid, Tmax) \ - template void name::ResetClass(); \ - template void name::Reset(); \ - template Tid name::Allocate(uint32_t global_id); \ - template void name::Insert(Tspec *spec); \ - template void name::Assign(Tspec *spec); \ - template NewGRFClass *name::Get(Tid cls_id); \ - template uint name::GetClassCount(); \ - template uint name::GetUIClassCount(); \ - template Tid name::GetUIClass(uint index); \ - template const Tspec *name::GetSpec(uint index) const; \ - template int name::GetUIFromIndex(int index) const; \ - template int name::GetIndexFromUI(int ui_index) const; \ - template const Tspec *name::GetByGrf(uint32_t grfid, uint16_t local_id, int *index); diff --git a/src/newgrf_object.cpp b/src/newgrf_object.cpp index 8e47c650ef..d938bb4930 100644 --- a/src/newgrf_object.cpp +++ b/src/newgrf_object.cpp @@ -136,20 +136,21 @@ void ResetObjects() _object_specs[OBJECT_TRANSMITTER].cls_id = ObjectClass::Allocate('TRNS'); } -template -/* static */ void NewGRFClass::InsertDefaults() +template <> +/* static */ void ObjectClass::InsertDefaults() { ObjectClass::Get(ObjectClass::Allocate('LTHS'))->name = STR_OBJECT_CLASS_LTHS; ObjectClass::Get(ObjectClass::Allocate('TRNS'))->name = STR_OBJECT_CLASS_TRNS; } -template -bool NewGRFClass::IsUIAvailable(uint index) const +template <> +bool ObjectClass::IsUIAvailable(uint index) const { return this->GetSpec(index)->IsEverAvailable(); } -INSTANTIATE_NEWGRF_CLASS_METHODS(ObjectClass, ObjectSpec, ObjectClassID, OBJECT_CLASS_MAX) +/* Instantiate ObjectClass. */ +template class NewGRFClass; /* virtual */ uint32_t ObjectScopeResolver::GetRandomBits() const { diff --git a/src/newgrf_object.h b/src/newgrf_object.h index e55f9b8511..0d224410ab 100644 --- a/src/newgrf_object.h +++ b/src/newgrf_object.h @@ -163,8 +163,8 @@ private: TownScopeResolver *GetTown(); }; -/** Struct containing information relating to object classes. */ -typedef NewGRFClass ObjectClass; +/** Class containing information relating to object classes. */ +using ObjectClass = NewGRFClass; static const size_t OBJECT_SPRITE_GROUP_DEFAULT = 0; static const size_t OBJECT_SPRITE_GROUP_PURCHASE = 1; diff --git a/src/newgrf_roadstop.cpp b/src/newgrf_roadstop.cpp index 557b771ac8..482bce1e6a 100644 --- a/src/newgrf_roadstop.cpp +++ b/src/newgrf_roadstop.cpp @@ -27,8 +27,8 @@ #include "safeguards.h" -template -void NewGRFClass::InsertDefaults() +template <> +void RoadStopClass::InsertDefaults() { /* Set up initial data */ RoadStopClass::Get(RoadStopClass::Allocate('DFLT'))->name = STR_STATION_CLASS_DFLT; @@ -37,13 +37,14 @@ void NewGRFClass::InsertDefaults() RoadStopClass::Get(RoadStopClass::Allocate('WAYP'))->Insert(nullptr); } -template -bool NewGRFClass::IsUIAvailable(uint) const +template <> +bool RoadStopClass::IsUIAvailable(uint) const { return true; } -INSTANTIATE_NEWGRF_CLASS_METHODS(RoadStopClass, RoadStopSpec, RoadStopClassID, ROADSTOP_CLASS_MAX) +/* Instantiate RoadStopClass. */ +template class NewGRFClass; static const uint NUM_ROADSTOPSPECS_PER_STATION = 63; ///< Maximum number of parts per station. diff --git a/src/newgrf_roadstop.h b/src/newgrf_roadstop.h index 7c47f74bb8..8c231dc4ca 100644 --- a/src/newgrf_roadstop.h +++ b/src/newgrf_roadstop.h @@ -161,7 +161,7 @@ struct RoadStopSpec { static const RoadStopSpec *Get(uint16_t index); }; -typedef NewGRFClass RoadStopClass; +using RoadStopClass = NewGRFClass; void DrawRoadStopTile(int x, int y, RoadType roadtype, const RoadStopSpec *spec, StationType type, int view); diff --git a/src/newgrf_station.cpp b/src/newgrf_station.cpp index 4a3bae2abb..f6c68eaa10 100644 --- a/src/newgrf_station.cpp +++ b/src/newgrf_station.cpp @@ -28,8 +28,8 @@ #include "safeguards.h" -template -/* static */ void NewGRFClass::InsertDefaults() +template <> +/* static */ void StationClass::InsertDefaults() { /* Set up initial data */ StationClass::Get(StationClass::Allocate('DFLT'))->name = STR_STATION_CLASS_DFLT; @@ -38,13 +38,14 @@ template StationClass::Get(StationClass::Allocate('WAYP'))->Insert(nullptr); } -template -bool NewGRFClass::IsUIAvailable(uint) const +template <> +bool StationClass::IsUIAvailable(uint) const { return true; } -INSTANTIATE_NEWGRF_CLASS_METHODS(StationClass, StationSpec, StationClassID, STAT_CLASS_MAX) +/* Instantiate StationClass. */ +template class NewGRFClass; static const uint NUM_STATIONSSPECS_PER_STATION = 255; ///< Maximum number of parts per station. diff --git a/src/newgrf_station.h b/src/newgrf_station.h index 08fcaf8efd..be9fa03dfe 100644 --- a/src/newgrf_station.h +++ b/src/newgrf_station.h @@ -175,8 +175,8 @@ struct StationSpec { std::vector>> layouts; }; -/** Struct containing information relating to station classes. */ -typedef NewGRFClass StationClass; +/** Class containing information relating to station classes. */ +using StationClass = NewGRFClass; const StationSpec *GetStationSpec(TileIndex t); From 018944dc20082aba7f2aa0872f8fdf2e70fc5977 Mon Sep 17 00:00:00 2001 From: translators Date: Sun, 24 Mar 2024 04:41:07 +0000 Subject: [PATCH 29/70] Update: Translations from eints english (au): 2 changes by krysclarke vietnamese: 1 change by KhoiCanDev chinese (simplified): 9 changes by WenSimEHRP greek: 152 changes by gh658804 russian: 3 changes by Ln-Wolf finnish: 2 changes by hpiirai ukrainian: 9 changes by StepanIvasyn danish: 2 changes by bscargo portuguese: 5 changes by azulcosta portuguese (brazilian): 35 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 70 ++++++------- src/lang/danish.txt | 4 +- src/lang/english_AU.txt | 4 +- src/lang/finnish.txt | 4 +- src/lang/greek.txt | 168 +++++++++++++++++++++++++++--- src/lang/portuguese.txt | 8 +- src/lang/russian.txt | 6 +- src/lang/simplified_chinese.txt | 18 ++-- src/lang/ukrainian.txt | 18 ++-- src/lang/vietnamese.txt | 2 +- 10 files changed, 220 insertions(+), 82 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 1524cfccc3..f3f13f97a6 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -483,12 +483,12 @@ STR_GRAPH_MENU_INCOME_GRAPH :Gráfico de ren STR_GRAPH_MENU_DELIVERED_CARGO_GRAPH :Gráfico da carga entregada STR_GRAPH_MENU_PERFORMANCE_HISTORY_GRAPH :Gráfico do histórico de desempenho STR_GRAPH_MENU_COMPANY_VALUE_GRAPH :Gráfico de valor da empresa -STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Receitas por carga +STR_GRAPH_MENU_CARGO_PAYMENT_RATES :Tarifas por carga # Company league menu STR_GRAPH_MENU_COMPANY_LEAGUE_TABLE :Tabela de classificação das empresas -STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Classificação detalhada de desempenho -STR_GRAPH_MENU_HIGHSCORE :Tabela de classificações +STR_GRAPH_MENU_DETAILED_PERFORMANCE_RATING :Avaliação detalhada de desempenho +STR_GRAPH_MENU_HIGHSCORE :Painel de classificação # Industry menu STR_INDUSTRY_MENU_INDUSTRY_DIRECTORY :Lista de indústrias @@ -614,7 +614,7 @@ STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Gráfico STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Últimos 72 minutos -STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Receitas por carga +STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Tarifas por Carga STR_GRAPH_CARGO_PAYMENT_RATES_DAYS :{TINY_FONT}{BLACK}Dias em trânsito STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLACK}Segundos em trânsito STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagamento por entregar 10 unidades (ou 10 mil litros) de carga em uma distância de 20 quadrados @@ -628,7 +628,7 @@ STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLA STR_GRAPH_PERFORMANCE_DETAIL_TOOLTIP :{BLACK}Mostrar avaliações detalhadas de desempenho # Graph key window -STR_GRAPH_KEY_CAPTION :{WHITE}Chave para gráficos da empresa +STR_GRAPH_KEY_CAPTION :{WHITE}Chave dos gráficos da empresa STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Clique aqui para mostrar/ocultar empresa no gráfico # Company league window @@ -646,7 +646,7 @@ STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_PRESIDENT :Presidente STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TYCOON :Magnata # Performance detail window -STR_PERFORMANCE_DETAIL :{WHITE}Classificação Detalhada de Desempenho +STR_PERFORMANCE_DETAIL :{WHITE}Avaliação Detalhada de Desempenho STR_PERFORMANCE_DETAIL_KEY :{BLACK}Detalhes STR_PERFORMANCE_DETAIL_AMOUNT_CURRENCY :{BLACK}({CURRENCY_SHORT}/{CURRENCY_SHORT}) STR_PERFORMANCE_DETAIL_AMOUNT_INT :{BLACK}({COMMA}/{COMMA}) @@ -798,8 +798,8 @@ STR_SMALLMAP_INDUSTRY :{TINY_FONT}{STR STR_SMALLMAP_LINKSTATS :{TINY_FONT}{STRING} STR_SMALLMAP_COMPANY :{TINY_FONT}{COMPANY} STR_SMALLMAP_TOWN :{TINY_FONT}{WHITE}{TOWN} -STR_SMALLMAP_DISABLE_ALL :{BLACK}Desabilitar tudo -STR_SMALLMAP_ENABLE_ALL :{BLACK}Habilitar tudo +STR_SMALLMAP_DISABLE_ALL :{BLACK}Desativar tudo +STR_SMALLMAP_ENABLE_ALL :{BLACK}Ativar tudo STR_SMALLMAP_SHOW_HEIGHT :{BLACK}Mostrar altitudes STR_SMALLMAP_TOOLTIP_DISABLE_ALL_INDUSTRIES :{BLACK}Não mostrar indústrias no mapa STR_SMALLMAP_TOOLTIP_ENABLE_ALL_INDUSTRIES :{BLACK}Mostrar todas as indústrias no mapa @@ -856,7 +856,7 @@ STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi vendida para {STRING} por {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Falência! STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi fechada pelos credores e todos os seus bens foram vendidos! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Lançada nova empresa de transportes! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} inicia construção perto de {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} foi comprada por {STRING} por um valor não revelado! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Gerente) @@ -1198,8 +1198,8 @@ STR_TERRAIN_TYPE_FLAT :Plano STR_TERRAIN_TYPE_HILLY :Acidentado STR_TERRAIN_TYPE_MOUNTAINOUS :Montanhoso STR_TERRAIN_TYPE_ALPINIST :Alpinismo -STR_TERRAIN_TYPE_CUSTOM :Altitude personalizada -STR_TERRAIN_TYPE_CUSTOM_VALUE :Altitude personalizada ({NUM}) +STR_TERRAIN_TYPE_CUSTOM :Altura personalizada +STR_TERRAIN_TYPE_CUSTOM_VALUE :Altura personalizada ({NUM}) ###length 4 STR_CITY_APPROVAL_LENIENT :Leniente @@ -1556,7 +1556,7 @@ STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno: {STRING} -STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Escolher a altitude das colinas e montanhas da paisagem +STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Escolher a altura das colinas e montanhas da paisagem STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidade de indústrias: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Definir quantas indústrias devem ser geradas e que nível deve ser mantido durante o jogo @@ -2177,13 +2177,13 @@ STR_INTRO_CAPTION :{WHITE}OpenTTD STR_INTRO_NEW_GAME :{BLACK}Novo Jogo STR_INTRO_LOAD_GAME :{BLACK}Abrir Jogo -STR_INTRO_PLAY_SCENARIO :{BLACK}Jogar em Cenário -STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Jogar em Mapa de Altitudes +STR_INTRO_PLAY_SCENARIO :{BLACK}Jogar Cenário +STR_INTRO_PLAY_HEIGHTMAP :{BLACK}Jogar Mapa de Altitudes STR_INTRO_SCENARIO_EDITOR :{BLACK}Editor de Cenário STR_INTRO_MULTIPLAYER :{BLACK}Multijogador STR_INTRO_GAME_OPTIONS :{BLACK}Opções de Jogo -STR_INTRO_HIGHSCORE :{BLACK}Tabela de Classificações +STR_INTRO_HIGHSCORE :{BLACK}Painel de Classificação STR_INTRO_HELP :{BLACK}Ajuda & Manuais STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configurações STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configurações de NewGRF @@ -2205,7 +2205,7 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Selecion STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Selecionar paisagem 'Terra dos brinquedos' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Abrir opções de jogo -STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Abrir tabela de classificações +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Abrir tabela de classificação STR_INTRO_TOOLTIP_HELP :{BLACK}Acessar a documentação e recursos online STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Abrir configurações STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Abrir configurações de NewGRF @@ -2249,7 +2249,7 @@ STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Escavad STR_CHEAT_CROSSINGTUNNELS :{LTBLUE}Os túneis podem se cruzar: {ORANGE}{STRING} STR_CHEAT_NO_JETCRASH :{LTBLUE}Aeronaves a jato não irão se acidentar (frequentemente) em aeroportos pequenos: {ORANGE}{STRING} STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altitude máxima do mapa: {ORANGE}{NUM} -STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altitude máxima das montanhas no mapa +STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altura máxima das montanhas no mapa STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar o ano atual STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} @@ -2755,9 +2755,9 @@ STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLA STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}sobrecarregado # Linkgraph tooltip -STR_LINKGRAPH_STATS_TOOLTIP_MONTH :{BLACK}{CARGO_LONG} para ser transportado por mês de {STATION} para {STATION} ({COMMA}% da capacidade){STRING} -STR_LINKGRAPH_STATS_TOOLTIP_MINUTE :{BLACK}{CARGO_LONG} para ser transportado por minuto de {STATION} para {STATION} ({COMMA}% da capacidade){STRING} -STR_LINKGRAPH_STATS_TOOLTIP_RETURN_EXTENSION :{}{CARGO_LONG} para ser transportado de volta ({COMMA}% da capacidade) +STR_LINKGRAPH_STATS_TOOLTIP_MONTH :{BLACK}{CARGO_LONG} para se transportar, por mês, de {STATION} para {STATION} ({COMMA}% da capacidade){STRING} +STR_LINKGRAPH_STATS_TOOLTIP_MINUTE :{BLACK}{CARGO_LONG} para se transportar, por minuto, de {STATION} para {STATION} ({COMMA}% da capacidade){STRING} +STR_LINKGRAPH_STATS_TOOLTIP_RETURN_EXTENSION :{}{CARGO_LONG} para se transportar de volta ({COMMA}% da capacidade) STR_LINKGRAPH_STATS_TOOLTIP_TIME_EXTENSION :{}Tempo médio de viagem: {UNITS_DAYS_OR_SECONDS} # Base for station construction window(s) @@ -3368,7 +3368,7 @@ STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho: STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanho da imagem original do mapa de altitudes. Para obter melhores resultados, cada lado deve corresponder a um comprimento de lado de mapa disponível no OpenTTD, tais como 256, 512, 1024, etc. STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} -STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altitude desejada para o pico +STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura do pico mais elevado STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais elevado STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com neve (em %) STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com deserto (em %) @@ -3595,7 +3595,7 @@ STR_NEWGRF_SCAN_ARCHIVES :Procurando por # Sign list window STR_SIGN_LIST_CAPTION :{WHITE}Lista de Placas - {COMMA} Placa{P "" s} STR_SIGN_LIST_MATCH_CASE :{BLACK}Diferenciar maiúsculas/minúsculas -STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Ativar/Desativar correspondência de maiúsculas/minúsculas quando comparar os nomes das placas com a sequência de caracteres fornecida +STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Ativar/Desativar correspondência de maiúsculas/minúsculas quando comparar os nomes das placas com a palavra-chave fornecida # Sign window STR_EDIT_SIGN_CAPTION :{WHITE}Editar texto da placa @@ -3643,7 +3643,7 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Renomear Locali # Town local authority window STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Autoridade local de {TOWN} -STR_LOCAL_AUTHORITY_ZONE :{BLACK}Área +STR_LOCAL_AUTHORITY_ZONE :{BLACK}Região STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Mostrar a região dentro dos limites da autoridade local STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classificações das empresas de transporte: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} @@ -4450,7 +4450,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacida STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Créditos de Transferência: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}dias{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}minutos{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}minuto{P "" s}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Última manutenção: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Última manutenção: {LTBLUE}{NUM} minuto{P "" s} atrás @@ -4592,14 +4592,14 @@ STR_ORDER_CONDITIONAL_MAX_RELIABILITY :Confiabilidade ###next-name-looks-similar STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Como comparar os dados do veículo com o valor passado -STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :é igual a -STR_ORDER_CONDITIONAL_COMPARATOR_NOT_EQUALS :é diferente de -STR_ORDER_CONDITIONAL_COMPARATOR_LESS_THAN :é menor que -STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :é menor que ou igual a -STR_ORDER_CONDITIONAL_COMPARATOR_MORE_THAN :é maior que -STR_ORDER_CONDITIONAL_COMPARATOR_MORE_EQUALS :é maior que ou igual a -STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :é verdadeiro -STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :é falso +STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :for igual a +STR_ORDER_CONDITIONAL_COMPARATOR_NOT_EQUALS :for diferente de +STR_ORDER_CONDITIONAL_COMPARATOR_LESS_THAN :for menor que +STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :for menor que ou igual a +STR_ORDER_CONDITIONAL_COMPARATOR_MORE_THAN :for maior que +STR_ORDER_CONDITIONAL_COMPARATOR_MORE_EQUALS :for maior que ou igual a +STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :for verdadeiro +STR_ORDER_CONDITIONAL_COMPARATOR_IS_FALSE :for falso STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}O valor para comparar com os dados do veículo STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Digitar um valor para comparar @@ -4821,7 +4821,7 @@ STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Configur # Available AIs window STR_AI_LIST_CAPTION :{WHITE}{STRING} Disponíveis STR_AI_LIST_CAPTION_AI :IAs -STR_AI_LIST_CAPTION_GAMESCRIPT :Scripts de jogo +STR_AI_LIST_CAPTION_GAMESCRIPT :Scripts de Jogo STR_AI_LIST_TOOLTIP :{BLACK}Clique para selecionar um script STR_AI_LIST_AUTHOR :{LTBLUE}Autor: {ORANGE}{STRING} @@ -4856,7 +4856,7 @@ STR_TEXTFILE_JUMPLIST_TOOLTIP :{BLACK}Acesso r STR_TEXTFILE_JUMPLIST_ITEM :{WHITE}{STRING} STR_TEXTFILE_NAVBACK_TOOLTIP :{BLACK}Retornar no histórico de navegação STR_TEXTFILE_NAVFORWARD_TOOLTIP :{BLACK}Avançar no histórico de navegação -STR_TEXTFILE_WRAP_TEXT :{WHITE}Quebrar linhas do texto +STR_TEXTFILE_WRAP_TEXT :{WHITE}Quebrar linhas STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Ajustar o comprimento das linhas à largura da janela para facilitar a leitura do texto STR_TEXTFILE_VIEW_README :{BLACK}Leia-me STR_TEXTFILE_VIEW_README_TOOLTIP :Ver o arquivo Leia-me para este conteúdo @@ -4865,7 +4865,7 @@ STR_TEXTFILE_VIEW_CHANGELOG_TOOLTIP :Ver o registro STR_TEXTFILE_VIEW_LICENCE :{BLACK}Licença STR_TEXTFILE_VIEW_LICENCE_TOOLTIP :Ver a licença para este conteúdo ###length 5 -STR_TEXTFILE_README_CAPTION :{WHITE}Leia-me {STRING} de {STRING} +STR_TEXTFILE_README_CAPTION :{WHITE}Leia-me de {STRING} de {STRING} STR_TEXTFILE_CHANGELOG_CAPTION :{WHITE}Registro de modificações em {STRING} de {STRING} STR_TEXTFILE_LICENCE_CAPTION :{WHITE}Licença de {STRING} de {STRING} STR_TEXTFILE_SURVEY_RESULT_CAPTION :{WHITE}Pré-visualização do resultado da pesquisa diff --git a/src/lang/danish.txt b/src/lang/danish.txt index c19d052d86..3aa4f20c61 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Værdi af overført fragt: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Serviceinterval: {LTBLUE}{COMMA}{NBSP}dage{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Serviceinterval: {LTBLUE}{COMMA}{NBSP}minutter{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Serviceinterval: {LTBLUE}{COMMA}{NBSP}minut{P "" ter}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Serviceinterval: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Sidste service: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last service: {LTBLUE}{NUM} minutter siden +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :sidste service: {LTBLUE}{NUM} minut{P "" ter} siden STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Forøg serviceintervallet med 10 dage. Ctrl+klik for at øge serviceintervallet med 5 dage STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Forøg serviceintervallet med 5 minutter. Ctrl+klik for at øge serviceintervallet med 1 minut STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Forøg serviceintervallet med 10 procent. Ctrl+klik for at øge serviceintervallet med 5 procent diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index e84cc263ee..63d2bc12d3 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}minutes{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servicing interval: {LTBLUE}{COMMA}{NBSP}minute{P "" s}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servicing interval: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Last service: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last service: {LTBLUE}{NUM} minutes ago +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last service: {LTBLUE}{NUM} minute{P "" s} ago STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Increase servicing interval by 10 days. Ctrl+Click to increase servicing interval by 5 days STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Increase servicing interval by 5 minutes. Ctrl+Click to increase servicing interval by 1 minute STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Increase servicing interval by 10 percent. Ctrl+Click to increase servicing interval by 5 percent diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index ac950a5fa3..ce187a16f2 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Siirron arvo: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Huoltoväli: {LTBLUE}{COMMA}{NBSP}vrk{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Huoltoväli: {LTBLUE}{COMMA}{NBSP}minuuttia{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Huoltoväli: {LTBLUE}{COMMA}{NBSP}minuutti{P "" a}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Huoltoväli: {LTBLUE}{COMMA}{NBSP}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Viimeksi huollettu: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Viimeksi huollettu: {LTBLUE}{NUM} minuuttia sitten +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Viimeksi huollettu: {LTBLUE}{NUM} minuutti{P "" a} sitten STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Pidennä huoltoväliä 10 vuorokaudella. Ctrl+napsautus pidentää väliä 5 vuorokaudella STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Pidennä huoltoväliä 5 minuutilla. Ctrl+napsautus pidentää väliä 1 minuutilla STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Pidennä huoltoväliä 10 prosentilla. Ctrl+napsautus pidentää väliä 5 prosentilla diff --git a/src/lang/greek.txt b/src/lang/greek.txt index b317bf0f12..24bced900b 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -274,6 +274,9 @@ STR_COLOUR_SECONDARY_SAME_AS_PRIMARY :Ίδιο με STR_UNITS_VELOCITY_IMPERIAL :{DECIMAL}{NBSP}μίλια/ώρα STR_UNITS_VELOCITY_METRIC :{DECIMAL}{NBSP}χλμ/ώρα STR_UNITS_VELOCITY_SI :{DECIMAL}{NBSP}m/s +STR_UNITS_VELOCITY_GAMEUNITS_DAY :{DECIMAL}{NBSP}τετραγωνίδια/ημέρα +STR_UNITS_VELOCITY_GAMEUNITS_SEC :{DECIMAL}{NBSP}τετραγωνίδια/δευτερόλεπτο +STR_UNITS_VELOCITY_KNOTS :{DECIMAL}{NBSP}κόμβοι STR_UNITS_POWER_IMPERIAL :{DECIMAL}{NBSP}hp STR_UNITS_POWER_METRIC :{DECIMAL}{NBSP}hp @@ -281,6 +284,7 @@ STR_UNITS_POWER_SI :{DECIMAL}{NBSP} STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg @@ -313,9 +317,15 @@ STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP} STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m # Time units used in string control characters +STR_UNITS_DAYS :{COMMA}{NBSP}ημέρ{P 0 α ες} +STR_UNITS_SECONDS :{COMMA}{NBSP}δευτερόλεπτ{P 0 ο α} +STR_UNITS_TICKS :{COMMA}{NBSP}τικ{P "" ς} +STR_UNITS_MONTHS :{NUM}{NBSP}μήν{P 0 α ες} STR_UNITS_MINUTES :{NUM}{NBSP}λεπτ{P ό ά} +STR_UNITS_YEARS :{NUM}{NBSP}έτ{P 0 ος η} +STR_UNITS_PERIODS :{NUM}{NBSP}περίοδ{P 0 ος οι} # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Φιλτράρισμα λίστας: @@ -736,6 +746,8 @@ STR_PERFORMANCE_DETAIL_LOAN :{BLACK}Δάνε STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Σύνολο: ###next-name-looks-similar +STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP_YEARS :{BLACK}Αριθμός οχημάτων που είχαν κέρδη το προηγούμενο έτος. Αυτό περιλαμβάνει οδικά οχήματα, τρένα, πλοία και αεροσκάφη +STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP_PERIODS :{BLACK}Αριθμός οχημάτων που είχαν κέρδη την προηγούμενη περίοδο. Αυτό περιλαμβάνει οδικά οχήματα, τρένα, πλοία και αεροσκάφη STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Αριθμός των πρόσφατα επισκευασμένων σταθμών. Σταθμοί τρένων, στάσεις λεωφορείων, αεροδρόμια, κ.ο.κ. προσμετρώνται ξεχωριστά, ακόμα κι αν ανήκουν στον ίδιο σταθμό. STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Το ποσό των χρημάτων που έγιναν σε ένα τρίμηνο με το μικρότερο κέρδος των τελευταίων 12 τριμήνων STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Το ποσό των χρημάτων που έγιναν σε ένα τρίμηνο με το μεγαλύτερο κέρδος των τελευταίων 12 τριμήνων @@ -983,7 +995,12 @@ STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_LIST :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Έληξε η προσφορά επιδότησης:{}{}{STRING} από {G τον τη το} {STRING} πρός {G τον τη το} {STRING} δεν θα επιδοτείται πλέον. STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Η επιδότηση αποσύρθηκε:{}{}Η υπηρεσια για {STRING.subs} απο το {STRING} προς το {STRING} δεν επιδοτείται πλέον. +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Προσφορά επιδότησης υπηρεσίας:{}{}Η πρώτη {STRING} από {STRING} έως {STRING} θα προσελκύσει επιδότηση {UNITS_YEARS_OR_MINUTES} από την τοπική αρχή! ###length 4 +STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσίας που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει 50% έξτρα για το/α επόμενο/α {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσίας που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει διπλά ποσά για το επόμενο/α {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσία που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει τριπλές τιμές για το/α επόμενο/α {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσίας που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει τετραπλές τιμές για το/α επόμενο/α {UNITS_YEARS_OR_MINUTES}! STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Μονοπώλιο μεταφορών! @@ -1006,11 +1023,20 @@ STR_GAME_OPTIONS_TAB_SOUND_TT :{BLACK}Επιλ STR_GAME_OPTIONS_TAB_SOCIAL :Κοινωνικά STR_GAME_OPTIONS_TAB_SOCIAL_TT :{BLACK}Επιλέξτε ρυθμίσεις κοινωνικής ενσωμάτωσης +STR_GAME_OPTIONS_VOLUME :Ένταση Ήχου +STR_GAME_OPTIONS_SFX_VOLUME :Ηχητικά εφέ +STR_GAME_OPTIONS_MUSIC_VOLUME :Μουσική +STR_GAME_OPTIONS_VOLUME_0 :0% +STR_GAME_OPTIONS_VOLUME_25 :25% +STR_GAME_OPTIONS_VOLUME_50 :50% +STR_GAME_OPTIONS_VOLUME_75 :75% +STR_GAME_OPTIONS_VOLUME_100 :100% STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Νομισματικές μονάδες STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Επιλογή νομισματικών μονάδων +STR_GAME_OPTIONS_CURRENCY_CODE :{STRING} ({STRING}) ###length 44 STR_GAME_OPTIONS_CURRENCY_GBP :Στερλίνα Ηνωμένου Βασιλείου @@ -1055,6 +1081,8 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Δολάριο STR_GAME_OPTIONS_CURRENCY_INR :Ρουπία Ινδίας STR_GAME_OPTIONS_CURRENCY_IDR :Ινδονησιακή Ρουπία STR_GAME_OPTIONS_CURRENCY_MYR :Ρινγκίτ Μαλαισίας +STR_GAME_OPTIONS_CURRENCY_LVL :Λετονικά Λατς +STR_GAME_OPTIONS_CURRENCY_PTE :Πορτογαλικό Εσκούδο STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Αυτόματη αποθήκευση STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Επιλογή διάκενου ανάμεσα στις αυτόματες αποθηκεύσεις @@ -1139,6 +1167,13 @@ STR_GAME_OPTIONS_SOCIAL_PLUGINS_NONE :{LTBLUE}(δεν STR_GAME_OPTIONS_SOCIAL_PLUGIN_PLATFORM :{BLACK}Πλατφόρμα: STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE :{BLACK}Plugin state: +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_RUNNING :{GREEN}Τρέχει +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_FAILED :{RED}Αποτυχία αρχικοποίησης +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_PLATFORM_NOT_RUNNING :{ORANGE}{STRING} δεν τρέχει +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNLOADED :{RED}Ξεφορτώθηκε +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_DUPLICATE :Διπλό πρόσθετο +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNSUPPORTED_API :{RED}Μη υποστηριζόμενη έκδοση +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_INVALID_SIGNATURE :{RED}Άκυρη υπογραφή STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Αποτυχία ανάκτησης λίστας υποστηριζόμενων αναλύσεων @@ -1425,9 +1460,11 @@ STR_CONFIG_SETTING_SIGNALSIDE_RIGHT :Στα δεξι ###length 2 STR_CONFIG_SETTING_SHOWFINANCES :Εμφάνιση παράθυρου οικονομικών στο τέλος του έτους: {STRING} +STR_CONFIG_SETTING_SHOWFINANCES_PERIOD :Εμφάνιση παραθύρου οικονομικών στο τέλος της περιόδου: {STRING} ###length 2 STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT :Όταν ενεργοποιείται, το παράθυρο των οικονομικών πληροφοριών εμφανίζεται στο τέλος κάθε χρόνου για ευκολότερο έλεγχο της οικονομικής κατάστασης της εταιρείας +STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT_PERIOD :Εάν είναι ενεργοποιημένο, το παράθυρο οικονομικών αναδύεται στο τέλος κάθε περιόδου για να επιτρέψει την εύκολη επιθεώρηση της οικονομικής κατάστασης της εταιρείας STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Οι νέες οδηγίες είναι «χωρίς στάση» από προεπιλογή: {STRING} STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Κανονικά, τα οχήματα σταματούν σε κάθε σταθμό που περνούν. Ενεργοποιώντας αυτήν τη ρύθμιση, δεν θα σταματούν σε κανένα σταθμό που θα βρει στη διαδρομή τους προς τον τελικό προορισμό. Σημείωστε πως αυτή η ρύθμιση ορίζει μόνο μια καθορισμένη τιμή για νέες εντολές. Ειδικές εντολές μπορούν να δοθούν για οποιαδήποτε συμπεριφορά, άσχετα από την προκαθορισμένη @@ -1453,7 +1490,8 @@ STR_CONFIG_SETTING_BRIBE_HELPTEXT :Επιτρέπ STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Επιτρέπεται η αγορά αποκλειστικών δικαιωμάτων μεταφοράς: {STRING} ###length 2 -STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Αν μια εταιρεία αγοράσει τα αποκλειστικά δικαιώματα μεταφορών σε μια πόλη, οι σταθμοί των αντιπάλων δεν θα λαμβάνουν φορτία (επιβάτες και εμπορεύματα) για έναν ολόκληρο χρόνο +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT :Αν μια εταιρεία αγοράσει τα αποκλειστικά δικαιώματα μεταφορών σε μια πόλη, οι σταθμοί των αντιπάλων δεν θα λαμβάνουν φορτία (επιβάτες και εμπορεύματα) για δώδεκα μήνες +STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT_MINUTES :Εάν μια εταιρεία αγοράσει αποκλειστικά δικαιώματα μεταφοράς για μια πόλη, οι αντίπαλοι σταθμοί (επιβάτες και φορτίο) δεν θα λάβουν κανένα φορτίο για δώδεκα λεπτά STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS :Επιτρέπεται η κατασκευή κτιρίων: {STRING} STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT :Επιτρέπεται στις εταιρείες να δίνουν χρήματα στις πόλεις για να χρηματοδοτήσουν νέα σπίτια @@ -1478,6 +1516,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Κανένα* STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Μειωμένη STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Κανονική +STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR :Επιτρέπονται ισόπεδες διαβάσεις με δρόμους που ανήκουν σε ανταγωνιστές: {STRING} +STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR_HELPTEXT :Επιτρέπεται η κατασκευή ισόπεδων διαβάσεων με δρόμους ή σιδηροτροχιές που ανήκουν σε ανταγωνιστές STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Επιτρέπονται οι στάσεις σε δρόμους που είναι ιδιοκτησία των πόλεων : {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Επιτρέπεται η κατασκευή στάσεων πάνω σε δρόμους που είναι ιδιοκτησία των πόλεων @@ -1491,6 +1531,8 @@ STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Όταν είν STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Αρχικό χρώμα εταιρίας: {STRING} STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Επιλογή του αρχικού χρώματος της εταιρίας +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY :Δευτερεύον χρώμα εταιρίας: {STRING} +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :Επιλέξτε το δευτερεύον χρώμα της εταιρίας, αν χρησιμοποιείτε ένα NewGRF που να το υποστηρίζει STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Τα αεροδρόμια δεν λήγουν ποτέ: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Ενεργοποιώντας αυτήν τη ρύθμιση κάθε τύπος αεροδρομίου παραμένει διαθέσιμο για πάντα μετά την παρουσίασή του @@ -1519,7 +1561,10 @@ STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Ημερολό ###setting-zero-is-special -STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Κλιμακώστε την παραγωγή φορτίου των πόλεων κατά αυτό το ποσοστό. +STR_CONFIG_SETTING_TOWN_CARGO_SCALE :Κλίμακα παραγωγής φορτίου πόλης: {STRING} +STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Κλιμάκωση της παραγωγής φορτίου των πόλεων κατά αυτό το ποσοστό +STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :Κλιμάκωση της παραγωγής φορτίου των βιομηχανιών: {STRING} +STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Κλιμάκωση της παραγωγής φορτίου των βιομηχανιών κατά αυτό το ποσοστό STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Αυτόματη ανανέωση όταν ένα όχημα παλιώνει: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Όταν είναι ενεργοποιημένη, τα οχήματα που πλησιάζουν το τέλος της ζωής τους αντικαθίσταται αυτόματα όταν πληρούνται οι προϋποθέσεις αντικατάστασής του @@ -1731,7 +1776,12 @@ STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT :Ενεργοπ STR_CONFIG_SETTING_LOADING_INDICATORS :Χρήση δεικτών φόρτωσης: {STRING} STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT :Επιλέξτε εάν οι δείκτες φόρτωσης εμφανίζονται πάνω από τα οχήματα που φορτώνουν ή ξεφορτώνουν +STR_CONFIG_SETTING_TIMETABLE_MODE :Μονάδες μέτρησης στα χρονοδιαγράμματα δρομολογίων: {STRING} +STR_CONFIG_SETTING_TIMETABLE_MODE_HELPTEXT :Επιλέξτε τις μονάδες μέτρησης χρόνου που χρησιμοποιούνται στα χρονοδιαγράμματα δρομολογίων οχημάτων ###length 3 +STR_CONFIG_SETTING_TIMETABLE_MODE_DAYS :Ημέρες +STR_CONFIG_SETTING_TIMETABLE_MODE_SECONDS :Δευτερόλεπτα +STR_CONFIG_SETTING_TIMETABLE_MODE_TICKS :Τικς STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE :Εμφάνιση αφίξεων και αναχωρήσεων στα δρομολόγια: {STRING} STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT :Εμφάνιση αναμενόμενης ώρας άφιξης και αναχώρησης στα χρονοδιαγράμματα @@ -1769,9 +1819,11 @@ STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT :Παίζει ή ###length 2 STR_CONFIG_SETTING_SOUND_NEW_YEAR :Στο τέλος του χρόνου: {STRING} +STR_CONFIG_SETTING_SOUND_NEW_PERIOD :Τέλος περιόδου: {STRING} ###length 2 STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT :Παίζει ηχητικό εφέ στο τέλος του χρόνου που συνοψίζει την επίδοση της εταιρείας κατά την διάρκεια αυτού του χρόνου σε σχέση με τον προηγούμενο χρόνο +STR_CONFIG_SETTING_SOUND_NEW_PERIOD_HELPTEXT :Παίζει ηχητικό εφέ στο τέλος του χρόνου που συνοψίζει την επίδοση της εταιρείας κατά την διάρκεια αυτής της περιόδου σε σχέση με την προηγούμεη περίοδο STR_CONFIG_SETTING_SOUND_CONFIRM :Οικοδομή: {STRING} STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT :Παίζει ηχητικό εφέ σε επιτυχής οικοδομές ή άλλες δράσεις @@ -1839,6 +1891,8 @@ STR_CONFIG_SETTING_SERVINT_DISABLED :Απενεργ STR_CONFIG_SETTING_NOSERVICE :Απενεργοποίηση επισκευών όταν οι καταρρεύσεις είναι απενεργοποιημένες: {STRING} STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Όταν είναι ενεργοποιημένη, τα οχήματα δεν συντηρούνται όταν δεν είναι δυνατό να χαλάσουν +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Ποινή ταχύτητας φόρτωσης για τρένα που είναι μεγαλύτερα από τον σταθμό: {STRING} +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Όταν είναι ενεργοποιημένο, τα τρένα που είναι πολύ μακριά για τον σταθμό φορτώνουν πιο αργά από ένα τρένο που ταιριάζει στο σταθμό. Αυτή η ρύθμιση δεν επηρεάζει την διαδικασία εύρεσης διαδρομής STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Ενεργοποίηση ορίων ταχύτητας βαγονιών: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Όταν είναι ενεργοποιημένο, χρησιμοποιούνται και τα όρια ταχύτητας των βαγονιών όταν αποφασίζεται η μέγιστη ταχύτητα ενός τρένου @@ -1930,6 +1984,7 @@ STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Ορίζετα STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Περιήγηση στους τύπους σηματοδότησης: {STRING} STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Επιλέξτε τους τύπους σημάτων μεταξύ των οποίων θα γίνονται οι αλλαγές όταν πατάτε σε ένα τοποθετημένο σήμα κρατώντας πατημένο το Ctrl ###length 2 +STR_CONFIG_SETTING_CYCLE_SIGNAL_GROUP :Μόνο τρέχουσα ομάδα STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Όλα ορατά STR_CONFIG_SETTING_SIGNAL_GUI_MODE :Εμφάνιση τύπων σημάτων: {STRING} @@ -1963,7 +2018,7 @@ 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_HELPTEXT :Η ποσότητα εμπορευμάτων που παράγεται απο σπίτια σε πόλεις, σε σχέση με τον συνολικό πληθυσμό της πόλης.{}Τετραγωνική ανάπτυξη: Μια πόλη διπλού μεγέθους παράγει τετραπλάσιο αριθμό επιβατών.{}Γραμμική ανάπτυξη: Μια πόλη διπλού μεγέθους παράγει διπλάσιο αριθμό επιβατών ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Τετραγωνικός (αρχική έκδοση) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Γραμμικό @@ -2027,6 +2082,10 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Καμία STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Αρχικός πολλαπλασιαστής μεγέθους πόλης: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Μέσο μέγεθος μεγάλων πόλεων σε σχέση με τις κανονικές στην αρχή του παιχνιδιού +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Ανανέωση του γραφήματος κατανομής κάθε {STRING} +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Χρόνος μεταξύ των επακόλουθων επανυπολογισμών του γραφήματος σύνδεσης. Κάθε επανυπολογισμός υπολογίζει τα σχέδια για ένα στοιχείο του γραφήματος. Αυτό σημαίνει ότι μια τιμή X για αυτήν τη ρύθμιση δεν σημαίνει ότι ολόκληρο το γράφημα θα ενημερώνεται κάθε Χ δευτερόλεπτα. Μόνο κάποιο συστατικό του θα ανανεωθεί. Σε όσο πιο μικρή τιμή το ρυθμίσετε, τόσο περισσότερη επεξεργαστική ισχύς θα χρειαστεί για τον υπολογισμό του. Σε όσο πιο μεγάλη τιμή το ρυθμίσετε, τόσο περισσότερος χρόνος θα χρειαστεί μέχρι να ξεκινήσει η διανομή φορτίου σε νέα δρομολόγια +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Χρήση του {STRING} για τον επαναυπολογισμό του γραφήματος κατανομής +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Χρόνος που απαιτείται για κάθε επανυπολογισμό ενός στοιχείου γραφήματος συνδέσμου. Όταν ξεκινά ένας επανυπολογισμός, δημιουργείται ένα νήμα στο οποίο επιτρέπεται να τρέξει για αυτόν τον αριθμό δευτερολέπτων. Σε όσο πιο μικρή τιμή το ορίσετε, τόσο πιο πιθανό είναι να μην έχει τελειώσει το νήμα στον χρόνο που έχει προβλεφθεί. Στη συνέχεια, το παιχνίδι σταματά μέχρι να είναι σε "καθυστέρηση" ("lag"). Σε όσο πιο μεγάλη τιμή το ορίσετε, τόσο περισσότερος χρόνος θα χρειαστεί για να ενημερωθεί η διανομή όταν αλλάζουν οι διαδρομές STR_CONFIG_SETTING_DISTRIBUTION_PAX :Τρόπος διανομής επιβατών: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου ο ίδιος αριθμός επιβατών θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετος αριθμός επιβατών μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για τους επιβάτες. @@ -2050,7 +2109,7 @@ STR_CONFIG_SETTING_DEMAND_SIZE :Ποσότητ STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Θέτοντας αυτή τη ρύθμιση σε τιμή λιγότερη του 100% κάνετε τη συμμετρική διανομή να συμπεριφέρεται πιο πολύ σαν την ασυμμετρική. Λιγότερο φορτίο θα στέλνεται πίσω εαν μια συγκεκριμένη ποσότητα έχει σταλεί σε έναν σταθμό. Αν τεθεί στο 0% η συμμετρική διανομή συμπεριφέρεται ακριβώς όπως η ασυμμετρική. STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Κορεσμός σύντομων οδών πριν τη χρήση οδών μεγάλης χωρητικότητας: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Συχνά υπάρχουν πολλαπλές οδοί μεατξύ δύο σταθμών. Η διανομή φορτίων θα κορέσει την πιο σύντομη οδό πρώτα, και μετέπειτα θα χρησιμοποιήσει τη δεύτερ συντομότερη οδό μέχρι αυτή να κορεστεί και τα λοιπά. Ο κορεσμός εξαρτάται από μια εκτίμηση της χωρητικότητας και ενδεχόμενης χρήσης. Όταν έχει κορεστεί όλες οι οδοί, θα υπερφορτώσει όλες τισ οδούς, προτιμώντας αυτές με μεγάλη χωρητικότητα. Τις περισσότερες φορές όμως ο αλγόριθμος δεν εκτιμά σωστά την χωριτικότητα. Αυτή η ρύθμιση επιτρέπει τον προσδιορισμό μέχρι ποιό ποσοστό μια σύντομοτερη οδός πρέπει να κορεστεί τη πρώτη φορά πριν διαλέξει μια μακρύτερη. Θέστε τη σε λιγότερο απο το 100% για την αποφυγή υπερφορτωμένων σταθμών σε περίπτωση υπερεκτιμημένης χωρητικότητας. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Συχνά υπάρχουν πολλαπλές οδοί μεταξύ δύο σταθμών. Η διανομή φορτίων θα κορέσει την πιο σύντομη οδό πρώτα, και μετέπειτα θα χρησιμοποιήσει τη δεύτερη συντομότερη οδό μέχρι αυτή να κορεστεί και τα λοιπά. Ο κορεσμός εξαρτάται από μια εκτίμηση της χωρητικότητας και ενδεχόμενης χρήσης. Όταν έχουν κορεστεί όλες οι οδοί, αν εξακολουθεί και υπάρχει ζήτηση, θα υπερφορτώσει όλες τις οδούς, προτιμώντας αυτές με μεγάλη χωρητικότητα. Τις περισσότερες φορές όμως, ο αλγόριθμος δεν εκτιμά σωστά την χωρητικότητα. Αυτή η ρύθμιση σάς επιτρέπει να καθορίσετε μέχρι ποιο ποσοστό πρέπει να κορεσθεί μια μικρότερη διαδρομή στο πρώτο πέρασμα πριν επιλεγεί η επόμενη μεγαλύτερη. Ρυθμίστε τη σε λιγότερο από 100% για να αποφύγετε υπερπληθυσμένους σταθμούς σε περίπτωση υπερεκτιμημένης χωρητικότητας STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Μονάδες μέτρησης ταχύτητας (ξηράς): {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :Μονάδες ταχύτητας (ναυτικές): {STRING} @@ -2114,10 +2173,12 @@ STR_CONFIG_SETTING_LIMITATIONS :Περιορι STR_CONFIG_SETTING_ACCIDENTS :Καταστροφές/Ατυχήματα STR_CONFIG_SETTING_GENWORLD :Δημιουργία Κόσμου STR_CONFIG_SETTING_ENVIRONMENT :Περιβάλλον +STR_CONFIG_SETTING_ENVIRONMENT_TIME :Χρόνος STR_CONFIG_SETTING_ENVIRONMENT_AUTHORITIES :Αρχές STR_CONFIG_SETTING_ENVIRONMENT_TOWNS :Πόλεις STR_CONFIG_SETTING_ENVIRONMENT_INDUSTRIES :Βιομηχανίες STR_CONFIG_SETTING_ENVIRONMENT_CARGODIST :Κατανομή φορτίων +STR_CONFIG_SETTING_ENVIRONMENT_TREES :Δέντρα STR_CONFIG_SETTING_AI :Ανταγωνιστές STR_CONFIG_SETTING_AI_NPC :Παίκτες υπολογιστή STR_CONFIG_SETTING_NETWORK :Δίκτυο @@ -2194,10 +2255,11 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Επιλ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Εμφάνιση επιλογών παιχνιδιού STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Εμφάνιση του πίνακα βαθμολογιών -STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις οθόνης +STR_INTRO_TOOLTIP_HELP :{BLACK}Αποκτήστε πρόσβαση στην τεκμηρίωση και σε διαδικτυακούς πόρους +STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Εμφάνιση ρυθμίσεων STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Έλεγχος για νέο και ανανεωμένο περιεχόμενο για λήψη -STR_INTRO_TOOLTIP_AI_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων ΑΙ +STR_INTRO_TOOLTIP_AI_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων ΤΝ STR_INTRO_TOOLTIP_GAMESCRIPT_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων σενάριου παιχνιδιού STR_INTRO_TOOLTIP_QUIT :{BLACK}Έξοδος από το «OpenTTD» @@ -2248,9 +2310,15 @@ STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Εμφά STR_LIVERY_ROAD_VEHICLE_TOOLTIP :{BLACK}Εμφάνιση χρωματικών μοτίβων οχημάτων δρόμου STR_LIVERY_SHIP_TOOLTIP :{BLACK}Εμφάνιση χρωματικών μοτίβων πλοίων STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Εμφάνιση χρωματικών μοτίβων αεροσκαφών +STR_LIVERY_TRAIN_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων τραίνων +STR_LIVERY_ROAD_VEHICLE_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων οχημάτων δρόμου +STR_LIVERY_SHIP_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων πλοίων STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Επιλογή του βασικού χρώματος για το επιλεγμένο θέμα. Με Ctrl+Κλικ ορίζεται το χρώμα σε κάθε θέμα STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Επιλογή του δευτερεύοντος χρώματος για το επιλεγμένο μοτίβο. Με Ctrl+Κλικ ορίζεται το χρώμα για κάθε θέμα STR_LIVERY_PANEL_TOOLTIP :{BLACK}Επιλέξτε το χρωματικό μοτίβο για αλλαγή ή πολλαπλά μοτίβα με Ctrl+Κλικ. Πατήστε στο κουτάκι για να επιλέξετε τη χρήση του μοτίβου +STR_LIVERY_TRAIN_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες τραίνων +STR_LIVERY_ROAD_VEHICLE_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες οχημάτων δρόμου +STR_LIVERY_SHIP_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες πλοίων ###length 23 STR_LIVERY_DEFAULT :Πρότυπο Μοτίβου Χρωμάτων @@ -2575,6 +2643,7 @@ 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_NOT_ON_ALLOW_LIST :δεν βρίσκεται στη λίστα επιτρεπτών τιμών STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :λάθος εταιρία στο DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :εκδιωχθήκατε από τον διακομιστή STR_NETWORK_ERROR_CLIENT_CHEATER :προσπάθησε να χρησιμοποιησει cheat @@ -2796,8 +2865,11 @@ STR_STATION_BUILD_DRAG_DROP_TOOLTIP :{BLACK}Φτιά STR_STATION_BUILD_STATION_CLASS_TOOLTIP :{BLACK}Επιλογή τύπου σταθμών για εμφάνιση STR_STATION_BUILD_STATION_TYPE_TOOLTIP :{BLACK}Επιλέξτε τον τύπο του σταθμού προς κτίσιμο -STR_STATION_CLASS_DFLT :Εξ ορισμού σταθμός +STR_STATION_CLASS_DFLT :Προεπιλεγμένος +STR_STATION_CLASS_DFLT_STATION :Προεπιλεγμένος σταθμός +STR_STATION_CLASS_DFLT_ROADSTOP :Προεπιλεγμένη οδική στάση STR_STATION_CLASS_WAYP :Σημείο καθοδηγήσης +STR_STATION_CLASS_WAYP_WAYPOINT :Προεπιλεγμένο σημείο διαδρομής # Signal window STR_BUILD_SIGNAL_CAPTION :{WHITE}Επιλογή Σηματοδότη @@ -3046,6 +3118,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Ιδιο STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Ιδιοκτήτης του σιδηροδρόμου: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Τοπική αρχή: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Καμιά +STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Συντεταγμένες: {LTBLUE}{NUM} x {NUM} x {NUM} STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Κατασκευή: {LTBLUE}{DATE_LONG} STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Κατηγορία σταθμού: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Τύπος σταθμού: {LTBLUE}{STRING} @@ -3260,6 +3333,7 @@ STR_MAPGEN_DATE :{BLACK}Ημερ STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Αριθμός βιομηχανιών: STR_MAPGEN_NUMBER_OF_INDUSTRIES_TOOLTIP :{BLACK}Επιλέξτε την πυκνότητα των βιομηχανιών ή έναν προσαρμοσμένο αριθμό STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Υψηλότερη κορυφή: +STR_MAPGEN_HEIGHTMAP_HEIGHT_TOOLTIP :{BLACK}Επιλέξτε την υψηλότερη κορυφή που θα προσπαθήσει να δημιουργήσει το παιχνίδι, μετρημένη σε υψόμετρο πάνω από την επιφάνεια της θάλασσας STR_MAPGEN_HEIGHTMAP_HEIGHT_UP :{BLACK}Αύξηση του μέγιστου ύψους της υψηλότερης κορυφής στον χάρτη κατά ένα STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN :{BLACK}Μειώστε το μέγιστο ύψος της υψηλότερης κορυφής στον χάρτη κατά ένα STR_MAPGEN_SNOW_COVERAGE :{BLACK}Κάλυψη χιονιού: @@ -3272,6 +3346,7 @@ STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Μείω STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}% STR_MAPGEN_TERRAIN_TYPE :{BLACK}Τύπος εδάφους: STR_MAPGEN_SEA_LEVEL :{BLACK}Επίπεδο θάλασσας: +STR_MAPGEN_SEA_LEVEL_TOOLTIP :{BLACK}Επιλογή του επιπέδου θάλασσας STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Ποτάμια: STR_MAPGEN_SMOOTHNESS :{BLACK}Ομαλότητα: STR_MAPGEN_VARIETY :{BLACK}Διανομή ποικιλομορφίας: @@ -3280,7 +3355,7 @@ STR_MAPGEN_GENERATE_TOOLTIP :{BLACK}Δημι STR_MAPGEN_NEWGRF_SETTINGS :{BLACK}Ρυθμίσεις NewGRF STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Εμφάνιση ρυθμίσεων NewGRF STR_MAPGEN_AI_SETTINGS :{BLACK}Ρυθμίσεις AI -STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Εμφάνιση ρυθμίσεων AI +STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Εμφάνιση ρυθμίσεων ΤΝ STR_MAPGEN_GS_SETTINGS :{BLACK}Ρυθμίσεις σενάριου παιχνιδιού STR_MAPGEN_GS_SETTINGS_TOOLTIP :{BLACK}Εμφάνιση ρυθμίσεων σενάριου παιχνιδιού @@ -3322,7 +3397,9 @@ STR_MAPGEN_BORDER_MANUAL :{BLACK}Χειρ STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Περιστροφή χάρτη υψομετρίας: STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Όνομα χάρτη υψομετρίας: +STR_MAPGEN_HEIGHTMAP_NAME_TOOLTIP :{BLACK}Το όνομα του αρχείου χάρτη υψομετρίας STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Μέγεθος: +STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}Το μέγεθος της εικόνας χάρτη υψομετρίας. Για καλύτερα αποτελέσματα, κάθε διάσταση πρέπει να ταιριάζει με μια διαθέσιμη διάσταση χάρτη του OpenTTD, όπως 256, 512, 1024 κλπ. STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} × {NUM} STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Αναμενόμενο ύψος κορυφής @@ -3577,6 +3654,8 @@ STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED_GENERAL :{ORANGE}{STRING}{GREEN} παραδόθηκε STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{RED} (ακόμη απαιτείται) STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_DELIVERED :{ORANGE}{CARGO_TINY} / {CARGO_LONG}{GREEN} (παραδόθηκε) +STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{UNITS_DAYS_OR_SECONDS} +STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{UNITS_DAYS_OR_SECONDS} (χρηματοδοτούμενη) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Η πόλη {RED}δεν{BLACK} επεκτείνεται STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Επίπεδο θορύβου στη πόλη: {ORANGE}{COMMA}{BLACK} μέγιστο: {ORANGE}{COMMA} STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία της πόλης. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της πόλης @@ -3616,6 +3695,8 @@ STR_LOCAL_AUTHORITY_ACTION_BRIBE :Δωροδοκ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Έναρξη μικρής τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμών σε μία μικρή ακτίνα γύρω από το κέντρο της πόλης.{} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Έναρξη μεσαίας τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμών σε μία μεσαία ακτίνα γύρω από το κέντρο της πόλης.{} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Έναρξη μεγάλης τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμού σε μία μεγάλη ακτίνα γύρω από το κέντρο της πόλης.{}{POP_COLOUR} Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MONTHS :{PUSH_COLOUR}{YELLOW}Χρηματοδοτήστε την ανακατασκευή του αστικού οδικού δικτύου.{}Προκαλεί σημαντική αναστάτωση της οδικής κυκλοφορίας για έως και 6 μήνες.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MINUTES :{PUSH_COLOUR}{YELLOW}Χρηματοδοτήστε την ανακατασκευή του αστικού οδικού δικτύου.{}Προκαλεί σημαντική αναστάτωση της οδικής κυκλοφορίας για έως και 6 λεπτά.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Χτίστε ένα άγαλμα προς τιμήν της εταιρίας σας.{}Παρέχει μία μόνιμη ώθηση στην βαθμολογία σταθμών σε αυτή την πόλη.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Χρηματοδοτήστε την κατασκευή νέων κτιρίων στην πόλη.{}Παρέχει μία προσωρινή ώθηση στην ανάπτυξη αυτής της πόλης.{} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MONTHS :{PUSH_COLOUR}{YELLOW}Αγοράστε αποκλειστικά δικαιώματα μεταφοράς στην πόλη για 12 μήνες.{}Η δημοτική αρχή δεν θα επιτρέψει στους επιβάτες και στο φορτίο να χρησιμοποιούν τους σταθμούς των ανταγωνιστών σας. Μια επιτυχημένη δωροδοκία από έναν ανταγωνιστή θα ακυρώσει αυτό το συμβόλαιο.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} @@ -3669,8 +3750,11 @@ STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Τρέχ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} από {STRING} προς {STRING}{YELLOW} ({STRING}) STR_SUBSIDIES_NONE :{ORANGE}- Καμία - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Υπηρεσίες που έχουν χρηματοδοτηθεί: +STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} από τον σταθμό {STRING} προς τον σταθμό {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Πατήστε στην υπηρεσία για κεντράρισμα στην βιομηχανία/πόλη. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της βιομηχανίας/πόλης STR_SUBSIDIES_OFFERED_EXPIRY_DATE :ανά {DATE_SHORT} +STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :έως {DATE_SHORT} +STR_SUBSIDIES_SUBSIDISED_EXPIRY_TIME :{UNITS_MONTHS_OR_MINUTES} απομένουν # Story book window STR_STORY_BOOK_CAPTION :{WHITE}{COMPANY} Βιβλίο Ιστορίας @@ -3693,6 +3777,7 @@ STR_STATION_LIST_STATION :{YELLOW}{STATIO STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} STR_STATION_LIST_NONE :{YELLOW}- Κανένας - STR_STATION_LIST_SELECT_ALL_FACILITIES :{BLACK}Επιλογή όλων των εγκαταστάσεων +STR_STATION_LIST_CARGO_FILTER_ALL_AND_NO_RATING :Όλα τα είδη φορτίων και χωρίς βαθμολογία # Station view window STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} @@ -3708,6 +3793,8 @@ STR_STATION_VIEW_EXCLUSIVE_RIGHTS_COMPANY :Η {YELLOW}{COM STR_STATION_VIEW_RATINGS_BUTTON :{BLACK}Βαθμολογίες STR_STATION_VIEW_RATINGS_TOOLTIP :{BLACK}Εμφάνιση στατιστικών σταθμού +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE_MONTH :{BLACK}Προμήθεια ανά μήνα και τοπική βαθμολογία: +STR_STATION_VIEW_SUPPLY_RATINGS_TITLE_MINUTE :{BLACK}Προμήθεια ανά λεπτό και τοπική βαθμολογία: STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}Ομαδοποίηση από @@ -3768,6 +3855,8 @@ STR_EDIT_WAYPOINT_NAME :{WHITE}Διαμ # Finances window STR_FINANCES_CAPTION :{WHITE}{COMPANY} Οικονομικά {BLACK}{COMPANY_NUM} STR_FINANCES_YEAR :{WHITE}{NUM} +STR_FINANCES_YEAR_CAPTION :{WHITE}Έτος +STR_FINANCES_PERIOD_CAPTION :{WHITE}Περίοδος ###length 3 STR_FINANCES_REVENUE_TITLE :{WHITE}Έσοδα @@ -3779,7 +3868,7 @@ STR_FINANCES_CAPITAL_EXPENSES_TITLE :{WHITE}Έξοδ STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Κατασκευές STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Νέα Οχήματα STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Λειτουργικά Έξοδα Τρένων -STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Λειτουργικά Έξοδα Οχημάτων +STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Οχήματα STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Αεροσκάφη STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Λειτουργικά Έξοδα Πλοίων STR_FINANCES_SECTION_INFRASTRUCTURE :{GOLD}Υποδομές @@ -3794,7 +3883,7 @@ STR_FINANCES_SECTION_OTHER :{GOLD}Άλλα STR_FINANCES_TOTAL_CAPTION :{WHITE}Σύνολο STR_FINANCES_NEGATIVE_INCOME :-{CURRENCY_LONG} STR_FINANCES_ZERO_INCOME :{CURRENCY_LONG} -STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURRENCY_LONG} +STR_FINANCES_POSITIVE_INCOME :+{CURRENCY_LONG} STR_FINANCES_PROFIT :{WHITE}Κέρδος STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Υπόλοιπο Τραπέζης STR_FINANCES_OWN_FUNDS_TITLE :{WHITE}Τα χρήματα σου @@ -3806,7 +3895,7 @@ STR_FINANCES_BANK_BALANCE :{WHITE}{CURRENC STR_FINANCES_BORROW_BUTTON :{BLACK}Δανεισμός {CURRENCY_LONG} STR_FINANCES_BORROW_TOOLTIP :{BLACK}Αύξηση του ποσού του δανείου. Πατήστε Ctrl+Κλικ για να δανειστείτε όσο περισσότερο γίνεται STR_FINANCES_REPAY_BUTTON :{BLACK}Αποπληρωμή {CURRENCY_LONG} -STR_FINANCES_REPAY_TOOLTIP :{BLACK}Αποπληρωμή μέρους του δανείου. Με Ctrl+Κλικ αποπληρώνετε όσο περισσότερο γίνεται +STR_FINANCES_REPAY_TOOLTIP :{BLACK}Αποπληρωμή μέρους του δανείου. Πατήστε Ctrl+Κλικ για να αποπληρώσετε όσο περισσότερο γίνεται STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Υποδομή # Company view @@ -3840,6 +3929,8 @@ STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Λεπτ STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Προβολή λεπτομερούς μέτρησης υποδομών STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Δώστε χρήματα STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Δώστε χρήματα σε αυτή την εταρία +STR_COMPANY_VIEW_HOSTILE_TAKEOVER_BUTTON :{BLACK}Εχθρική εξαγορά +STR_COMPANY_VIEW_HOSTILE_TAKEOVER_TOOLTIP :{BLACK}Κάντε μια εχθρική εξαγορά αυτής της εταιρείας STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Νέο Πρόσωπο STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Επιλογή νέου προσώπου διευθυντή @@ -3867,6 +3958,8 @@ STR_COMPANY_INFRASTRUCTURE_VIEW_CANALS :{WHITE}Κανά STR_COMPANY_INFRASTRUCTURE_VIEW_STATION_SECT :{GOLD}Σταθμοί: STR_COMPANY_INFRASTRUCTURE_VIEW_STATIONS :{WHITE}Τετραγωνίδια σταθμού STR_COMPANY_INFRASTRUCTURE_VIEW_AIRPORTS :{WHITE}Αεροδρόμια +STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL_YEAR :{WHITE}{CURRENCY_LONG}/έτος +STR_COMPANY_INFRASTRUCTURE_VIEW_TOTAL_PERIOD :{WHITE}{CURRENCY_LONG}/περίοδο # Industry directory STR_INDUSTRY_DIRECTORY_CAPTION :{WHITE}Βιομηχανίες @@ -3926,6 +4019,9 @@ STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Στεί STR_VEHICLE_LIST_REPLACE_VEHICLES :Αντικατάσταση οχημάτων STR_VEHICLE_LIST_SEND_FOR_SERVICING :Στείλτε για Επισκευή STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Κέρδος αυτό το έτος: {CURRENCY_LONG} (προηγούμενο έτος: {CURRENCY_LONG}) +STR_VEHICLE_LIST_PROFIT_THIS_PERIOD_LAST_PERIOD :{TINY_FONT}{BLACK}Κέρδος αυτήν την περίοδο: {CURRENCY_LONG} (τελευταία περίοδος: {CURRENCY_LONG}) +STR_VEHICLE_LIST_CARGO :[{CARGO_LIST}] +STR_VEHICLE_LIST_NAME_AND_CARGO :{STRING} {STRING} STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Στείλτε στο Υπόστεγο STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Στείλτε στο Αμαξοστάσιο @@ -3969,7 +4065,9 @@ STR_GROUP_REMOVE_ALL_VEHICLES :Αφαίρεσ STR_GROUP_RENAME_CAPTION :{BLACK}Μετονομασία μίας ομάδας STR_GROUP_PROFIT_THIS_YEAR :Κέρδος τρέχοντος έτους: +STR_GROUP_PROFIT_THIS_PERIOD :Κέρδος τρέχουσας περιόδου: STR_GROUP_PROFIT_LAST_YEAR :Κέρδος προηγούμενου έτους +STR_GROUP_PROFIT_LAST_PERIOD :Κέρδος προηγούμενης περιόδου: STR_GROUP_OCCUPANCY :Τρέσουσα χρήση: STR_GROUP_OCCUPANCY_VALUE :{NUM}% @@ -3996,6 +4094,8 @@ STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Ταχύ STR_PURCHASE_INFO_SPEED :{BLACK}Ταχύτητα: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Ταχύτητα στον ωκεανό: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Ταχύτητα σε κανάλι/ποταμό: {GOLD}{VELOCITY} +STR_PURCHASE_INFO_RUNNINGCOST_YEAR :{BLACK}Τρέχον κόστος: {GOLD}{CURRENCY_LONG}/έτος +STR_PURCHASE_INFO_RUNNINGCOST_PERIOD :{BLACK}Τρέχον κόστος: {GOLD}{CURRENCY_LONG}/περίοδο STR_PURCHASE_INFO_CAPACITY :{BLACK}Χωρητικότητα: {GOLD}{CARGO_LONG} {STRING} STR_PURCHASE_INFO_REFITTABLE :(μετατρέψιμο) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Έτος σχεδίασης: {GOLD}{NUM}{BLACK} Χρόνος ζωής: {GOLD}{COMMA} χρόν{P ο ια} @@ -4345,6 +4445,7 @@ STR_VEHICLE_DETAILS_AIRCRAFT_RENAME :{BLACK}Ονομ STR_VEHICLE_INFO_AGE :{COMMA} χρόν{P ος ια} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} χρόν{P ος ια} ({COMMA}) STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Ηλικία: {LTBLUE}{STRING}{BLACK} Λειτουργικό Κόστος: {LTBLUE}{CURRENCY_LONG}/έτος +STR_VEHICLE_INFO_AGE_RUNNING_COST_PERIOD :{BLACK}Ηλικία: {LTBLUE}{STRING}{BLACK} Λειτουργικό Κόστος: {LTBLUE}{CURRENCY_LONG}/περίοδο STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Μέγ. ταχύτητα: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}Μεγ. ταχύτητα: {LTBLUE}{VELOCITY} {BLACK}Τύπος αεροσκάφους: {LTBLUE}{STRING} @@ -4367,6 +4468,10 @@ STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Έσοδ STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Διάστημα μεταξύ επισκευών: {LTBLUE}{COMMA}{NBSP}ημέρες{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Διάστημα μεταξύ επισκευών: {LTBLUE}{COMMA}{NBSP}λεπτά{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Διάστημα επισκευών: {LTBLUE}{COMMA}%{BLACK} {STRING} +STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Τελευταίο service: {LTBLUE}{DATE_LONG} +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Τελευταίο service: {LTBLUE}{NUM} λεπτ{P 0 ό ά} πριν +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Αύξηση του διαστήματος συντήρησης κατά 10 ημέρες. Ctrl+Click για αύξηση του διαστήματος συντήρησης κατά 5 ημέρες +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Αύξηση του διαστήματος συντήρησης κατά 5 λεπτά. Ctrl+Click για αύξηση του διαστήματος συντήρησης κατά 1 λεπτό STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :Μειώστε το διάστημα μεταξύ των σέρβις κατά 10 ημέρες. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 5 ημέρες STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :Μειώστε το διάστημα μεταξύ των σέρβις κατά 5 λεπτά. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 1 λεπτό STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :Μειώστε το διάστημα μεταξύ των σέρβις κατά 10 τοις εκατό. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 5 τοις εκατό. @@ -4650,6 +4755,9 @@ STR_TIMETABLE_SCHEDULED :{BLACK}Προγ STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Εναλλαγή μεταξύ αναμενόμενης και προγραμματισμένης STR_TIMETABLE_ARRIVAL_DATE :A: {COLOUR}{DATE_TINY} +STR_TIMETABLE_DEPARTURE_DATE :D: {COLOUR}{DATE_TINY} +STR_TIMETABLE_ARRIVAL_SECONDS_IN_FUTURE :A: {COLOUR}{COMMA} δευτ. +STR_TIMETABLE_DEPARTURE_SECONDS_IN_FUTURE :D: {COLOUR}{COMMA} δευτ. # Date window (for timetable) @@ -4677,7 +4785,7 @@ STR_AI_DEBUG_MATCH_CASE :{BLACK}Ταύτ STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Μεταβολή της ταύτισης μεγέθους όταν η γίνεται σύγκριση μιας καταχώρησης της ΑΙ με το αλφαριθμητικό παύσης STR_AI_DEBUG_CONTINUE :{BLACK}Συνέχεια STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Συνέχιση του παιχνιδιού και της λειτουργίας της AI -STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Εμφάνιση της εξόδου αποσφαλμάτωσης αυτής της AI +STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Εμφάνιση της εξόδου αποσφαλμάτωσης αυτής της AI. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης STR_AI_GAME_SCRIPT :{BLACK}Δέσμη Ενεργειών Παιχνιδιού STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Έλεγχος ιστορικού δέσμης ενεργειών παιχνιδιού @@ -4686,14 +4794,16 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Μια STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Το παράθυρο αποσφαλμάτωσης ΑΙ και δέσμης ενεργειών είναι διαθέσιμο μόνο για τον διακομιστή # AI configuration window -STR_AI_CONFIG_CAPTION_AI :{WHITE}Ρύθμιση ΤΝ -STR_AI_CONFIG_CAPTION_GAMESCRIPT :{WHITE}Ρύθμηση δέσμης ενεργειών παιχνιδιού +STR_AI_CONFIG_CAPTION_AI :{WHITE}Ρυθμίσεις ΤΝ +STR_AI_CONFIG_CAPTION_GAMESCRIPT :{WHITE}Ρυθμίσεις δέσμης ενεργειών παιχνιδιού STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Η Δέσμη Ενεργειών παιχνιδιού που θα φορτωθεί στο επόμενο παιχνίδι STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Οι AIs που θα φορτωθούν στο επόμενο παιχνίδι STR_AI_CONFIG_HUMAN_PLAYER :Ανθρώπινος παίκτης STR_AI_CONFIG_RANDOM_AI :Τυχαία AI STR_AI_CONFIG_NONE :{G=f}(καμία) +STR_AI_CONFIG_NAME_VERSION :{STRING} {YELLOW}v{NUM} STR_AI_CONFIG_MAX_COMPETITORS :{LTBLUE}Μέγιστος αρ. ανταγωνιστών: {ORANGE}{COMMA} +STR_AI_CONFIG_COMPETITORS_INTERVAL :{LTBLUE}Διάστημα μέχρι την εκκίνηση των ανταγωνιστών: {ORANGE}{COMMA} Λεπτ{P 0 ό ά} STR_AI_CONFIG_MOVE_UP :{BLACK}Μετακίνηση Πάνω STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}Μετακίνηση της επιλεγμένης AI πάνω στη λίστα @@ -4706,7 +4816,7 @@ STR_AI_CONFIG_AI :{SILVER}AI STR_AI_CONFIG_CHANGE_AI :{BLACK}Διάλεξε ΤΝ STR_AI_CONFIG_CHANGE_GAMESCRIPT :{BLACK}Δέσμη Ενεργειών -STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Φόρτωση άλλης δέσμης ενεργειών +STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Φόρτωση άλλης δέσμης ενεργειών. Ctrl+Click για εμφάνιση όλων των διαθέσιμων εκδόσεων STR_AI_CONFIG_CONFIGURE :{BLACK}Ρυθμίσεις STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Ρύθμιση των παραμέτρων της Δέσμης Ενεργειών @@ -4743,15 +4853,25 @@ STR_AI_SETTINGS_SETTING :{STRING}: {ORAN # Textfile window +STR_TEXTFILE_JUMPLIST :{WHITE}Πίνακας περιεχομένων +STR_TEXTFILE_JUMPLIST_TOOLTIP :{BLACK}Γρήγορη μετάβαση σε μια ενότητα του εμφανιζόμενου αρχείου μέσω αυτής της λίστας +STR_TEXTFILE_JUMPLIST_ITEM :{WHITE}{STRING} +STR_TEXTFILE_NAVBACK_TOOLTIP :{BLACK}Πάει προς τα πίσω στο ιστορικό πλοήγησης +STR_TEXTFILE_NAVFORWARD_TOOLTIP :{BLACK}Παει προς τα εμπρός στο ιστορικό πλοήγησης STR_TEXTFILE_WRAP_TEXT :{WHITE}Αναδίπλωση κειμένου STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Αναδίπλωση του κειμένου του παραθύρου ώστε να χωρά χωρίς να απαιτέιται κύλιση -STR_TEXTFILE_VIEW_README :{BLACK}Εμφάνιση readme +STR_TEXTFILE_VIEW_README :{BLACK}Readme +STR_TEXTFILE_VIEW_README_TOOLTIP :Προβολή αρχείου readme για αυτό το περιεχόμενο STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Ιστορικό αλλαγών +STR_TEXTFILE_VIEW_CHANGELOG_TOOLTIP :Προβολή αρχείου καταγραφής αλλαγών για αυτό το περιεχόμενο STR_TEXTFILE_VIEW_LICENCE :{BLACK}Άδεια +STR_TEXTFILE_VIEW_LICENCE_TOOLTIP :Προβολή άδειας για αυτό το περιεχόμενο ###length 5 STR_TEXTFILE_README_CAPTION :{WHITE}{STRING} readme του {STRING} STR_TEXTFILE_CHANGELOG_CAPTION :{G=m}{WHITE}{STRING} ιστορικό αλλαγών του {STRING} STR_TEXTFILE_LICENCE_CAPTION :{WHITE}{STRING} άδεια του {STRING} +STR_TEXTFILE_SURVEY_RESULT_CAPTION :{WHITE}Προεπισκόπηση του αποτελέσματος της έρευνας +STR_TEXTFILE_GAME_MANUAL_CAPTION :{WHITE}Έγγραφο OpenTTD '{STRING}' # Vehicle loading indicators @@ -5192,11 +5312,23 @@ STR_ERROR_TOO_FAR_FROM_PREVIOUS_DESTINATION :{WHITE}... πο STR_ERROR_AIRCRAFT_NOT_ENOUGH_RANGE :{WHITE}... δεν επαρκεί η εμβέλεια του αεροσκάφους # Extra messages which go on the third line of errors, explaining why orders failed +STR_ERROR_NO_RAIL_STATION :{WHITE}Δεν υπάρχει σταθμός τραίνου +STR_ERROR_NO_BUS_STATION :{WHITE}Δεν υπάρχει σταθμός λεωφορείων +STR_ERROR_NO_TRUCK_STATION :{WHITE}Δεν υπάρχει σταθμός φορτηγών +STR_ERROR_NO_DOCK :{WHITE}Δεν υπάρχει λιμάνι +STR_ERROR_NO_AIRPORT :{WHITE}Δεν υπάρχει αεροδρόμιο/ελικοδρόμιο +STR_ERROR_NO_STOP_COMPATIBLE_ROAD_TYPE :{WHITE}Δεν υπάρχουν στάσεις με συμβατό τύπο δρόμου +STR_ERROR_NO_STOP_COMPATIBLE_TRAM_TYPE :{WHITE}Δεν υπάρχουν στάσεις με συμβατό τύπο τραμ +STR_ERROR_NO_STOP_ARTICULATED_VEHICLE :{WHITE}Δεν υπάρχουν στάσεις που να είναι κατάλληλες για αρθρωτά οδικά οχήματα.{}Τα αρθρωτά οδικά οχήματα απαιτούν μια στάση-πέρασμα (drive-through) και όχι κλειστή στάση +STR_ERROR_NO_RAIL_WAYPOINT :{WHITE}Δεν υπάρχει σιδηροδρομικό σημείο +STR_ERROR_NO_BUOY :{WHITE}Δεν υπάρχει σημαδούρα # Timetable related errors STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Δεν μπορεί να δρομολογηθεί το όχημα... STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Τα οχήματα μπορούν να περιμένουν μόνο στους σταθμούς STR_ERROR_TIMETABLE_NOT_STOPPING_HERE :{WHITE}Αυτό το όχημα δεν σταματάει σε αυτόν τον σταθμό +STR_ERROR_TIMETABLE_INCOMPLETE :{WHITE}... το χρονοδιάγραμμα δρομολογίων είναι ελλιπές +STR_ERROR_TIMETABLE_NOT_STARTED :{WHITE}... το χρονοδιάγραμμα δρομολογίων δεν έχει ξεκινήσει ακόμα # Sign related errors STR_ERROR_TOO_MANY_SIGNS :{WHITE}... πάρα πολλά σήματα @@ -5686,17 +5818,21 @@ STR_CURRENCY_SHORT_GIGA :{NBSP}Δις STR_CURRENCY_SHORT_TERA :{NBSP}tn STR_JUST_CARGO :{CARGO_LONG} +STR_JUST_RIGHT_ARROW :{RIGHT_ARROW} STR_JUST_CHECKMARK :{CHECKMARK} STR_JUST_COMMA :{COMMA} STR_JUST_CURRENCY_SHORT :{CURRENCY_SHORT} STR_JUST_CURRENCY_LONG :{CURRENCY_LONG} STR_JUST_CARGO_LIST :{CARGO_LIST} +STR_JUST_DECIMAL :{DECIMAL} STR_JUST_INT :{NUM} STR_JUST_DATE_TINY :{DATE_TINY} STR_JUST_DATE_SHORT :{DATE_SHORT} STR_JUST_DATE_LONG :{DATE_LONG} STR_JUST_DATE_ISO :{DATE_ISO} STR_JUST_STRING :{STRING} +STR_JUST_STRING1 :{STRING} +STR_JUST_STRING2 :{STRING} STR_JUST_STRING_STRING :{STRING}{STRING} STR_JUST_RAW_STRING :{STRING} STR_JUST_BIG_RAW_STRING :{BIG_FONT}{STRING} diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index c6fca58bb0..6a34cdf651 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -2575,6 +2575,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}O seu no STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}O seu nome do seu servidor não foi definido. O nome pode ser definido no topo da janela de Multi-jogador STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}A revisão deste cliente não condiz com a revisão do servidor STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Palavra-chave incorrecta +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Você não está na lista de clientes permitidos STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Servidor cheio STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Foi banido deste servidor STR_NETWORK_ERROR_KICKED :{WHITE}Você foi expulso do jogo @@ -2602,6 +2603,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :foi recebido um STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :revisão incorrecta STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nome já está a ser utilizado STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :palavra-chave incorrecta +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :não está na lista de permissões STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :ID da empresa errado na aplicação de rede STR_NETWORK_ERROR_CLIENT_KICKED :avisado pelo servidor STR_NETWORK_ERROR_CLIENT_CHEATER :estava a tentar usar batota @@ -4448,10 +4450,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacida STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Créditos de Transferência: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}dias{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}minutos{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}{NBSP}minuto{P "" s}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervalo de manutenção: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Última manutenção: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Última manutenção: {LTBLUE}{NUM} minutos atrás +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Última manutenção: {LTBLUE}{NUM} minuto{P "" s} atrás STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Aumentar o intervalo de manutenção em 10 dias. Ctrl+Clique para aumentar o intervalo de manutenção em 5 dias STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Aumentar o intervalo de manutenção em 5 minutos. Ctrl+Clique para aumentar o intervalo de manutenção em 1 minuto STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Aumentar o intervalo de manutenção em 10%. Ctrl+Clique para aumentar o intervalo de manutenção em 5% @@ -4994,7 +4996,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Não é STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Não é possível construir sede da empresa... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Não é possível construir localidades +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Não é possível construir localidades... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Não é possível renomear localidade... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Não é possível construir uma localidade aqui... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Não é possível expandir localidade... diff --git a/src/lang/russian.txt b/src/lang/russian.txt index a9bd38bb6a..e517458adf 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -4636,10 +4636,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ёмко STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Выручка перевозки: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}ТО каждые {LTBLUE}{COMMA}{NBSP}дней{BLACK}. {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}ТО каждые {LTBLUE}{COMMA}{NBSP}минут{BLACK}. {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}ТО кажд{P 0 ую ые ые} {LTBLUE}{COMMA}{NBSP}минут{P у ы ""}{BLACK}. {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}ТО при сниж. на {LTBLUE}{COMMA}%{BLACK}. {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :ТО: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :ТО: {LTBLUE}{NUM}{NBSP}мин. назад +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :ТО: {LTBLUE}{NUM} мин. назад STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Увеличить интервал ТО на 10{NBSP}дней. Ctrl+щелчок{NBSP}- увеличить на 5{NBSP}дней. STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Увеличить интервал ТО на 5{NBSP}минут. Ctrl+щелчок{NBSP}- увеличить на 1{NBSP}минуту. STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Увеличить интервал ТО на 10%. Ctrl+щелчок{NBSP}- увеличить на 5%. @@ -5459,7 +5459,7 @@ STR_ERROR_CAN_T_SELL_SHIP :{WHITE}Нево STR_ERROR_CAN_T_SELL_AIRCRAFT :{WHITE}Невозможно продать самолёт... STR_ERROR_TOO_MANY_VEHICLES_IN_GAME :{WHITE}Слишком много транспорта в игре -STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Невозможно изменить частоту тех. обслуживания... +STR_ERROR_CAN_T_CHANGE_SERVICING :{WHITE}Невозможно изменить частоту технического обслуживания... STR_ERROR_VEHICLE_IS_DESTROYED :{WHITE}... транспортное средство уничтожено diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 745aded6e7..f6bed665f7 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -1359,7 +1359,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :汽车斜坡坡 STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :设置对汽车而言,一格斜坡的坡度大小。数值越高,坡度越大,汽车越难爬上斜坡。 STR_CONFIG_SETTING_FORBID_90_DEG :禁止列车直角转向:{STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :当相邻的两个方块上有一条水平轨道和一条垂直轨道相接时,就会形成一个90度的转角,火车在穿越此方块边界时将转弯90度,而不是像其他形式的轨道转弯时形成的45度转角。如果打开此选项,那么火车将无法在这样的转角转弯 +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 :启用时允许玩家用 键操作以合并不相邻的站台与车站。 @@ -1501,7 +1501,7 @@ STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :日历 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :挂钟 STR_CONFIG_SETTING_MINUTES_PER_YEAR :一年分钟数:{STRING} -STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :选择游戏内一自然年的现实时间长度,默认为12分钟。设置为0则日期不会变化。此设定不会影响游戏的经济模拟系统,而且仅在启用挂钟计时模式时生效 +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :选择在挂钟模式下一年所对应的现实时间长度。默认为 12 分钟。设置为 0 则日期不会变化。此设定不会影响游戏的经济模拟系统,而且仅在启用挂钟计时模式时生效 STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special @@ -1529,7 +1529,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :错误信息持 STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :红色窗口显示错误信息的持续时间,在这个时间内一些紧急的错误信息不会自动关闭,必须手动关闭 STR_CONFIG_SETTING_HOVER_DELAY :显示提示信息:{STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :此设置决定鼠标停留在图标、按键或功能时显示提示信息的时间。如果此设置为 0,您就必须按鼠标右键来显示图标、按键或功能的提示信息 +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :设定将鼠标悬停在某些按钮上时显示工具使用提示前的延迟时间。选项设置为 0 时则必须按鼠标右键以显示工具提示 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :停留 {COMMA} 毫秒 ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :右键点击 @@ -1575,7 +1575,7 @@ STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :控制热带气 STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :地面粗糙度:{STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :选择在地图上的山丘密度和形状。光滑的地形会包含较少且较为广阔的山丘;粗糙的地形会包含更多,但是更小一些的山丘 +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :选择在地图上的山丘密度和形态。光滑的地形会包含较少且较为广阔的山丘;粗糙的地形则会包含更多且更小的山丘 ###length 4 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :非常光滑 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :光滑 @@ -1754,7 +1754,7 @@ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :建造铁路时 STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :建造铁路时自动移除路过的信号灯。注意,这可能导致火车事故。 STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :快进速度上限:{STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :限制快进时的最大速度。0 = 无限制(即电脑性能允许的最快速度)。低于 100% 的值将使游戏变慢。上限取决于您计算机的配置,并可能随着游戏情况浮动 +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :限制快进时的最大速度。0 = 无限制(即电脑性能允许的最快速度)。低于 100% 的值将使游戏变慢。游戏速度上限取决于计算机的配置,并可能随游戏当前状态浮动 STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% 正常游戏速度 ###setting-zero-is-special STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :无限制(在您计算机允许的范围内) @@ -1966,7 +1966,7 @@ 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_HELPTEXT :城镇建筑的客货产出与人口的关系。{}平方增长:两倍大小的城镇生产四倍的旅客。{}线性增长:两倍大小的城镇生产两倍的旅客 ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :四倍(原版) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :线性 @@ -2574,7 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}你没 STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}你没有设置服务器名。玩家名可在联机游戏窗口的上面设置 STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}此客户端版本与服务器端不匹配 STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}密码错误 -STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}你不在白名单所允许的客户端范围内 +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}你不在白名单内 STR_NETWORK_ERROR_SERVER_FULL :{WHITE}服务器已经满员 STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}您已被该服务器封禁 STR_NETWORK_ERROR_KICKED :{WHITE}您已被踢出服务器 @@ -2602,7 +2602,7 @@ 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_NOT_ON_ALLOW_LIST :不在允许列表内 +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :不在白名单内 STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :错误的公司ID于DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :被服务器踢出 STR_NETWORK_ERROR_CLIENT_CHEATER :正在尝试作弊 @@ -4449,7 +4449,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}运载 STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}联运账面收入:{LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}每 {LTBLUE}{COMMA}{NBSP}天进行维护{BLACK} 上次维护日期:{LTBLUE}{STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}维修间隔:{LTBLUE}{COMMA}{NBSP}分钟{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}维修间隔:{LTBLUE}{COMMA}{NBSP}分钟{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}维护间隔:{LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :最近保养:{LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :最近保养:{LTBLUE}{NUM}{NBSP}分钟前 diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 9502d5a9ff..502d461854 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -1968,7 +1968,7 @@ STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Інтерва STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Налаштування інтервалу техогляду для нового повітряного транспорту (встановлений інтервал може бути змінено окремо для кожного транспортного засобу в його інтерфейсі). STR_CONFIG_SETTING_SERVINT_SHIPS :Інтервал техогляду водного транспорту: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Налаштування інтервалу техогляду для нового водного транспорту (встановлений інтервал може бути змінено окремо для кожного транспортного засобу в його інтерфейсі). -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P 0 "ень" "ні" "нів"}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}д{P 0 "ень" "ні" "нів"}/хвилин{P 0 а и ""}/% ###setting-zero-is-special STR_CONFIG_SETTING_SERVINT_DISABLED :Відключено @@ -2410,7 +2410,7 @@ STR_LIVERY_SHIP_GROUP_EMPTY :Групи ко STR_LIVERY_AIRCRAFT_GROUP_EMPTY :Не налаштовано груп повітряного транспорту ###length 23 -STR_LIVERY_DEFAULT :Стандартний колір +STR_LIVERY_DEFAULT :Базовий колір STR_LIVERY_STEAM :Паровоз STR_LIVERY_DIESEL :Тепловоз STR_LIVERY_ELECTRIC :Електровоз @@ -2930,7 +2930,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Пере STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будувати станцію. Ctrl дозволяє об'єднання станцій. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати залізничні сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка мишою будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки чи сигналу{}Ctrl+клац мишою вмикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати залізничний міст. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будувати тунель. Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будування тунелю. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будувати/демонтувати колію, сигнали, точки маршруту і станції. Утримання Ctrl також демонтує колію з точок маршрутів і станцій STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Модернізувати колію. Утримуйте Shift для показу витрат на модернізацію @@ -3009,7 +3009,7 @@ STR_BRIDGE_TUBULAR_SILICON :Трубчас STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Автомобільне будівництво STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Будівництво трамвайних колій STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Будувати дорогу. Ctrl+клац для знесення доріг. Утримуйте Shift для показу тільки витрат -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Будувати трамвайну колію. Ctrl переключає побудову/знесення для будівництва трамвайної колії. Утримуйте Shift для показу витрат на будівництво +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Будувати трамвайну колію. Ctrl+клац для знесення трамвайної колії. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Будувати дорогу в режимі Автобудування. Ctrl+клац для знесення доріг. Утримуйте Shift для показу тільки витрат STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Будувати трамвайну колію в режимі Автобудування. Ctrl+клац для знесення колій. Утримуйте Shift для показу тільки витрат STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Будувати гараж (для будівництва і обслуговування автомобілів). Утримуйте Shift для показу витрат на будівництво @@ -3020,9 +3020,9 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Буду STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Побудувати вантажну трамвайну станцію. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу тільки витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Вкл./відкл. односторонні дороги STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Будувати дорожній міст. Утримуйте Shift для показу тільки витрат на придбання -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Побудувати трамвайний міст. Утримуйте Shift для показу витрат на придбання +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Побудувати трамвайний міст. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Будувати дорожній тунель. Утримуйте Shift для показу тільки витрат на придбання -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Побудувати трамвайний тунель. Утримуйте Shift для показу витрат на придбання +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Будування трамвайного тунелю. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Будувати/зруйнувати дорогу STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Будувати/демонтувати колію STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Модернізувати дорогу. Утримуйте Shift для показу витрат на модернізацію @@ -3341,7 +3341,7 @@ 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_SPEED_FACTOR_TOOLTIP :{BLACK}Швидкість перебігу гри в поточний момент, порівняно з очікуваною швидкістю при звичайному перебігу STR_FRAMERATE_CURRENT :{WHITE}Зараз STR_FRAMERATE_AVERAGE :{WHITE}Середнє STR_FRAMERATE_MEMORYUSE :{WHITE}Пам'ять @@ -3457,7 +3457,7 @@ STR_MAPGEN_GENERATE_TOOLTIP :{BLACK}Ство STR_MAPGEN_NEWGRF_SETTINGS :{BLACK}Налаштування NewGRF STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Показати налаштування NewGRF STR_MAPGEN_AI_SETTINGS :{BLACK}Налаштування ШІ -STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Показати усі налаштування +STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Показати налаштування ШІ STR_MAPGEN_GS_SETTINGS :{BLACK}Налаштування скрипту гри STR_MAPGEN_GS_SETTINGS_TOOLTIP :{BLACK}Показати налаштування ігрового скрипту @@ -3822,7 +3822,7 @@ STR_GOALS_TEXT :{ORANGE}{STRING STR_GOALS_NONE :{ORANGE}- нема - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} -STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Клац мишею на цілі (меті) відобразить по центру виробництва/місто/клітинку у головному вікні. Ctrl+клац мишею відкриє міні-вікно +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Клац мишею на цілі відобразить по центру головного вікна виробництво/місто/клітинку. Ctrl+клац мишею відкриє нове вікно з видом на підприємство/місто/клітинку # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}Питання diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index e2f8d89799..b23f17c21b 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -4449,7 +4449,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Sức ch STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Cước trung chuyển: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Tần suất bảo trì: {LTBLUE}{COMMA}{NBSP}ngày{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Tần suất phục vụ: {LTBLUE}{COMMA}{NBSP}phút{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Tần suất phục vụ: {LTBLUE}{COMMA}{NBSP}phút{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Tần suất bảo trì: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Lần bảo trì gần nhất: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Lần bảo trì gần nhất: {LTBLUE}{NUM} phút trước From c01bf06ee17cbd2442f8a662226742c0fe3762fb Mon Sep 17 00:00:00 2001 From: Rubidium Date: Sat, 23 Mar 2024 22:01:57 +0100 Subject: [PATCH 30/70] Codefix: some minor errors in tcp-game protocol documentation --- src/network/core/tcp_game.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/network/core/tcp_game.h b/src/network/core/tcp_game.h index cf1b8b92b2..a381f6aa3b 100644 --- a/src/network/core/tcp_game.h +++ b/src/network/core/tcp_game.h @@ -211,14 +211,14 @@ protected: /** * The client tells the server about the identity of the client: * string Name of the client (max NETWORK_NAME_LENGTH). - * uint8_t ID of the company to play as (1..MAX_COMPANIES). + * uint8_t ID of the company to play as (1..MAX_COMPANIES, or COMPANY_SPECTATOR). * @param p The packet that was just received. */ virtual NetworkRecvStatus Receive_CLIENT_IDENTIFY(Packet &p); /** * Indication to the client that it needs to authenticate: - * bool Whether to use the password in the key exchange. + * uint8_t The \c NetworkAuthenticationMethod to use. * 32 * uint8_t Public key of the server. * 24 * uint8_t Nonce for the key exchange. * @param p The packet that was just received. @@ -236,8 +236,8 @@ protected: /** * Send the response to the authentication request: * 32 * uint8_t Public key of the client. - * 8 * uint8_t Random message that got encoded and signed. * 16 * uint8_t Message authentication code. + * 8 * uint8_t Random message that got encoded and signed. * @param p The packet that was just received. */ virtual NetworkRecvStatus Receive_CLIENT_AUTH_RESPONSE(Packet &p); @@ -267,7 +267,6 @@ protected: /** * Request the map from the server. - * uint32_t NewGRF version (release versions of OpenTTD only). * @param p The packet that was just received. */ virtual NetworkRecvStatus Receive_CLIENT_GETMAP(Packet &p); From d09b5aaebafe1ef89195851a532f3f6d502437d6 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Sun, 25 Feb 2024 19:42:28 +0100 Subject: [PATCH 31/70] Codechange: use int32_t instead of uint16_t for scroll bar position/size/capacity --- src/airport_gui.cpp | 4 ++-- src/depot_gui.cpp | 4 ++-- src/framerate_gui.cpp | 10 ++++----- src/newgrf_debug_gui.cpp | 4 ++-- src/newgrf_gui.cpp | 18 ++++++++-------- src/order_gui.cpp | 4 ++-- src/settings_gui.cpp | 4 ++-- src/story_gui.cpp | 4 ++-- src/timetable_gui.cpp | 4 ++-- src/widget.cpp | 8 +++---- src/widget_type.h | 46 ++++++++++++++++++++++------------------ 11 files changed, 57 insertions(+), 53 deletions(-) diff --git a/src/airport_gui.cpp b/src/airport_gui.cpp index 6f942428f9..e0e1adf461 100644 --- a/src/airport_gui.cpp +++ b/src/airport_gui.cpp @@ -495,8 +495,8 @@ public: break; case WID_AP_AIRPORT_LIST: { - int num_clicked = this->vscroll->GetScrolledRowFromWidget(pt.y, this, widget, 0, this->line_height); - if (num_clicked == INT_MAX) break; + int32_t num_clicked = this->vscroll->GetScrolledRowFromWidget(pt.y, this, widget, 0, this->line_height); + if (num_clicked == INT32_MAX) break; const AirportSpec *as = AirportClass::Get(_selected_airport_class)->GetSpec(num_clicked); if (as->IsAvailable()) this->SelectOtherAirport(num_clicked); break; diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp index a630bf26e4..ec1595460a 100644 --- a/src/depot_gui.cpp +++ b/src/depot_gui.cpp @@ -459,10 +459,10 @@ struct DepotWindow : Window { } ym = (y - matrix_widget->pos_y) % this->resize.step_height; - int row = this->vscroll->GetScrolledRowFromWidget(y, this, WID_D_MATRIX); + int32_t row = this->vscroll->GetScrolledRowFromWidget(y, this, WID_D_MATRIX); uint pos = (row * this->num_columns) + xt; - if (row == INT_MAX || this->vehicle_list.size() + this->wagon_list.size() <= pos) { + if (row == INT32_MAX || this->vehicle_list.size() + this->wagon_list.size() <= pos) { /* Clicking on 'line' / 'block' without a vehicle */ if (this->type == VEH_TRAIN) { /* End the dragging */ diff --git a/src/framerate_gui.cpp b/src/framerate_gui.cpp index 6ffacd73bd..7e32bd611b 100644 --- a/src/framerate_gui.cpp +++ b/src/framerate_gui.cpp @@ -601,7 +601,7 @@ struct FramerateWindow : Window { void DrawElementTimesColumn(const Rect &r, StringID heading_str, const CachedDecimal *values) const { const Scrollbar *sb = this->GetScrollbar(WID_FRW_SCROLLBAR); - uint16_t skip = sb->GetPosition(); + int32_t skip = sb->GetPosition(); int drawable = this->num_displayed; int y = r.top; DrawString(r.left, r.right, y, heading_str, TC_FROMSTRING, SA_CENTER, true); @@ -623,7 +623,7 @@ struct FramerateWindow : Window { void DrawElementAllocationsColumn(const Rect &r) const { const Scrollbar *sb = this->GetScrollbar(WID_FRW_SCROLLBAR); - uint16_t skip = sb->GetPosition(); + int32_t skip = sb->GetPosition(); int drawable = this->num_displayed; int y = r.top; DrawString(r.left, r.right, y, STR_FRAMERATE_MEMORYUSE, TC_FROMSTRING, SA_CENTER, true); @@ -657,7 +657,7 @@ struct FramerateWindow : Window { case WID_FRW_TIMES_NAMES: { /* Render a column of titles for performance element names */ const Scrollbar *sb = this->GetScrollbar(WID_FRW_SCROLLBAR); - uint16_t skip = sb->GetPosition(); + int32_t skip = sb->GetPosition(); int drawable = this->num_displayed; int y = r.top + GetCharacterHeight(FS_NORMAL) + WidgetDimensions::scaled.vsep_normal; // first line contains headings in the value columns for (PerformanceElement e : DISPLAY_ORDER_PFE) { @@ -701,8 +701,8 @@ struct FramerateWindow : Window { case WID_FRW_TIMES_AVERAGE: { /* Open time graph windows when clicking detail measurement lines */ const Scrollbar *sb = this->GetScrollbar(WID_FRW_SCROLLBAR); - int line = sb->GetScrolledRowFromWidget(pt.y, this, widget, WidgetDimensions::scaled.vsep_normal + GetCharacterHeight(FS_NORMAL)); - if (line != INT_MAX) { + int32_t line = sb->GetScrolledRowFromWidget(pt.y, this, widget, WidgetDimensions::scaled.vsep_normal + GetCharacterHeight(FS_NORMAL)); + if (line != INT32_MAX) { line++; /* Find the visible line that was clicked */ for (PerformanceElement e : DISPLAY_ORDER_PFE) { diff --git a/src/newgrf_debug_gui.cpp b/src/newgrf_debug_gui.cpp index b5135b552c..e470e55c71 100644 --- a/src/newgrf_debug_gui.cpp +++ b/src/newgrf_debug_gui.cpp @@ -589,8 +589,8 @@ struct NewGRFInspectWindow : Window { if (nif->variables == nullptr) return; /* Get the line, make sure it's within the boundaries. */ - int line = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_NGRFI_MAINPANEL, WidgetDimensions::scaled.frametext.top); - if (line == INT_MAX) return; + int32_t line = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_NGRFI_MAINPANEL, WidgetDimensions::scaled.frametext.top); + if (line == INT32_MAX) return; /* Find the variable related to the line */ for (const NIVariable *niv = nif->variables; niv->name != nullptr; niv++, line--) { diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index 695cad546a..f534996a6b 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -146,11 +146,11 @@ static void ShowNewGRFInfo(const GRFConfig *c, const Rect &r, bool show_params) struct NewGRFParametersWindow : public Window { static GRFParameterInfo dummy_parameter_info; ///< Dummy info in case a newgrf didn't provide info about some parameter. GRFConfig *grf_config; ///< Set the parameters of this GRFConfig. - uint clicked_button; ///< The row in which a button was clicked or UINT_MAX. + int32_t clicked_button; ///< The row in which a button was clicked or INT_MAX when none is selected. bool clicked_increase; ///< True if the increase button was clicked, false for the decrease button. bool clicked_dropdown; ///< Whether the dropdown is open. bool closing_dropdown; ///< True, if the dropdown list is currently closing. - uint clicked_row; ///< The selected parameter + int32_t clicked_row; ///< The selected parameter, or INT_MAX when none is selected. int line_height; ///< Height of a row in the matrix widget. Scrollbar *vscroll; bool action14present; ///< True if action14 information is present. @@ -158,10 +158,10 @@ struct NewGRFParametersWindow : public Window { NewGRFParametersWindow(WindowDesc *desc, bool is_baseset, GRFConfig *c, bool editable) : Window(desc), grf_config(c), - clicked_button(UINT_MAX), + clicked_button(INT32_MAX), clicked_dropdown(false), closing_dropdown(false), - clicked_row(UINT_MAX), + clicked_row(INT32_MAX), editable(editable) { this->action14present = (c->num_valid_params != c->param.size() || !c->param_info.empty()); @@ -282,7 +282,7 @@ struct NewGRFParametersWindow : public Window { int button_y_offset = (this->line_height - SETTING_BUTTON_HEIGHT) / 2; int text_y_offset = (this->line_height - GetCharacterHeight(FS_NORMAL)) / 2; - for (uint i = this->vscroll->GetPosition(); this->vscroll->IsVisible(i) && i < this->vscroll->GetCount(); i++) { + for (int32_t i = this->vscroll->GetPosition(); this->vscroll->IsVisible(i) && i < this->vscroll->GetCount(); i++) { GRFParameterInfo &par_info = this->GetParameterInfo(i); uint32_t current_value = par_info.GetValue(this->grf_config); bool selected = (i == this->clicked_row); @@ -354,7 +354,7 @@ struct NewGRFParametersWindow : public Window { case WID_NP_BACKGROUND: { if (!this->editable) break; - uint num = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_NP_BACKGROUND); + int32_t num = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_NP_BACKGROUND); if (num >= this->vscroll->GetCount()) break; if (this->clicked_row != num) { @@ -493,15 +493,15 @@ struct NewGRFParametersWindow : public Window { } this->vscroll->SetCount(this->action14present ? this->grf_config->num_valid_params : this->grf_config->num_params); - if (this->clicked_row != UINT_MAX && this->clicked_row >= this->vscroll->GetCount()) { - this->clicked_row = UINT_MAX; + if (this->clicked_row != INT32_MAX && this->clicked_row >= this->vscroll->GetCount()) { + this->clicked_row = INT32_MAX; this->CloseChildWindows(WC_QUERY_STRING); } } /** When reset, unclick the button after a small timeout. */ TimeoutTimer unclick_timeout = {std::chrono::milliseconds(150), [this]() { - this->clicked_button = UINT_MAX; + this->clicked_button = INT32_MAX; this->SetDirty(); }}; }; diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 84d7f3e443..137fd1b76c 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -600,8 +600,8 @@ private: */ VehicleOrderID GetOrderFromPt(int y) { - int sel = this->vscroll->GetScrolledRowFromWidget(y, this, WID_O_ORDER_LIST, WidgetDimensions::scaled.framerect.top); - if (sel == INT_MAX) return INVALID_VEH_ORDER_ID; + int32_t sel = this->vscroll->GetScrolledRowFromWidget(y, this, WID_O_ORDER_LIST, WidgetDimensions::scaled.framerect.top); + if (sel == INT32_MAX) return INVALID_VEH_ORDER_ID; /* One past the orders is the 'End of Orders' line. */ assert(IsInsideBS(sel, 0, vehicle->GetNumOrders() + 1)); return sel; diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 4caed877d7..29f10e21f6 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -2560,8 +2560,8 @@ struct GameSettingsWindow : Window { if (widget != WID_GS_OPTIONSPANEL) return; - uint btn = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_GS_OPTIONSPANEL, WidgetDimensions::scaled.framerect.top); - if (btn == INT_MAX || (int)btn < this->warn_lines) return; + int32_t btn = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_GS_OPTIONSPANEL, WidgetDimensions::scaled.framerect.top); + if (btn == INT32_MAX || btn < this->warn_lines) return; btn -= this->warn_lines; uint cur_row = 0; diff --git a/src/story_gui.cpp b/src/story_gui.cpp index 05d6bc44cc..f3ec75a53a 100644 --- a/src/story_gui.cpp +++ b/src/story_gui.cpp @@ -495,12 +495,12 @@ protected: * Get the total height of the content displayed in this window. * @return the height in pixels */ - uint GetContentHeight() + int32_t GetContentHeight() { this->EnsureStoryPageElementLayout(); /* The largest bottom coordinate of any element is the height of the content */ - uint max_y = std::accumulate(this->layout_cache.begin(), this->layout_cache.end(), 0, [](uint max_y, const LayoutCacheElement &ce) -> uint { return std::max(max_y, ce.bounds.bottom); }); + int32_t max_y = std::accumulate(this->layout_cache.begin(), this->layout_cache.end(), 0, [](int32_t max_y, const LayoutCacheElement &ce) -> int32_t { return std::max(max_y, ce.bounds.bottom); }); return max_y; } diff --git a/src/timetable_gui.cpp b/src/timetable_gui.cpp index 5f4f99758d..d55b7dc711 100644 --- a/src/timetable_gui.cpp +++ b/src/timetable_gui.cpp @@ -277,8 +277,8 @@ struct TimetableWindow : Window { int GetOrderFromTimetableWndPt(int y, [[maybe_unused]] const Vehicle *v) { - int sel = this->vscroll->GetScrolledRowFromWidget(y, this, WID_VT_TIMETABLE_PANEL, WidgetDimensions::scaled.framerect.top); - if (sel == INT_MAX) return INVALID_ORDER; + int32_t sel = this->vscroll->GetScrolledRowFromWidget(y, this, WID_VT_TIMETABLE_PANEL, WidgetDimensions::scaled.framerect.top); + if (sel == INT32_MAX) return INVALID_ORDER; assert(IsInsideBS(sel, 0, v->GetNumOrders() * 2)); return sel; } diff --git a/src/widget.cpp b/src/widget.cpp index 0e4f8cda46..dd91856b05 100644 --- a/src/widget.cpp +++ b/src/widget.cpp @@ -2262,13 +2262,13 @@ void NWidgetViewport::UpdateViewportCoordinates(Window *w) * @param widget Widget number of the widget clicked in. * @param padding Amount of empty space between the widget edge and the top of the first row. Default value is \c 0. * @param line_height Height of a single row. A negative value means using the vertical resize step of the widget. - * @return Row number clicked at. If clicked at a wrong position, #INT_MAX is returned. + * @return Row number clicked at. If clicked at a wrong position, #Scrollbar::npos is returned. */ -int Scrollbar::GetScrolledRowFromWidget(int clickpos, const Window * const w, WidgetID widget, int padding, int line_height) const +Scrollbar::size_type Scrollbar::GetScrolledRowFromWidget(int clickpos, const Window * const w, WidgetID widget, int padding, int line_height) const { - uint pos = w->GetRowFromWidget(clickpos, widget, padding, line_height); + int pos = w->GetRowFromWidget(clickpos, widget, padding, line_height); if (pos != INT_MAX) pos += this->GetPosition(); - return (pos >= this->GetCount()) ? INT_MAX : pos; + return (pos < 0 || pos >= this->GetCount()) ? Scrollbar::npos : pos; } /** diff --git a/src/widget_type.h b/src/widget_type.h index b7a8393fca..fad56477e3 100644 --- a/src/widget_type.h +++ b/src/widget_type.h @@ -678,12 +678,16 @@ public: * Scrollbar data structure */ class Scrollbar { +public: + using size_type = int32_t; + static constexpr size_type max_size_type = std::numeric_limits::max(); + static constexpr size_type npos = max_size_type; private: const bool is_vertical; ///< Scrollbar has vertical orientation. - uint16_t count; ///< Number of elements in the list. - uint16_t cap; ///< Number of visible elements of the scroll bar. - uint16_t pos; ///< Index of first visible item of the list. - uint16_t stepsize; ///< Distance to scroll, when pressing the buttons or using the wheel. + size_type count; ///< Number of elements in the list. + size_type cap; ///< Number of visible elements of the scroll bar. + size_type pos; ///< Index of first visible item of the list. + size_type stepsize; ///< Distance to scroll, when pressing the buttons or using the wheel. public: /** Stepping sizes when scrolling */ @@ -701,7 +705,7 @@ public: * Gets the number of elements in the list * @return the number of elements */ - inline uint16_t GetCount() const + inline size_type GetCount() const { return this->count; } @@ -710,7 +714,7 @@ public: * Gets the number of visible elements of the scrollbar * @return the number of visible elements */ - inline uint16_t GetCapacity() const + inline size_type GetCapacity() const { return this->cap; } @@ -719,7 +723,7 @@ public: * Gets the position of the first visible element in the list * @return the position of the element */ - inline uint16_t GetPosition() const + inline size_type GetPosition() const { return this->pos; } @@ -729,7 +733,7 @@ public: * @param item to check * @return true iff the item is visible */ - inline bool IsVisible(uint16_t item) const + inline bool IsVisible(size_type item) const { return IsInsideBS(item, this->GetPosition(), this->GetCapacity()); } @@ -751,7 +755,7 @@ public: { assert(stepsize > 0); - this->stepsize = ClampTo(stepsize); + this->stepsize = ClampTo(stepsize); } /** @@ -761,9 +765,9 @@ public: */ void SetCount(size_t num) { - assert(num <= MAX_UVALUE(uint16_t)); + assert(num < Scrollbar::max_size_type); - this->count = ClampTo(num); + this->count = ClampTo(num); /* Ensure position is within bounds */ this->SetPosition(this->pos); } @@ -775,9 +779,9 @@ public: */ void SetCapacity(size_t capacity) { - assert(capacity <= MAX_UVALUE(uint16_t)); + assert(capacity < Scrollbar::max_size_type); - this->cap = ClampTo(capacity); + this->cap = ClampTo(capacity); /* Ensure position is within bounds */ this->SetPosition(this->pos); } @@ -789,9 +793,9 @@ public: * @param position the position of the element * @return true iff the position has changed */ - bool SetPosition(int position) + bool SetPosition(size_type position) { - uint16_t old_pos = this->pos; + size_type old_pos = this->pos; this->pos = Clamp(position, 0, std::max(this->count - this->cap, 0)); return this->pos != old_pos; } @@ -820,7 +824,7 @@ public: * the window depending on where in the list it was. * @param position the position to scroll towards. */ - void ScrollTowards(int position) + void ScrollTowards(size_type position) { if (position < this->GetPosition()) { /* scroll up to the item */ @@ -831,7 +835,7 @@ public: } } - int GetScrolledRowFromWidget(int clickpos, const Window * const w, WidgetID widget, int padding = 0, int line_height = -1) const; + size_type GetScrolledRowFromWidget(int clickpos, const Window * const w, WidgetID widget, int padding = 0, int line_height = -1) const; /** * Get a pair of iterators for the range of visible elements in a container. @@ -841,7 +845,7 @@ public: template auto GetVisibleRangeIterators(Tcontainer &container) const { - assert(this->GetCount() == container.size()); // Scrollbar and container size must match. + assert((size_t)this->GetCount() == container.size()); // Scrollbar and container size must match. auto first = std::next(std::begin(container), this->GetPosition()); auto last = std::next(first, std::min(this->GetCapacity(), this->GetCount() - this->GetPosition())); return std::make_pair(first, last); @@ -860,9 +864,9 @@ public: template typename Tcontainer::iterator GetScrolledItemFromWidget(Tcontainer &container, int clickpos, const Window * const w, WidgetID widget, int padding = 0, int line_height = -1) const { - assert(this->GetCount() == container.size()); // Scrollbar and container size must match. - int row = this->GetScrolledRowFromWidget(clickpos, w, widget, padding, line_height); - if (row == INT_MAX) return std::end(container); + assert((size_t)this->GetCount() == container.size()); // Scrollbar and container size must match. + size_type row = this->GetScrolledRowFromWidget(clickpos, w, widget, padding, line_height); + if (row == Scrollbar::npos) return std::end(container); typename Tcontainer::iterator it = std::begin(container); std::advance(it, row); From caa7c44052bc213c3c99c2994dd34ae88e399243 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Fri, 22 Mar 2024 23:36:56 +0100 Subject: [PATCH 32/70] Cleanup: remove checks for old MSVC versions --- src/os/windows/win32.cpp | 2 +- src/stdafx.h | 27 ++++++--------------------- 2 files changed, 7 insertions(+), 22 deletions(-) diff --git a/src/os/windows/win32.cpp b/src/os/windows/win32.cpp index b198ed92c4..e5ddba94c0 100644 --- a/src/os/windows/win32.cpp +++ b/src/os/windows/win32.cpp @@ -259,7 +259,7 @@ void CreateConsole() return; } -#if defined(_MSC_VER) && _MSC_VER >= 1900 +#if defined(_MSC_VER) freopen("CONOUT$", "a", stdout); freopen("CONIN$", "r", stdin); freopen("CONOUT$", "a", stderr); diff --git a/src/stdafx.h b/src/stdafx.h index 096e8e6829..850d18adba 100644 --- a/src/stdafx.h +++ b/src/stdafx.h @@ -28,6 +28,12 @@ #if defined(__APPLE__) # include "os/macosx/osx_stdafx.h" +#else +/* It seems that we need to include stdint.h before anything else + * We need INT64_MAX, which for most systems comes from stdint.h. + * For OSX the inclusion is already done in osx_stdafx.h. */ +# define __STDC_LIMIT_MACROS +# include #endif /* __APPLE__ */ #if defined(__HAIKU__) @@ -37,15 +43,6 @@ # define _GNU_SOURCE #endif -/* It seems that we need to include stdint.h before anything else - * We need INT64_MAX, which for most systems comes from stdint.h. However, MSVC - * does not have stdint.h. - * For OSX the inclusion is already done in osx_stdafx.h. */ -#if !defined(__APPLE__) && (!defined(_MSC_VER) || _MSC_VER >= 1600) -# define __STDC_LIMIT_MACROS -# include -#endif - #include #include #include @@ -115,9 +112,6 @@ # pragma warning(disable: 4200) // nonstandard extension used : zero-sized array in struct/union # pragma warning(disable: 4355) // 'this' : used in base member initializer list -# if (_MSC_VER < 1400) // MSVC 2005 safety checks -# error "Only MSVC 2005 or higher are supported. MSVC 2003 and earlier are not! Upgrade your compiler." -# endif /* (_MSC_VER < 1400) */ # pragma warning(disable: 4291) // no matching operator delete found; memory will not be freed if initialization throws an exception (reason: our overloaded functions never throw an exception) # pragma warning(disable: 4996) // 'function': was declared deprecated # pragma warning(disable: 6308) // code analyzer: 'realloc' might return null pointer: assigning null pointer to 't_ptr', which is passed as an argument to 'realloc', will cause the original memory block to be leaked @@ -126,15 +120,6 @@ # pragma warning(disable: 6031) // code analyzer: Return value ignored: 'ReadFile' # pragma warning(disable: 6246) // code analyzer: Local declaration of 'statspec' hides declaration of the same name in outer scope. For additional information, see previous declaration at ... -# if (_MSC_VER == 1500) // Addresses item #13 on http://blogs.msdn.com/b/vcblog/archive/2008/08/11/tr1-fixes-in-vc9-sp1.aspx, for Visual Studio 2008 -# define _DO_NOT_DECLARE_INTERLOCKED_INTRINSICS_IN_MEMORY -# include -# endif - -# if (_MSC_VER < 1900) -# define inline __forceinline -# endif - # define CDECL _cdecl # if defined(_WIN32) && !defined(_WIN64) From 8928f4979af683003943b093952ad9a871d87bb1 Mon Sep 17 00:00:00 2001 From: Tyler Trahan Date: Sun, 24 Mar 2024 07:44:25 -0400 Subject: [PATCH 33/70] Change: Add dividers in vehicle group action dropdown (#12284) --- src/vehicle_gui.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index de65786ee5..99bb9dd9e5 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -454,17 +454,26 @@ DropDownList BaseVehicleListWindow::BuildActionDropdownList(bool show_autoreplac { DropDownList list; - if (show_autoreplace) list.push_back(std::make_unique(STR_VEHICLE_LIST_REPLACE_VEHICLES, ADI_REPLACE, false)); - list.push_back(std::make_unique(STR_VEHICLE_LIST_SEND_FOR_SERVICING, ADI_SERVICE, false)); - list.push_back(std::make_unique(this->vehicle_depot_name[this->vli.vtype], ADI_DEPOT, false)); + /* Autoreplace actions. */ + if (show_autoreplace) { + list.push_back(std::make_unique(STR_VEHICLE_LIST_REPLACE_VEHICLES, ADI_REPLACE, false)); + list.push_back(std::make_unique(-1, false)); + } + /* Group actions. */ if (show_group) { list.push_back(std::make_unique(STR_GROUP_ADD_SHARED_VEHICLE, ADI_ADD_SHARED, false)); list.push_back(std::make_unique(STR_GROUP_REMOVE_ALL_VEHICLES, ADI_REMOVE_ALL, false)); + list.push_back(std::make_unique(-1, false)); } else if (show_create) { list.push_back(std::make_unique(STR_VEHICLE_LIST_CREATE_GROUP, ADI_CREATE_GROUP, false)); + list.push_back(std::make_unique(-1, false)); } + /* Depot actions. */ + list.push_back(std::make_unique(STR_VEHICLE_LIST_SEND_FOR_SERVICING, ADI_SERVICE, false)); + list.push_back(std::make_unique(this->vehicle_depot_name[this->vli.vtype], ADI_DEPOT, false)); + return list; } From eebfb83aa206de90df220d2629812a026795aa4d Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sun, 24 Mar 2024 15:53:26 +0000 Subject: [PATCH 34/70] Fix 2fd9096: Label for fruit incorrectly changed to `FRUI` from `FRUT`. (#12367) --- src/cargo_type.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cargo_type.h b/src/cargo_type.h index 3b0380f429..27dc09cbe9 100644 --- a/src/cargo_type.h +++ b/src/cargo_type.h @@ -47,7 +47,7 @@ static constexpr CargoLabel CT_FOOD = CargoLabel{'FOOD'}; /* Tropic */ static constexpr CargoLabel CT_RUBBER = CargoLabel{'RUBR'}; -static constexpr CargoLabel CT_FRUIT = CargoLabel{'FRUI'}; +static constexpr CargoLabel CT_FRUIT = CargoLabel{'FRUT'}; static constexpr CargoLabel CT_MAIZE = CargoLabel{'MAIZ'}; static constexpr CargoLabel CT_COPPER_ORE = CargoLabel{'CORE'}; static constexpr CargoLabel CT_WATER = CargoLabel{'WATR'}; From 97c173854106b7e901146d6f15ef155aefac81f5 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sun, 24 Mar 2024 18:35:33 +0000 Subject: [PATCH 35/70] Fix #12368: Incorrect offset for click position within industry chain window. (#12370) --- src/industry_gui.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index cf185cd3cb..70c83ccf73 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -3040,7 +3040,7 @@ struct IndustryCargoesWindow : public Window { pt.x -= nw->pos_x; pt.y -= nw->pos_y; - int vpos = WidgetDimensions::scaled.framerect.top + CargoesField::small_height - this->vscroll->GetPosition() * nw->resize_y; + int vpos = WidgetDimensions::scaled.frametext.top + CargoesField::small_height - this->vscroll->GetPosition() * nw->resize_y; if (pt.y < vpos) return false; int row = (pt.y - vpos) / CargoesField::normal_height; // row is relative to row 1. @@ -3048,7 +3048,7 @@ struct IndustryCargoesWindow : public Window { vpos = pt.y - vpos - row * CargoesField::normal_height; // Position in the row + 1 field row++; // rebase row to match index of this->fields. - int xpos = 2 * WidgetDimensions::scaled.framerect.left + ((this->ind_cargo < NUM_INDUSTRYTYPES) ? 0 : (CargoesField::industry_width + CargoesField::cargo_field_width) / 2); + int xpos = 2 * WidgetDimensions::scaled.frametext.left + ((this->ind_cargo < NUM_INDUSTRYTYPES) ? 0 : (CargoesField::industry_width + CargoesField::cargo_field_width) / 2); if (pt.x < xpos) return false; int column; for (column = 0; column <= 5; column++) { From 40a75e0b8dc317ada600a895633b8919eca0e7f4 Mon Sep 17 00:00:00 2001 From: translators Date: Mon, 25 Mar 2024 04:40:35 +0000 Subject: [PATCH 36/70] Update: Translations from eints swedish: 19 changes by joeax910 norwegian (bokmal): 2 changes by eriksorngard ukrainian: 6 changes by StepanIvasyn french: 3 changes by ottdfevr portuguese (brazilian): 23 changes by pasantoro polish: 1 change by pAter-exe --- src/lang/brazilian_portuguese.txt | 46 +++++++++++++++---------------- src/lang/french.txt | 6 ++-- src/lang/norwegian_bokmal.txt | 4 +-- src/lang/polish.txt | 2 +- src/lang/swedish.txt | 36 ++++++++++++------------ src/lang/ukrainian.txt | 11 ++++---- 6 files changed, 54 insertions(+), 51 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index f3f13f97a6..bc2ff500c0 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -241,7 +241,7 @@ STR_UNITS_WEIGHT_LONG_METRIC :{DECIMAL}{NBSP} STR_UNITS_WEIGHT_LONG_SI :{DECIMAL}{NBSP}kg STR_UNITS_VOLUME_SHORT_IMPERIAL :{DECIMAL}{NBSP}gal -STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}l +STR_UNITS_VOLUME_SHORT_METRIC :{DECIMAL}{NBSP}L STR_UNITS_VOLUME_SHORT_SI :{DECIMAL}{NBSP}m³ STR_UNITS_VOLUME_LONG_IMPERIAL :{DECIMAL}{NBSP}gal{P ão ões} @@ -609,7 +609,7 @@ STR_GRAPH_Y_LABEL_NUMBER :{TINY_FONT}{COM STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Gráfico do Lucro Operacional STR_GRAPH_INCOME_CAPTION :{WHITE}Gráfico de Rendimentos STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Unidades de carga entregada -STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Classificações do desempenho da empresa (máximo=1000) +STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Classificação do desempenho das empresas (máximo=1000) STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Gráfico de Valor da Empresa STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Últimos 72 minutos @@ -618,8 +618,8 @@ STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Tarifas STR_GRAPH_CARGO_PAYMENT_RATES_DAYS :{TINY_FONT}{BLACK}Dias em trânsito STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLACK}Segundos em trânsito STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagamento por entregar 10 unidades (ou 10 mil litros) de carga em uma distância de 20 quadrados -STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Habilitar tudo -STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Desabilitar tudo +STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Ativar tudo +STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Desativar tudo STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Mostrar todas as cargas no gráfico de receitas por carga STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Não mostrar cargas no gráfico de receitas por carga STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Mostrar/Ocultar gráfico para o tipo de carga @@ -758,9 +758,9 @@ STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Mostrar STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Mostrar rotas de transporte no mapa STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Mostrar vegetação no mapa STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Mostrar proprietários dos terrenos no mapa -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique em um tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desabilitar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para habilitar todos os tipos de indústrias -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clique em uma empresa para mostrar/ocultar suas propriedades. Ctrl+Clique para desabilitar todas as empresas, exceto a selecionada. Ctrl+Clique novamente para habilitar todas as empresas -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clique em uma carga para mostrar/ocultar suas propriedades. Ctrl+Clique para desabilitar todas as cargas, exceto a selecionada. Ctrl+Clique novamente para habilitar todas as cargas +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique em um tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desativar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para ativar todos os tipos de indústrias +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clique em uma empresa para mostrar/ocultar suas propriedades. Ctrl+Clique para desativar todas as empresas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as empresas +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clique em uma carga para mostrar/ocultar sua propriedade. Ctrl+Clique para desativar todas as cargas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as cargas STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Estradas STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Ferrovias @@ -880,7 +880,7 @@ STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_COAL :{BIG_FONT}{BLAC STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_OIL :{BIG_FONT}{BLACK}Novas reservas de petróleo encontradas n{G o a} {INDUSTRY}!{}A produção deverá duplicar! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_FARM :{BIG_FONT}{BLACK}Métodos agrícolas aperfeiçoados na {INDUSTRY} deverão duplicar a produção! STR_NEWS_INDUSTRY_PRODUCTION_INCREASE_SMOOTH :{BIG_FONT}{BLACK}Produção de {STRING} n{G o a} {INDUSTRY} aumenta {COMMA}%! -STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}A produção de {INDUSTRY} diminui 50% +STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_GENERAL :{BIG_FONT}{BLACK}{INDUSTRY} diminui a produção em 50% STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_FARM :{BIG_FONT}{BLACK}Infestação de insetos causa destruição n{G o a} {INDUSTRY}!{}Produção diminui 50% STR_NEWS_INDUSTRY_PRODUCTION_DECREASE_SMOOTH :{BIG_FONT}{BLACK}Produção de {STRING} n{G o a} {INDUSTRY} diminui {COMMA}%! @@ -1543,7 +1543,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Espessura da li STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Mostrar o nome do NewGRF na janela de comprar veículos: {STRING} STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Adicionar uma linha na janela de aquisição de veículos, mostrando a qual NewGRF pertence o veículo selecionado -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar as cargas que os veículos podem transportar nas janelas de listagem: {STRING} +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar nas janelas de listagem as cargas que os veículos podem transportar: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Se ativado, a carga transportável pelo veículo aparecerá acima dele nas listas de veículos STR_CONFIG_SETTING_LANDSCAPE :Clima: {STRING} @@ -1561,7 +1561,7 @@ STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :Escolher a altu STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidade de indústrias: {STRING} STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Definir quantas indústrias devem ser geradas e que nível deve ser mantido durante o jogo -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distância máxima entre a borda do mapa para Refinarias de Petróleo: {STRING} +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distância máxima entre Refinarias de Petróleo e a borda do mapa: {STRING} STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Limite de distância entre a borda do mapa e o local de construção de refinarias e plataformas de petróleo. Em mapas de ilhas isso garante que elas fiquem perto da costa. Em mapas com mais de 256 quadrados esse valor é aumentado STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Altura da linha de neve: {STRING} @@ -1840,8 +1840,8 @@ STR_CONFIG_SETTING_SERVINT_DISABLED :Desativado STR_CONFIG_SETTING_NOSERVICE :Desativar manutenção quando as quebras estão desativadas: {STRING} STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Quando ativado, veículos não recebem manutenção se não podem quebrar -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Penalidade de velocidade de carregamento para trens que são mais longos que a estação: {STRING} -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Quando ativado, os trens que são muito compridos para a estação demoram mais tempo para carregar do que um trem que cabe na estação. Esta configuração não afeta a geração de rotas +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Penalizar a velocidade de carregamento para trens que são mais longos que a estação: {STRING} +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Quando ativado, os trens que são muito compridos para a estação são carregados mais lentamente do que um trem que cabe na estação. Esta configuração não afeta a geração de rotas STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Ativar limite de velocidade para vagões: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Quando ativado, usa o limite de velocidade dos vagões para definir a velocidade máxima de um trem @@ -1906,7 +1906,7 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Ano em que os j STR_CONFIG_SETTING_STARTING_YEAR :Data de início: {STRING} STR_CONFIG_SETTING_ENDING_YEAR :Pontuação no fim do ano: {STRING} -STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Ano em que o jogo termina para fins de pontuação. No fim desse ano, a pontuação da empresa é registrada e a tela de pontuação máxima é exibida, mas os jogadores podem continuar jogando depois disso.{}Se isso for antes do ano de início, a tela de pontuação máxima nunca será exibida +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Ano em que o jogo termina para fins de pontuação. No fim desse ano, a pontuação da empresa é registrada e o painel de classificação é exibido, mas os jogadores podem continuar jogando depois disso.{}Se isso for antes do ano de início, o painel de classificação nunca será exibido STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nunca @@ -2205,7 +2205,7 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}Selecion STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}Selecionar paisagem 'Terra dos brinquedos' STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Abrir opções de jogo -STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Abrir tabela de classificação +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar classificação das melhores empresas STR_INTRO_TOOLTIP_HELP :{BLACK}Acessar a documentação e recursos online STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Abrir configurações STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Abrir configurações de NewGRF @@ -2236,7 +2236,7 @@ STR_HELP_WINDOW_README :{BLACK}Leia-me STR_HELP_WINDOW_CHANGELOG :{BLACK}Registro de modificações STR_HELP_WINDOW_KNOWN_BUGS :{BLACK}Erros conhecidos STR_HELP_WINDOW_LICENSE :{BLACK}Licença -STR_HELP_WINDOW_MAIN_WEBSITE :{BLACK}Site do OpenTTD +STR_HELP_WINDOW_MAIN_WEBSITE :{BLACK}OpenTTD STR_HELP_WINDOW_MANUAL_WIKI :{BLACK}Manual / Wiki STR_HELP_WINDOW_BUGTRACKER :{BLACK}Relatar um erro STR_HELP_WINDOW_COMMUNITY :{BLACK}Comunidade @@ -2253,7 +2253,7 @@ STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar o ano atual STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} -STR_CHEAT_STATION_RATING :{LTBLUE}Fixar classificações da estação em 100%: {ORANGE}{STRING} +STR_CHEAT_STATION_RATING :{LTBLUE}Fixar classificação das estações em 100%: {ORANGE}{STRING} # Livery window STR_LIVERY_CAPTION :{WHITE}{COMPANY} - Esquema de cores @@ -3365,7 +3365,7 @@ STR_MAPGEN_HEIGHTMAP_ROTATION :{BLACK}Rotaçã STR_MAPGEN_HEIGHTMAP_NAME :{BLACK}Nome do mapa de altitudes: STR_MAPGEN_HEIGHTMAP_NAME_TOOLTIP :{BLACK}O nome do arquivo de imagem do mapa de altitudes STR_MAPGEN_HEIGHTMAP_SIZE_LABEL :{BLACK}Tamanho: -STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanho da imagem original do mapa de altitudes. Para obter melhores resultados, cada lado deve corresponder a um comprimento de lado de mapa disponível no OpenTTD, tais como 256, 512, 1024, etc. +STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanho da imagem original do mapa de altitudes. Para obter resultados melhores, cada lado deve corresponder a um comprimento de lado de mapa disponível no OpenTTD, tais como 256, 512, 1024, etc. STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura do pico mais elevado @@ -3645,7 +3645,7 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Renomear Locali STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Autoridade local de {TOWN} STR_LOCAL_AUTHORITY_ZONE :{BLACK}Região STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Mostrar a região dentro dos limites da autoridade local -STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classificações das empresas de transporte: +STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classificação das empresas de transporte: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Ações disponíveis: STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - clique em um item para mais detalhes @@ -4398,13 +4398,13 @@ STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}{1:VELO STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}{VELOCITY} - Sem ordens STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}{1:VELOCITY} - Indo para {0:WAYPOINT} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Indo para {0:DEPOT} -STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Manutenção em {0:DEPOT} -STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_UNBUNCH_VEL :{LTBLUE}{1:VELOCITY} - Desagrupar e manutenção em {0:DEPOT} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Manutenção no {0:DEPOT} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_UNBUNCH_VEL :{LTBLUE}{1:VELOCITY} - Desagrupar e manutenção no {0:DEPOT} STR_VEHICLE_STATUS_CANNOT_REACH_STATION_VEL :{LTBLUE}{1:VELOCITY} - Não é possível chegar em {0:STATION} STR_VEHICLE_STATUS_CANNOT_REACH_WAYPOINT_VEL :{LTBLUE}{1:VELOCITY} - Não é possível chegar em {0:WAYPOINT} -STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Não é possível chegar em {0:DEPOT} -STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Não é possível chegar em {0:DEPOT} +STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Não é possível chegar no {0:DEPOT} +STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Não é possível chegar no {0:DEPOT} # Vehicle stopped/started animations ###length 2 @@ -4851,7 +4851,7 @@ STR_AI_SETTINGS_SETTING :{STRING}: {ORAN # Textfile window -STR_TEXTFILE_JUMPLIST :{WHITE}Tabela de Conteúdo +STR_TEXTFILE_JUMPLIST :{WHITE}Índice STR_TEXTFILE_JUMPLIST_TOOLTIP :{BLACK}Acesso rápido a uma seção do arquivo mostrado nesta lista STR_TEXTFILE_JUMPLIST_ITEM :{WHITE}{STRING} STR_TEXTFILE_NAVBACK_TOOLTIP :{BLACK}Retornar no histórico de navegação diff --git a/src/lang/french.txt b/src/lang/french.txt index 503c99c91b..24d5f06f59 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -4450,10 +4450,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacit STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Crédits de transfert{NBSP}: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Intervalle d'entretien{NBSP}: {LTBLUE}{COMMA}{NBSP}jours{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalle de service{NBSP}: {LTBLUE}{COMMA}{NBSP}minutes{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Intervalle de service{NBSP}: {LTBLUE}{COMMA}{NBSP}minute{P "" s}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Intervalle d'entretien{NBSP}: {LTBLUE}{COMMA}{NBSP}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Dernier entretien{NBSP}: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Dernier entretien{NBSP}: {LTBLUE}il y a {NUM} minutes +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Dernier entretien{NBSP}: {LTBLUE}il y a {NUM} minute{P "" s} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Augmenter l'intervalle d'entretien de 10 jours. Ctrl-clic pour l'augmenter de 5 jours STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Augmenter l'intervalle d'entretien de 5 minutes. Ctrl-clic pour l'augmenter de 1 minute STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Augmenter l'intervalle d'entretien de 10%. Ctrl-clic pour l'augmenter de 5% @@ -4996,7 +4996,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Impossib STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Impossible de construire le siège... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Ne peut plus bâtir de villes +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Ne peut plus bâtir de villes... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Impossible de renommer la ville... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Impossible de construire une ville ici... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Impossible d'étendre la ville... diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index e5555a8b89..07d1eb9841 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -4451,10 +4451,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapasite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Overføringskreditt: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Vedlikeholdsintervall: {LTBLUE}{COMMA}{NBSP}dager{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Vedlikeholdsintervall: {LTBLUE}{COMMA}{NBSP}minutter{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Vedlikeholdsintervall: {LTBLUE}{COMMA}{NBSP}minutt{P "" er}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Vedlikeholdsintervall: {LTBLUE}{COMMA}{NBSP}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Forrige vedlikehold: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Forrige vedlikehold: {LTBLUE}{NUM} minutter siden +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Forrige vedlikehold: {LTBLUE}{NUM} minutt{P "" er} siden STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Øk vedlikeholdsintervall med 10 dager. Ctrl+klikk for å øke vedlikeholdsintervall med 5 dager STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Reduser vedlikeholdsintervall med 5 minutter. Ctrl+klikk for å øke vedlikeholdsintervall med 1 minutt STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Øk vedlikeholdsintervall med 10 prosent. Ctrl+klikk for å øke vedlikeholdsintervall med 5 prosent diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 4df0d47163..fb7c10d992 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -4835,7 +4835,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Ładowno STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Wartość ładunku: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Okres między serwisami: {LTBLUE}{COMMA}{NBSP}dni{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Interwał serwisowania: {LTBLUE}{COMMA}{NBSP}minut{P a y ""}{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Interwał serwisowania: {LTBLUE}{COMMA}{NBSP}minut{P a y ""}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Okres między serwisami: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Ostatni serwis: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Ostatni serwis: {LTBLUE}{NUM} minut{P a y ""} temu diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index dbc3c03fac..4ee31f9b94 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -1054,7 +1054,7 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Skala b STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Kryssa i den här rutan för att skala bården efter gränssnittets storlek STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Använd traditionellt sprite-typsnitt -STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Kryssa i den här rutan om du föredrar att använda det traditionella sprite-typsnittet med fast storlek. +STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Kryssa i den här rutan om du föredrar att använda det traditionella sprite-typsnittet med fast storlek STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Anti-alias-typsnitt STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Kryssa i den här rutan för anti-aliasing av typsnitt med justerbar storlek. @@ -1275,7 +1275,7 @@ STR_CONFIG_SETTING_INFINITE_MONEY :Obegränsat kap STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Tillåt obegränsat spenderande och inaktivera konkurser av företag STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximalt startlån: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximalt belopp ett företag kan låna (där inflationen inte tas med i beräkningen). Om inställt på "Inga lån" kommer inga pengar finnas tillgängliga såvida inte utdelat av ett spelskript eller inställningen "Obegränsat kapital". +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximalt belopp ett företag kan låna (där inflationen inte tas med i beräkningen). Om inställt på "Inga lån" kommer inga pengar finnas tillgängliga såvida inte utdelat av ett spelskript eller inställningen "Obegränsat kapital" STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_VALUE :{CURRENCY_LONG} ###setting-zero-is-special STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_DISABLED :Inga lån @@ -1359,7 +1359,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Sluttningars lu STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Lutningsgrad för lutande rutor för vägfordon. Högre värden gör det svårare att komma upp för en backe STR_CONFIG_SETTING_FORBID_90_DEG :Förbjud tåg att göra 90°-svängar: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90-graderssvängar inträffar då ett horisontellt spår följs direkt av ett vertikalt spår på angränsande ruta, vilket tvingar tåget att svänga 90 grader om det kör utefter spåret. Detta i motsats till andra kombinationer av spårbitar där tåget svänger 45 grader i taget. +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90-graderssvängar inträffar då ett horisontellt spår följs direkt av ett vertikalt spår på angränsande ruta, vilket tvingar tåget att svänga 90 grader om det kör utefter spåret. Detta i motsats till andra kombinationer av spårbitar där tåget svänger 45 grader i taget STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Tillåt att stationer som inte är byggda direkt brevid varandra slås ihop: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Tillåt tillägg av stationsdelar till en station utan direktkontakt med existerande delar genom Ctrl+Klick vid utplacering av nya delar. @@ -1508,9 +1508,9 @@ STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0 (kalendertid frusen) STR_CONFIG_SETTING_TOWN_CARGO_SCALE :Skala godsproduktionen för städer: {STRING} -STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Skala godsproduktionen för städer med detta procentantal. +STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Skala godsproduktionen för städer med detta procenttal STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :Skala godsproduktionen för industrier: {STRING} -STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Skala godsproduktionen för industrier med detta procentantal. +STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Skala godsproduktionen för industrier med detta procenttal STR_CONFIG_SETTING_CARGO_SCALE_VALUE :{NUM}% STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Förnya fordon automatiskt när de blir gamla: {STRING} @@ -1541,7 +1541,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Linjetjocklek i STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Linjernas bredd i grafernas kurvor. En tunn linje är lättare att läsa av mer precist, medan en tjockare linje är lättare att se och gör det lättare att skilja mellan de olika färgerna STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Visa NewGRF:ens namn i fordonsbyggnadsfönstret: {STRING} -STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Lägg till en rad i fordonsbyggnadsfönstret som visar vilken NewGRF det valda fordonet kommer ifrån. +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Lägg till en rad i fordonsbyggnadsfönstret som visar vilken NewGRF det valda fordonet kommer ifrån STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Visa godstyper som fordonen kan transportera i listorna {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Om det är aktiverat kommer fordonets transportabla last att visas ovanför den i fordonslistor @@ -1818,7 +1818,7 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Tillåt datorst STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes innan skript sätts i viloläge: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maximalt antal beräkningssteg ett skript kan utföra i en omgång STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Maximal minnesanvändning per skript: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Hur mycket minne ett enda skript kan konsumera innan det tvingas avslutas. Det kan behöva ökas för stora kartor. +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Hur mycket minne ett enda skript kan konsumera innan det tvingas avslutas. Det kan behöva utökas för stora kartor STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Visa serviceintervall i procent: {STRING} @@ -1911,7 +1911,7 @@ STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Aldrig STR_CONFIG_SETTING_ECONOMY_TYPE :Typ av ekonomi: {STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Jämn ekonomi gör att produktionen ändrar sig oftare i mindre steg. Frusen ekonomi förhindrar produktions ändringar och att industrier stänger. Denna inställning har ingen effekt om industrien kommer från en NewGRF. +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Jämn ekonomi gör att produktionen ändrar sig oftare och i mindre steg. Frusen ekonomi förhindrar produktionsändringar och att industrier stänger. Denna inställning kan vara verkningslös om en NewGRF bidrar med industrityper ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Original STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Jämn @@ -2036,13 +2036,13 @@ STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Ta {STRING} fö STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tid som det tar för varje omräkning av en länkdiagramkomponent. När en omräkning startas skapas en tråd som tillåts köra i detta antal sekunder. Ju kortare du ställer in detta desto mer sannolikt är det att tråden inte är färdig när den ska. Sedan stannar spelet tills det är ("lag"). Ju längre du ställer in den desto längre tid tar det för distributionen att uppdateras när rutter ändras. STR_CONFIG_SETTING_DISTRIBUTION_PAX :Distributionssätt för passagerare: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symmetriskt" innebär att ungefär samma antal passagerare färdas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd passagerare kan färdas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av passagerare sker. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symmetriskt" innebär att ungefär samma antal passagerare färdas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd passagerare kan färdas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av passagerare sker STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Distributionssätt för post: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Symmetriskt" innebär att ungefär samma mängd post skickas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd post kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av post sker. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Symmetriskt" innebär att ungefär samma mängd post skickas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd post kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av post sker STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Distributionssätt för den BEPANSRADE godsklassen: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Den BEPANSRADE godsklassen innehåller värdesaker i det tempererade, diamanter i det subtropiska eller guld i det subarktiska klimatet. NewGRFer kan ändra detta. "Symmetriskt" innebär att ungefär samma mängd av detta gods skickas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd av detta gods kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av denna godstyp sker. Det är rekommenderat att välja "asymmetriskt" eller "manuellt" vid subarktiskt eller subtropiskt klimat, då banker endast tar emot gods i dessa klimat. Vid tempererat klimat kan även "symmetriskt" väljas, då banker kan skicka tillbaka värdesaker till den bank de kom ifrån. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Den BEPANSRADE godsklassen innehåller värdesaker i det tempererade, diamanter i det subtropiska eller guld i det subarktiska klimatet. NewGRFer kan ändra detta. "Symmetriskt" innebär att ungefär samma mängd av detta gods skickas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd av detta gods kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av denna godstyp sker. Det är rekommenderat att välja "asymmetriskt" eller "manuellt" vid subarktiskt eller subtropiskt klimat, då banker endast tar emot gods i dessa klimat. Vid tempererat klimat kan även "symmetriskt" väljas, då banker kan skicka tillbaka värdesaker till den bank de kom ifrån STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Distributionssätt för övriga godsklasser: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asymmetriskt" innebär att en godtycklig mängd gods kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av dessa godstyper sker. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asymmetriskt" innebär att en godtycklig mängd gods kan skickas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av dessa godstyper sker ###length 3 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuellt STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetriskt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Du har i STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Du har inte angivit något servernamn. Namninställning kan göras högst upp i flerspelarfönstret STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Servern har en annan version än denna klient STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Fel lösenord +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Du finns ej med på listan över tillåtna klienter STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Servern är full STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Du är bannlyst från den här servern STR_NETWORK_ERROR_KICKED :{WHITE}Du blev utkastad från spelet @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :mottog felaktig STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :fel revision STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :namnet används redan STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :fel lösenord +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :ej på tillåt-listan STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :fel företags-id i DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :utkastad av servern STR_NETWORK_ERROR_CLIENT_CHEATER :försökte fuska @@ -2981,9 +2983,9 @@ STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Plantera STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Plantera träd genom att dra över landskapet. STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Skogsdunge -STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Plantera mindre skogar genom att dra över landskapet. +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Plantera mindre skogar genom att dra över landskapet STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Skog -STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Plantera större skogar genom att dra över landskapet. +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Plantera större skogar genom att dra över landskapet # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Skapa mark @@ -4031,7 +4033,7 @@ STR_GROUP_CREATE_TOOLTIP :{BLACK}Klicka f STR_GROUP_DELETE_TOOLTIP :{BLACK}Ta bort vald grupp STR_GROUP_RENAME_TOOLTIP :{BLACK}Byt namn på vald grupp STR_GROUP_LIVERY_TOOLTIP :{BLACK}Byt färgschema på vald grupp -STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klicka för att skydda denna grupp mot allmän automatisk förnyelse. Ctrl+klicka för att också skydda undergrupper. +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Klicka för att skydda denna grupp mot allmän automatisk förnyelse. Ctrl+klicka för att också skydda undergrupper STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Ta bort grupp STR_GROUP_DELETE_QUERY_TEXT :{WHITE} Är du säker på att du vill ta bort denna grupp och alla efterkommande? @@ -4221,7 +4223,7 @@ STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klona fl STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Köp en kopia av ett tåg inklusive alla vagnar. Klicka på denna knapp och sen på ett tåg i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Köp en kopia av ett vägfordon. Klicka på denna knapp och sen på ett vägfordon i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Köp en kopia av ett skepp. Klicka på denna knapp och sen på ett skepp i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Köp en kopia av en flygfarkost. Klicka på denna knapp och sen på en flygfarkost i eller utanför hangaren. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Köp en kopia av en flygfarkost. Klicka på denna knapp och sedan på en flygfarkost i eller utanför hangaren. Ctrl+klicka för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centrera huvudvyn ovanför depån. Ctrl+Klick för att öppna en ny fönstervy över tågdepåns läge @@ -4993,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Kan inte STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Kan inte bygga huvudkontor här... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan inte bygga några städer +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Kan inte bygga några städer... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Kan inte byta namn på stad... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Kan inte grunda stad här... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Kan inte expandera stad... diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 502d461854..2df685a55a 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -2091,7 +2091,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Дозволя STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Міська влада може будувати переїзди: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Дозволяє містам самостійно будувати залізничні переїзди. -STR_CONFIG_SETTING_NOISE_LEVEL :Міська влада може контролювати рівень шуму аеропортів: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL :Обмеження розміщення аеропортів залежно від рівня шуму: {STRING} STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :При відключенні дозволяється будувати два аеропорти у кожному місті. При увімкненні кількість аеропортів залежить від допустимого рівня шуму, що в свою чергу залежить від кількості населення міста, розміру аеропорта та відстані STR_CONFIG_SETTING_TOWN_FOUNDING :Засновування нових міст під час гри: {STRING} @@ -2167,8 +2167,9 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Множник STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Середньостатистичне відношення початкового розміру мегаполісів порівняно зі звичайними містами. STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Оновлення обрахунку зв'язків, час {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Час між перерозрахунками графа зв'язків. Кожен розрахунок обчислює однин компонент графа, тобто лише деякі компоненти оновляться після закінчення кожного проміжку часу, а не весь граф. Чим менше це значення, тим більше часу процесора буде витрачатися. Чим більше це значення, тим довше буде очікувати розподілення вантажів на нових маршрутах +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Час між перерозрахунками графа зв'язків. Кожен розрахунок обчислює один компонент графа, тобто лише деякі компоненти оновляться після закінчення кожного проміжку часу, а не весь граф. Чим менше це значення, тим більше часу процесора буде витрачатися. Чим більше це значення, тим довше доведеться очікувати розподілення вантажів на нових маршрутах STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Час між перерахунками графа зв'язків: {STRING} +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Час між перерозрахунками компонента графа зв'язків. На початку перерозрахунку утворюється з'єднання, яке існує обраний час. Чим менше це значення, тим більша вірогідність, що з'єднання розірветься раніше очікуваного, після чого гра зупиниться. Чим більше це значення, тим довше обраховуватиметься розподілення вантажів при зміні маршрутів STR_CONFIG_SETTING_DISTRIBUTION_PAX :Режим розподілу для пасажирів: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :В "симетричному" режимі від станції A до станції B відправлятиметься приблизно стільки ж пасажирів, як від B до A. В "асиметричному" режимі дозволяється відправляти довільну кількість пасажирів в обох напрямках. Ручний режим означає, що розподіл пасажирів не здійснюватиметься автоматично. @@ -3013,9 +3014,9 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Буду STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Будувати дорогу в режимі Автобудування. Ctrl+клац для знесення доріг. Утримуйте Shift для показу тільки витрат STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Будувати трамвайну колію в режимі Автобудування. Ctrl+клац для знесення колій. Утримуйте Shift для показу тільки витрат STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Будувати гараж (для будівництва і обслуговування автомобілів). Утримуйте Shift для показу витрат на будівництво -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Будувати трамвайне депо (для будівництва та обслуговування трамваїв). Утримуйте Shift для показу витрат на будівництво -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Будувати автобусну зупинку. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу тільки витрат на будівництво -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Будувати пасажирську трамвайну станцію. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Будування трамвайного депо (для будівництва та обслуговування трамваїв). Утримуйте Shift для показу витрат на будівництво +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Будування автобусної зупинки. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу витрат на будівництво +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Будування пасажирської трамвайної станції. Ctrl+клац щоб обрати іншу станцію для приєднання. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Будувати вантажну станцію. Ctrl+клац щоб обрати іншу станцію для при'єднання. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Побудувати вантажну трамвайну станцію. Ctrl+клац щоб обрати іншу зупинку для приєднання. Утримуйте Shift для показу тільки витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Вкл./відкл. односторонні дороги From f845b4bbc3c0d81e9f24aa453e619aee0299da6e Mon Sep 17 00:00:00 2001 From: SamuXarick <43006711+SamuXarick@users.noreply.github.com> Date: Mon, 25 Mar 2024 16:28:16 +0000 Subject: [PATCH 37/70] Fix: Changing NPF max search nodes while in-game had no effect (#12194) --- src/pathfinder/npf/npf.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pathfinder/npf/npf.cpp b/src/pathfinder/npf/npf.cpp index 33d5927991..5ac43cd8c9 100644 --- a/src/pathfinder/npf/npf.cpp +++ b/src/pathfinder/npf/npf.cpp @@ -1040,6 +1040,10 @@ static NPFFoundTargetData NPFRouteInternal(AyStarNode *start1, bool ignore_start /* Initialize user_data */ _npf_aystar.user_data = user; + /* We will limit the number of nodes for now, until we have a better + * solution to really fix performance */ + _npf_aystar.max_search_nodes = _settings_game.pf.npf.npf_max_search_nodes; + /* GO! */ [[maybe_unused]] int r = _npf_aystar.Main(); assert(r != AYSTAR_STILL_BUSY); @@ -1113,9 +1117,6 @@ void InitializeNPF() } _npf_aystar.loops_per_tick = 0; _npf_aystar.max_path_cost = 0; - /* We will limit the number of nodes for now, until we have a better - * solution to really fix performance */ - _npf_aystar.max_search_nodes = _settings_game.pf.npf.npf_max_search_nodes; } static void NPFFillWithOrderData(NPFFindStationOrTileData *fstd, const Vehicle *v, bool reserve_path = false) From f71ada4f30c113851fedf37f20643a0706f7f791 Mon Sep 17 00:00:00 2001 From: Tyler Trahan Date: Mon, 25 Mar 2024 13:46:03 -0400 Subject: [PATCH 38/70] Fix #12268: Capitalize "Wait to unbunch" order string (#12375) --- src/lang/english.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index 39d9cb6432..c2a4755d59 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Refit to {STRI STR_ORDER_REFIT_STOP_ORDER :(Refit to {STRING} and stop) STR_ORDER_STOP_ORDER :(Stop) -STR_ORDER_WAIT_TO_UNBUNCH :(wait to unbunch) +STR_ORDER_WAIT_TO_UNBUNCH :(Wait to unbunch) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING1} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Can't use station){POP_COLOUR} {STRING} {STATION} {STRING1} From 84bbe235e4aea9c987bd37dc9477bfbf6fb3f05e Mon Sep 17 00:00:00 2001 From: Rubidium Date: Mon, 25 Mar 2024 21:00:28 +0100 Subject: [PATCH 39/70] Fix: do not send chat to clients that have not authorized yet --- src/network/network_server.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index f63c79bd65..88698226d8 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -1316,7 +1316,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co } else { /* Else find the client to send the message to */ for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { - if (cs->client_id == (ClientID)dest) { + if (cs->client_id == (ClientID)dest && cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) { cs->SendChat(action, from_id, false, msg, data); break; } @@ -1333,7 +1333,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co } } else { for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { - if (cs->client_id == from_id) { + if (cs->client_id == from_id && cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) { cs->SendChat(action, (ClientID)dest, true, msg, data); break; } @@ -1348,7 +1348,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co ci_to = nullptr; for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { ci = cs->GetInfo(); - if (ci != nullptr && ci->client_playas == (CompanyID)dest) { + if (ci != nullptr && ci->client_playas == (CompanyID)dest && cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) { cs->SendChat(action, from_id, false, msg, data); if (cs->client_id == from_id) show_local = false; ci_to = ci; // Remember a client that is in the company for company-name @@ -1380,7 +1380,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co NetworkTextMessage(action, GetDrawStringCompanyColour(ci_own->client_playas), true, name, msg, data); } else { for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { - if (cs->client_id == from_id) { + if (cs->client_id == from_id && cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) { cs->SendChat(action, ci_to->client_id, true, msg, data); } } @@ -1394,7 +1394,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co case DESTTYPE_BROADCAST: for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { - cs->SendChat(action, from_id, false, msg, data); + if (cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) cs->SendChat(action, from_id, false, msg, data); } NetworkAdminChat(action, desttype, from_id, msg, data, from_admin); @@ -1417,7 +1417,7 @@ void NetworkServerSendChat(NetworkAction action, DestType desttype, int dest, co void NetworkServerSendExternalChat(const std::string &source, TextColour colour, const std::string &user, const std::string &msg) { for (NetworkClientSocket *cs : NetworkClientSocket::Iterate()) { - cs->SendExternalChat(source, colour, user, msg); + if (cs->status >= ServerNetworkGameSocketHandler::STATUS_AUTHORIZED) cs->SendExternalChat(source, colour, user, msg); } NetworkTextMessage(NETWORK_ACTION_EXTERNAL_CHAT, colour, false, user, msg, 0, source); } From 9aa6669266efd1e17cb9a157e32a11e0b0304e0e Mon Sep 17 00:00:00 2001 From: Rubidium Date: Mon, 25 Mar 2024 21:03:18 +0100 Subject: [PATCH 40/70] Fix: inconsistent check for client authorized status --- src/network/network_server.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index 88698226d8..cbbe81184e 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -251,7 +251,7 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::CloseConnection(NetworkRecvSta /* Inform other clients of this... strange leaving ;) */ for (NetworkClientSocket *new_cs : NetworkClientSocket::Iterate()) { - if (new_cs->status > STATUS_AUTHORIZED && this != new_cs) { + if (new_cs->status >= STATUS_AUTHORIZED && this != new_cs) { new_cs->SendErrorQuit(this->client_id, NETWORK_ERROR_CONNECTION_LOST); } } @@ -369,7 +369,7 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::SendError(NetworkErrorCode err StringID strid = GetNetworkErrorMsg(error); /* Only send when the current client was in game */ - if (this->status > STATUS_AUTHORIZED) { + if (this->status >= STATUS_AUTHORIZED) { std::string client_name = this->GetClientName(); Debug(net, 1, "'{}' made an error and has been disconnected: {}", client_name, GetString(strid)); From 4751179dc5169538c0dd06dc6b1222618c929813 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 25 Mar 2024 21:35:31 +0000 Subject: [PATCH 41/70] Codefix: Remove unused class member and extraneous spaces. (#12378) --- src/industry_gui.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index 70c83ccf73..fcb3b247e3 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -2655,9 +2655,7 @@ struct IndustryCargoesWindow : public Window { } } - - CargoesFieldType type; ///< Type of field. - void SetStringParameters (WidgetID widget) const override + void SetStringParameters(WidgetID widget) const override { if (widget != WID_IC_CAPTION) return; From 8e12bd35aed324feefe5e0e275eaaa48f10abdbb Mon Sep 17 00:00:00 2001 From: Rubidium Date: Mon, 25 Mar 2024 21:59:04 +0100 Subject: [PATCH 42/70] Fix: server shutdown and newgame packets should be stable The server sends shutdown and newgame (reboot) packets to any connected client. This can be useful, so you can tell clients that are trying to join that the server is restarting. However, that means that packets can be sent before a version check has been done. So, these packets should be in the stable packet range instead of the one that is unstable and guarded by a version check. --- src/network/core/tcp_game.h | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/network/core/tcp_game.h b/src/network/core/tcp_game.h index a381f6aa3b..24cb9c941c 100644 --- a/src/network/core/tcp_game.h +++ b/src/network/core/tcp_game.h @@ -24,10 +24,9 @@ */ enum PacketGameType : uint8_t { /* - * These first four pair of packets (thus eight in - * total) must remain in this order for backward - * and forward compatibility between clients that - * are trying to join directly. + * These first ten packets must remain in this order for backward and forward compatibility + * between clients that are trying to join directly. These packets can be received and/or sent + * by the server before the server has processed the 'join' packet from the client. */ /* Packets sent by socket accepting code without ever constructing a client socket instance. */ @@ -46,6 +45,10 @@ enum PacketGameType : uint8_t { PACKET_SERVER_GAME_INFO, ///< Information about the server. PACKET_CLIENT_GAME_INFO, ///< Request information about the server. + /* A server quitting this game. */ + PACKET_SERVER_NEWGAME, ///< The server is preparing to start a new game. + PACKET_SERVER_SHUTDOWN, ///< The server is shutting down. + /* * Packets after here assume that the client * and server are running the same version. As @@ -121,10 +124,6 @@ enum PacketGameType : uint8_t { PACKET_SERVER_COMPANY_UPDATE, ///< Information (password) of a company changed. PACKET_SERVER_CONFIG_UPDATE, ///< Some network configuration important to the client changed. - /* A server quitting this game. */ - PACKET_SERVER_NEWGAME, ///< The server is preparing to start a new game. - PACKET_SERVER_SHUTDOWN, ///< The server is shutting down. - /* A client quitting. */ PACKET_CLIENT_QUIT, ///< A client tells the server it is going to quit. PACKET_SERVER_QUIT, ///< A server tells that a client has quit. From 575336ef434e5708cb32c3f3d198fbf9492a4bcf Mon Sep 17 00:00:00 2001 From: translators Date: Tue, 26 Mar 2024 04:40:35 +0000 Subject: [PATCH 43/70] Update: Translations from eints swedish: 20 changes by joeax910 greek: 182 changes by gh658804 ukrainian: 11 changes by StepanIvasyn slovak: 45 changes by puco lithuanian: 14 changes by dziugas1959 portuguese (brazilian): 11 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 22 +-- src/lang/greek.txt | 260 +++++++++++++++++++++--------- src/lang/lithuanian.txt | 14 ++ src/lang/slovak.txt | 87 +++++----- src/lang/swedish.txt | 40 ++--- src/lang/ukrainian.txt | 21 +-- 6 files changed, 283 insertions(+), 161 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index bc2ff500c0..1433e179fb 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -392,7 +392,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Abrir in STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Abrir informações gerais da empresa STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Abrir livro de história STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Abrir lista de objetivos -STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Abrir gráficos da empresa e receitas por carga +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Abrir gráficos da empresa e tarifas por carga STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Abrir tabela de classificação das empresas STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Abrir lista de indústrias, cadeia industrial ou financiar a construção de uma nova indústria STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Abrir lista de trens da empresa. Ctrl+Clique para mostrar ou ocultar grupos de veículos, oposto da configuração escolhida @@ -620,8 +620,8 @@ STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLA STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagamento por entregar 10 unidades (ou 10 mil litros) de carga em uma distância de 20 quadrados STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Ativar tudo STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Desativar tudo -STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Mostrar todas as cargas no gráfico de receitas por carga -STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Não mostrar cargas no gráfico de receitas por carga +STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Mostrar todas as cargas no gráfico de tarifas por carga +STR_GRAPH_CARGO_TOOLTIP_DISABLE_ALL :{BLACK}Não mostrar cargas no gráfico de tarifas por carga STR_GRAPH_CARGO_PAYMENT_TOGGLE_CARGO :{BLACK}Mostrar/Ocultar gráfico para o tipo de carga STR_GRAPH_CARGO_PAYMENT_CARGO :{TINY_FONT}{BLACK}{STRING} @@ -1543,8 +1543,8 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Espessura da li STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Mostrar o nome do NewGRF na janela de comprar veículos: {STRING} STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Adicionar uma linha na janela de aquisição de veículos, mostrando a qual NewGRF pertence o veículo selecionado -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar nas janelas de listagem as cargas que os veículos podem transportar: {STRING} -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Se ativado, a carga transportável pelo veículo aparecerá acima dele nas listas de veículos +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar as cargas que os veículos podem transportar nas janelas de listagem: {STRING} +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Se ativado, a carga que o veículo pode transportar aparecerá acima dele nas listas de veículos STR_CONFIG_SETTING_LANDSCAPE :Clima: {STRING} STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Os climas definem a jogabilidade básica dos cenários, com diferentes cargas e requisitos para crescimento das localidades. NewGRFs e Scripts de Jogo permitem um controle mais preciso sobre isso @@ -1584,7 +1584,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Irregular STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Muito Irregular STR_CONFIG_SETTING_VARIETY :Distribuição de variedade: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :Escolher se o mapa conterá tanto áreas montanhosas como áreas planas. Quanto maior a variedade, maiores as diferenças de altura entre as áreas montanhosas e as planas +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Escolher se o mapa conterá tanto áreas montanhosas como áreas planas. Quanto maior a variedade, maiores as diferenças de altura entre as áreas montanhosas e as áreas planas STR_CONFIG_SETTING_RIVER_AMOUNT :Quantidade de rios: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Escolher quantos rios serão gerados @@ -1620,8 +1620,8 @@ STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Área máxima q STR_CONFIG_SETTING_SERVICEATHELIPAD :Manutenção automática de helicópteros em heliportos: {STRING} STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Efetuar manutenção de helicópteros após cada pouso, mesmo se não existir um depósito no aeroporto -STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Ligar ferramentas de paisagismo com ferramentas de trilhos/estradas/água/aeroportos: {STRING} -STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Quando abrir uma barra de ferramentas para um tipo de transporte, também abrir a barra de terraplanagem +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Ligar ferramentas de paisagismo com construção de trilhos/estradas/água/aeroportos: {STRING} +STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Ao abrir a barra de ferramentas de construção para um tipo de transporte, abrir também a barra de ferramentas de paisagismo STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR :Cor do solo usada no minimapa: {STRING} STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Cor do terreno no minimapa @@ -4526,7 +4526,7 @@ STR_REFIT_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Adaptar # Order view STR_ORDERS_CAPTION :{WHITE}{VEHICLE} (Ordens) STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horários -STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de horários +STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visuallização de horários STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - clique em uma ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem STR_ORDER_INDEX :{COMMA}:{NBSP} @@ -4698,7 +4698,7 @@ STR_INVALID_ORDER :{RED} (Ordem In # Time table window STR_TIMETABLE_TITLE :{WHITE}{VEHICLE} (Horários) STR_TIMETABLE_ORDER_VIEW :{BLACK}Ordens -STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Mudar para visualização de ordens +STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de ordens STR_TIMETABLE_TOOLTIP :{BLACK}Horários - clique em uma ordem para selecioná-la @@ -5031,7 +5031,7 @@ STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só STR_ERROR_PROSPECTING_WAS_UNLUCKY :{WHITE}O financiamento falhou em prospectar devido ao azar; tente novamente STR_ERROR_NO_SUITABLE_PLACES_FOR_PROSPECTING :{WHITE}Não havia locais adequados para prospectar por esta indústria STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Não havia locais adequados para indústrias do tipo '{STRING}' -STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modificar os parâmetros de geração do mapa para obter um mapa melhor +STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modifique os parâmetros de geração do mapa para obter um mapa melhor # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Não é possível construir estação ferroviária aqui... diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 24bced900b..0c423ab12c 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -392,7 +392,9 @@ STR_SORT_BY_TYPE :Τύπος STR_SORT_BY_TRANSPORTED :Μεταφέρθηκαν STR_SORT_BY_NUMBER :Αριθμός STR_SORT_BY_PROFIT_LAST_YEAR :Κέρδος προηγούμενου χρόνου +STR_SORT_BY_PROFIT_LAST_PERIOD :Κέρδος προηγούμενης περιόδου STR_SORT_BY_PROFIT_THIS_YEAR :Κέρδος τρέχοντος έτους +STR_SORT_BY_PROFIT_THIS_PERIOD :Κέρδος τρέχουσας περιόδου STR_SORT_BY_AGE :Ηλικία STR_SORT_BY_RELIABILITY :Αξιοπιστία STR_SORT_BY_TOTAL_CAPACITY_PER_CARGOTYPE :Συνολική χωρητικότητα ανά τύπο φορτίου @@ -424,7 +426,9 @@ STR_SORT_BY_TOTAL_PROFIT_LAST_PERIOD :Συνολικ STR_SORT_BY_TOTAL_PROFIT_THIS_YEAR :Συνολικό κέρδος τρέχοντος έτους STR_SORT_BY_TOTAL_PROFIT_THIS_PERIOD :Συνολικό κέρδος τρέχοντος έτους STR_SORT_BY_AVERAGE_PROFIT_LAST_YEAR :Μέσο κέρδος τελευταίου έτους +STR_SORT_BY_AVERAGE_PROFIT_LAST_PERIOD :Μέσος όρος κέρδους προηγούμενης περιόδου STR_SORT_BY_AVERAGE_PROFIT_THIS_YEAR :Μέσος όρος κέρδους τρέχοντος έτους +STR_SORT_BY_AVERAGE_PROFIT_THIS_PERIOD :Μέσος όρος κέρδους τρέχουσας περιόδου # Group by options for vehicle list STR_GROUP_BY_NONE :Καμία @@ -440,27 +444,27 @@ STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Παύσ STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Γρήγορη ταχύτητα παιχνιδιού STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Επιλογές STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Αποθήκευση, εγκατάλειψη, έξοδος -STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Εμφάνιση χάρτη -STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Εμφάνιση του καταλόγου πόλεων -STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Εμφάνιση χρηματοδοτήσεων +STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Εμφάνιση χάρτη, επιπλέον παραθύρου προβολής, ροής εμπορευμάτων ή λίστας πινακίδων +STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Εμφάνιση καταλόγου πόλεων ή ίδρυση πόλης +STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Εμφάνιση λίστας χρηματοδοτήσεων STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Εμφάνιση λίστας σταθμών της εταιρίας STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Εμφάνιση οικονομικών πληροφοριών εταιρίας STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_GENERAL :{BLACK}Εμφάνιση γενικών πληροφοριών της εταιρίας STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Εμφάνιση βιβλίου ιστορίας STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Εμφάνιση λίστας στόχων -STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Εμφάνιση γραφημάτων +STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Εμφάνιση εταιρικών γραφημάτων και ποσοστών πληρωμής φορτίου STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Εμφάνιση πίνακα κατάταξης των εταιριών STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Χρηματοδοτήστε την κατασκευή νέας βιομηχανίας -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Εμφάνιση λίστας τρένων της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα της λίστας ομάδων/οχημάτων -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Εμφάνιση λίστας με τα οδικά οχήματα της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα της λίστας ομάδων/οχημάτων -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Εμφάνιση λίστας με τα πλοία της εταιρίας. Με Ctrl+Κλικ εναλλάσσει το άνοιγμα της λίστας ομάδων/οχημάτων -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Εμφανίστε λίστα με τα αεροσκάφη της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα της λίστας ομάδων/οχημάτων +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Εμφάνιση λίστας με τα τραίνα της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Εμφάνιση λίστας με τα οχήματα δρόμου της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Εμφάνιση λίστας με τα πλοία της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Εμφάνιση λίστας με τα αεροσκάφη της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Μεγέθυνση εικόνας STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Σμίκρυνση εικόνας STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Κατασκευή σιδηροτροχιάς -STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Κατασκευάστε δρόμους -STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Κτίσιμο τραχιοδρόμων -STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Κατασκευή λιμένων +STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Κατασκευή δρόμου +STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Κατασκευή τροχιοδρόμων +STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Κατασκευή υδάτινης διαδρομής STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Κατασκευάστε αεροδρόμια STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Ανοίξτε την μπάρα εργαλείων μορφοποίησης εδάφους για ανύψωση/βύθιση γης, δενδροφύτευση, κλπ. STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Εμφάνιση παραθύρου ήχου/μουσικής @@ -475,15 +479,15 @@ STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Πρό STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Μετακίνηση ημ/νίας εκκίνησης 1 χρόνο πίσω STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Μετακινήστε την ημερομηνία εκκίνησης 1 χρόνο μπροστά STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Πατήστε εδώ για να εισάγετε την χρονιά έναρξης -STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Εμφάνιση χάρτη, καταλόγου πόλεων -STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Δημιουργία τοπίου +STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Εμφάνιση χάρτη, επιπλέον παραθύρου προβολής, λίστας πινακίδων ή λίστας πόλεων ή βιομηχανιών +STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Εμφάνιση μενού δημιουργίας τοπίου ή δημιουργία νέου κόσμου STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Δημιουργία πόλης STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Δημιουργία βιομηχανίας STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Κατασκευή δρόμου -STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Κατασκευή τροχιάς τραμ -STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Φύτευση Δέντρων. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}{BLACK}Κατασκευή τροχιοδρόμου +STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Φύτευση Δέντρων. Ctrl+Κλικ για διαγώνια επιλογή περιοχής. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Τοποθέτηση πινακίδας -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Τοποθέτηση αντικειμένου. Ctrl για διαγώνια επιλογή περιοχής. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Τοποθέτηση αντικειμένου. Ctrl+Κλικ για διαγώνια επιλογή περιοχής. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο # Scenario editor file menu ###length 7 @@ -502,6 +506,7 @@ STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ρυθμίσε STR_SETTINGS_MENU_AI_SETTINGS :Ρυθμίσεις AI STR_SETTINGS_MENU_GAMESCRIPT_SETTINGS :Ρυθμίσεις σενάριου παιχνιδιού STR_SETTINGS_MENU_NEWGRF_SETTINGS :Ρυθμίσεις NewGRF +STR_SETTINGS_MENU_SANDBOX_OPTIONS :Ρυθμίσεις πεδίου δοκιμών STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Επιλογές διαφάνειας STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Εμφάνιση ονομάτων πόλεων STR_SETTINGS_MENU_STATION_NAMES_DISPLAYED :Εμφάνιση ονομάτων σταθμών @@ -522,7 +527,7 @@ STR_FILE_MENU_EXIT :Έξοδος # Map menu STR_MAP_MENU_MAP_OF_WORLD :Χάρτης του κόσμου STR_MAP_MENU_EXTRA_VIEWPORT :Πρόσθετη εμφάνιση -STR_MAP_MENU_LINGRAPH_LEGEND :Υπόμνημα Ροής Φορτίου +STR_MAP_MENU_LINGRAPH_LEGEND :Υπόμνημα ροής φορτίου STR_MAP_MENU_SIGN_LIST :Λίστα πινακίδων # Town menu @@ -581,6 +586,7 @@ STR_NEWS_MENU_DELETE_ALL_MESSAGES :Διαγραφ # About menu STR_ABOUT_MENU_LAND_BLOCK_INFO :Πληροφορίες περιοχής εδάφους +STR_ABOUT_MENU_HELP :Βοήθεια και εγχειρίδια χρήσης STR_ABOUT_MENU_TOGGLE_CONSOLE :Εναλλαγή κονσόλας STR_ABOUT_MENU_AI_DEBUG :Αποσφαλμάτωση AI και δέσμης ενεργειών παιχνιδιού STR_ABOUT_MENU_SCREENSHOT :Στιγμιότυπο οθόνης @@ -589,6 +595,7 @@ STR_ABOUT_MENU_ABOUT_OPENTTD :Σχετικά STR_ABOUT_MENU_SPRITE_ALIGNER :Ευθυγραμμιστής στοιχεών STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Εναλλαγή πλαισίου οριοθέτησης STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Εναλλαγή χρωματισμού λερωμένων τετραγωνίδιων +STR_ABOUT_MENU_TOGGLE_WIDGET_OUTLINES :Εναλλαγή περιγραμμάτων γραφικών στοιχείων ###length 31 STR_DAY_NUMBER_1ST :1ος @@ -696,8 +703,11 @@ STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Μονά STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Ποσοστά απόδοσης εταιρίας (μέγιστη τιμή=1000) STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Αξία εταιρίας +STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Τελευταία 72 λεπτά STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Ποσοστά Πληρωμής Φορτίων +STR_GRAPH_CARGO_PAYMENT_RATES_DAYS :{TINY_FONT}{BLACK}Ημέρες σε μετάβαση +STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLACK}Δευτερόλεπτα σε μετάβαση STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Πληρωμή για την παράδοση 10 μονάδων (ή 10.000 λίτρων) φορτίου σε απόσταση 20 τετραγώνων STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Ενεργοποιήση όλων STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Απενεργοποιήση όλων @@ -715,6 +725,7 @@ STR_GRAPH_KEY_COMPANY_SELECTION_TOOLTIP :{BLACK}Πατή # Company league window STR_COMPANY_LEAGUE_TABLE_CAPTION :{WHITE}Πίνακας Πρωταθλήματος Εταιριών STR_COMPANY_LEAGUE_COMPANY_NAME :{ORANGE}{COMPANY} {BLACK}{COMPANY_NUM} '{STRING}' +STR_COMPANY_LEAGUE_COMPANY_RANK :{YELLOW}#{NUM} STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_ENGINEER :Μηχανικός STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRAFFIC_MANAGER :Διαχειριστής Κυκλοφορίας STR_COMPANY_LEAGUE_PERFORMANCE_TITLE_TRANSPORT_COORDINATOR :Συντονιστής Μεταφορών @@ -749,6 +760,8 @@ STR_PERFORMANCE_DETAIL_TOTAL :{BLACK}Σύνο STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP_YEARS :{BLACK}Αριθμός οχημάτων που είχαν κέρδη το προηγούμενο έτος. Αυτό περιλαμβάνει οδικά οχήματα, τρένα, πλοία και αεροσκάφη STR_PERFORMANCE_DETAIL_VEHICLES_TOOLTIP_PERIODS :{BLACK}Αριθμός οχημάτων που είχαν κέρδη την προηγούμενη περίοδο. Αυτό περιλαμβάνει οδικά οχήματα, τρένα, πλοία και αεροσκάφη STR_PERFORMANCE_DETAIL_STATIONS_TOOLTIP :{BLACK}Αριθμός των πρόσφατα επισκευασμένων σταθμών. Σταθμοί τρένων, στάσεις λεωφορείων, αεροδρόμια, κ.ο.κ. προσμετρώνται ξεχωριστά, ακόμα κι αν ανήκουν στον ίδιο σταθμό. +STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP_YEARS :{BLACK}Το κέρδος του οχήματος με το χαμηλότερο εισόδημα (λαμβάνονται υπόψη μόνο οχήματα παλαιότερα των δύο ετών) +STR_PERFORMANCE_DETAIL_MIN_PROFIT_TOOLTIP_PERIODS :{BLACK}Το κέρδος του οχήματος με το χαμηλότερο εισόδημα (λαμβάνονται υπόψη μόνο οχήματα παλαιότερα των δύο περιόδων) STR_PERFORMANCE_DETAIL_MIN_INCOME_TOOLTIP :{BLACK}Το ποσό των χρημάτων που έγιναν σε ένα τρίμηνο με το μικρότερο κέρδος των τελευταίων 12 τριμήνων STR_PERFORMANCE_DETAIL_MAX_INCOME_TOOLTIP :{BLACK}Το ποσό των χρημάτων που έγιναν σε ένα τρίμηνο με το μεγαλύτερο κέρδος των τελευταίων 12 τριμήνων STR_PERFORMANCE_DETAIL_DELIVERED_TOOLTIP :{BLACK}Μονάδες εμπορεύματος που παραδόθηκαν στα τελευταία τέσσερα τρίμηνα @@ -803,6 +816,7 @@ STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Πατή STR_PLAYLIST_TOOLTIP_CLICK_TO_REMOVE_TRACK :{BLACK}Πατήστε στο τραγούδι για να το αφαιρέσετε από το πρόγραμμα (Προσαρμοσμένο 1 ή 2 μόνο) # Highscore window +STR_HIGHSCORE_TOP_COMPANIES :{BIG_FONT}{BLACK}Κορυφαίες εταιρείες STR_HIGHSCORE_POSITION :{BIG_FONT}{BLACK}{COMMA}, STR_HIGHSCORE_PERFORMANCE_TITLE_BUSINESSMAN :Επαγγελματίας STR_HIGHSCORE_PERFORMANCE_TITLE_ENTREPRENEUR :Πρωτοπόρος @@ -980,6 +994,8 @@ STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD :{WHITE}Το {VE STR_NEWS_VEHICLE_IS_GETTING_VERY_OLD_AND :{WHITE}Το {VEHICLE} πάλιωσε πολύ και χρειάζεται επειγόντως αλλαγή STR_NEWS_TRAIN_IS_STUCK :{WHITE}Το {VEHICLE} δεν μπορεί να βρει δρόμο να συνεχίσει STR_NEWS_VEHICLE_IS_LOST :{WHITE}{G Ο Η Το} {VEHICLE} χάθηκε +STR_NEWS_VEHICLE_UNPROFITABLE_YEAR :{WHITE}{VEHICLE}, το κέρδος του προηγούμενου έτους ήταν {CURRENCY_LONG} +STR_NEWS_VEHICLE_UNPROFITABLE_PERIOD :{WHITE}{VEHICLE}, το κέρδος της προηγούμενης περιόδου ήταν {CURRENCY_LONG} STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{G Ο Η Το} {VEHICLE} δεν μπορεί να μεταβεί στον επόμενο προορισμό λόγω υπερβολικής απόστασης STR_NEWS_ORDER_REFIT_FAILED :{WHITE}Το {VEHICLE} σταμάτησε γιατί μια εντολή μετατροπής απέτυχε @@ -992,6 +1008,7 @@ STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Ένα STR_NEWS_SHOW_VEHICLE_GROUP_TOOLTIP :{BLACK}Ανοίξτε το παράθυρο ομάδων εστιασμένος στην ομάδα του οχήματος STR_NEWS_STATION_NO_LONGER_ACCEPTS_CARGO_LIST :{WHITE}{STATION} δεν δέχεται πλέον: {CARGO_LIST} +STR_NEWS_STATION_NOW_ACCEPTS_CARGO_LIST :{WHITE}{STATION} πλέον δέχεται: {CARGO_LIST} STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Έληξε η προσφορά επιδότησης:{}{}{STRING} από {G τον τη το} {STRING} πρός {G τον τη το} {STRING} δεν θα επιδοτείται πλέον. STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Η επιδότηση αποσύρθηκε:{}{}Η υπηρεσια για {STRING.subs} απο το {STRING} προς το {STRING} δεν επιδοτείται πλέον. @@ -1002,7 +1019,11 @@ STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLAC STR_NEWS_SERVICE_SUBSIDY_AWARDED_TRIPLE :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσία που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει τριπλές τιμές για το/α επόμενο/α {UNITS_YEARS_OR_MINUTES}! STR_NEWS_SERVICE_SUBSIDY_AWARDED_QUADRUPLE :{BIG_FONT}{BLACK}Η επιχορήγηση υπηρεσίας που δόθηκε στην {STRING}!{}{}{STRING} από {STRING} έως {STRING} θα πληρώνει τετραπλές τιμές για το/α επόμενο/α {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_ROAD_REBUILDING_MONTHS :{BIG_FONT}{BLACK}Κυκλοφοριακό χάος στην {TOWN}!{}{}Το πρόγραμμα ανοικοδόμησης δρόμου που χρηματοδοτείται από το {STRING} φέρνει 6 μήνες δυστυχίας στους αυτοκινητιστές! +STR_NEWS_ROAD_REBUILDING_MINUTES :{BIG_FONT}{BLACK}Κυκλοφοριακό χάος στην {TOWN}!{}{}Το πρόγραμμα ανοικοδόμησης δρόμου που χρηματοδοτείται από το {STRING} φέρνει 6 λεπτά δυστυχίας στους οδηγούς! STR_NEWS_EXCLUSIVE_RIGHTS_TITLE :{BIG_FONT}{BLACK}Μονοπώλιο μεταφορών! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MONTHS :{BIG_FONT}{BLACK}Η τοπική αρχή της {TOWN} υπογράφει σύμβαση με την {STRING} για 12 μήνες αποκλειστικών δικαιωμάτων μεταφοράς! +STR_NEWS_EXCLUSIVE_RIGHTS_DESCRIPTION_MINUTES :{BIG_FONT}{BLACK}Η τοπική αρχή της {TOWN} υπογράφει σύμβαση με την {STRING} για 12 λεπτά αποκλειστικών δικαιωμάτων μεταφοράς! # Extra view window STR_EXTRA_VIEWPORT_TITLE :{WHITE}Εμφάνιση {COMMA} @@ -1164,6 +1185,7 @@ STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Επιπ STR_GAME_OPTIONS_SOCIAL_PLUGINS_NONE :{LTBLUE}(δεν έχουν εγκατασταθεί plugins για ενοποίηση με πλατφόρμες κοινωνικής δικτύωσης) +STR_GAME_OPTIONS_SOCIAL_PLUGIN_TITLE :{BLACK}{STRING} ({STRING}) STR_GAME_OPTIONS_SOCIAL_PLUGIN_PLATFORM :{BLACK}Πλατφόρμα: STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE :{BLACK}Plugin state: @@ -1175,6 +1197,7 @@ STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_DUPLICATE :Διπλό πρ STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNSUPPORTED_API :{RED}Μη υποστηριζόμενη έκδοση STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_INVALID_SIGNATURE :{RED}Άκυρη υπογραφή +STR_BASESET_STATUS :{STRING} {RED}({NUM} λείπει/κατεστραμμένο αρχεί{P ο α}) STR_ERROR_RESOLUTION_LIST_FAILED :{WHITE}Αποτυχία ανάκτησης λίστας υποστηριζόμενων αναλύσεων STR_ERROR_FULLSCREEN_FAILED :{WHITE}Θέση του παιχνιδιού σε λειτουργία πλήρης οθόνης απέτυχε @@ -1284,6 +1307,7 @@ STR_CONFIG_SETTING_EXPAND_ALL :{BLACK}Επέκ STR_CONFIG_SETTING_COLLAPSE_ALL :{BLACK}Σύμπτυξη όλων STR_CONFIG_SETTING_RESET_ALL :{BLACK}Επαναφορά όλων των τιμών STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT :(δεν υπάρχει διαθέσιμη επεξήγηση) +STR_CONFIG_SETTING_VALUE :{PUSH_COLOUR}{ORANGE}{STRING}{POP_COLOUR} STR_CONFIG_SETTING_DEFAULT_VALUE :{LTBLUE}Προκαθορισμένη τιμή: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE :{LTBLUE}Τύπος ρύθμισης: {ORANGE}{STRING} STR_CONFIG_SETTING_TYPE_CLIENT :Ρύθμιση πελάτη (δεν αποθηκεύεται στα αποθηκευμένα παιχνίδια, επηρεάζει όλα τα παιχνίδια) @@ -1337,11 +1361,16 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :Αριστερ STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :Κέντρο STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Δεξιά +STR_CONFIG_SETTING_SECONDS_VALUE :{COMMA}{NBSP}δευτερόλεπτ{P 0 ο α} +STR_CONFIG_SETTING_INFINITE_MONEY :Απεριόριστα χρήματα: {STRING} +STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Επιτρέπονται απεριόριστες δαπάνες και απενεργοποίηση της χρεοκοπίας εταιρειών STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Μέγιστο αρχικό δάνειο: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Μέγιστο ποσό που μπορεί να δανειστεί μία εταιρία (χωρίς να λαμβάνεται υπόψη ο πληθωρισμός) +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Μέγιστο ποσό που μπορεί να δανειστεί μία εταιρία (χωρίς να λαμβάνεται υπόψη ο πληθωρισμός). Εάν οριστεί σε "Χωρίς δάνειο", δεν θα είναι διαθέσιμα χρήματα εκτός εάν παρέχονται από ένα Σενάριο Παιχνιδιού ή τη ρύθμιση "Άπειρα χρήματα" +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_VALUE :{CURRENCY_LONG} ###setting-zero-is-special +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_DISABLED :Κανένα δάνειο STR_CONFIG_SETTING_INTEREST_RATE :Επιτόκιο: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Επιτόκιο δανείων· επίσης ελέγχεται ο πληθωρισμός αν είναι ενεργοποιημένος @@ -1361,6 +1390,7 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Θέστε πό STR_CONFIG_SETTING_SUBSIDY_DURATION :Διάρκεια επιδότησης: {STRING} ###length 2 STR_CONFIG_SETTING_SUBSIDY_DURATION_HELPTEXT :Ορίστε τον αριθμό των ετών για τα οποία θα ισχύει η επιδότηση +STR_CONFIG_SETTING_SUBSIDY_DURATION_HELPTEXT_PERIODS :Ορίστε τον αριθμό των περιόδων για τα οποία θα ισχύει η επιδότηση STR_CONFIG_SETTING_SUBSIDY_DURATION_VALUE :{UNITS_YEARS_OR_PERIODS} ###setting-zero-is-special @@ -1378,8 +1408,8 @@ STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Όταν είν STR_CONFIG_SETTING_DISASTERS :Καταστροφές: {STRING} STR_CONFIG_SETTING_DISASTERS_HELPTEXT :Εναλλαγή καταστροφών που μπορούν περιστασιακά να εμποδίσουν ή να καταστρέψουν οχήματα ή υποδομές -STR_CONFIG_SETTING_CITY_APPROVAL :Στάση δημοτικού συμβουλίου ως προς τον μετασχηματισμό της περιοχής: {STRING} -STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Επιλογή πόσο ο θόρυβος και η περιβαλλοντικη καταστροφή άπο εταιρίες επηρεάζουν τα ποσοστά αποδοχής και περαιτέρω έργα στη περιοχή +STR_CONFIG_SETTING_CITY_APPROVAL :Στάση τοπικής αρχής: {STRING} +STR_CONFIG_SETTING_CITY_APPROVAL_HELPTEXT :Επιλογή πόσο ο θόρυβος και η περιβαλλοντικη καταστροφή άπο εταιρίες επηρεάζουν τα ποσοστά αποδοχής και περαιτέρω έργα στην πόλη STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT :Όριο ύψους χάρτη: {STRING} STR_CONFIG_SETTING_MAP_HEIGHT_LIMIT_HELPTEXT :Ορίστε το μέγιστο ύψος του εδάφους του χάρτη. Επιλέγοντας "αυτόματο" μία καλή τιμή θα επιλεχθεί μετά την παραγωγή του εδάφους @@ -1487,6 +1517,7 @@ STR_CONFIG_SETTING_AUTOSCROLL_EVERY_VIEWPORT :Κάθε εμφ STR_CONFIG_SETTING_BRIBE :Επιτρέπεται η δωροδοκία της τοπικής αρχής: {STRING} ###length 2 STR_CONFIG_SETTING_BRIBE_HELPTEXT :Επιτρέπεται στις εταιρείες να προσπαθήσουν να δωροδοκήσουν την τοπική αρχή. Αν η δωροδοκία γίνει αντιληπτή από τον ελεγκτή, η εταιρεία δε θα μπορεί να ενεργήσει στην πόλη για έξι μήνες +STR_CONFIG_SETTING_BRIBE_HELPTEXT_MINUTES :Επιτρέψτε στις εταιρείες να προσπαθήσουν να δωροδοκήσουν την τοπική αρχή της πόλης. Εάν η δωροδοκία γίνει αντιληπτή από επιθεωρητή, η εταιρεία δεν θα μπορεί να δρα στην πόλη για έξι λεπτά STR_CONFIG_SETTING_ALLOW_EXCLUSIVE :Επιτρέπεται η αγορά αποκλειστικών δικαιωμάτων μεταφοράς: {STRING} ###length 2 @@ -1549,22 +1580,30 @@ STR_CONFIG_SETTING_ORDER_REVIEW_ON :Για όλα STR_CONFIG_SETTING_WARN_INCOME_LESS :Ειδοποίηση όταν τα έσοδα ενός οχήματου είναι αρνητικά: {STRING} ###length 2 -STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Όταν είναι ενεργοποιημένη, στέλνεται μήνυμα ειδήσεων όταν κάποιο όχημα δεν έχει αποφέρει κέρδος εντός ενός ημερολογιακού έτους +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Όταν είναι ενεργοποιημένη, εμφανίζεται ειδοποίηση όταν κάποιο όχημα δεν έχει αποφέρει κέρδος εντός ενός έτους +STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT_PERIOD :Όταν είναι ενεργοποιημένη, εμφανίζεται ειδοποίηση όταν κάποιο όχημα δεν έχει αποφέρει κέρδος εντός μιας περιόδου STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Τα οχήματα δεν λήγουν ποτέ: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Όταν είναι ενεργοποιημένη, όλα τα μοντέλα οχημάτων παραμένουν διαθέσιμα για πάντα μετά την παρουσίασή τους STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Χρονομέτρηση: {STRING} +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Επιλέξτε τις μονάδες χρονομέτρησης του παιχνιδιού. Αυτό δεν μπορεί να αλλάξει αργότερα.{}{}Η λειτουργία "βάσει ημερολογίου" είναι η κλασική εμπειρία του OpenTTD, με το ένα έτος να αποτελείται από 12 μήνες και κάθε μήνα να έχει 28-31 ημέρες.{}{}Εναλλακτικά, στη λειτουργία "βάσει ρολογιού τοίχου", η παραγωγή φορτίου και τα οικονομικά μεγέθη βασίζονται σε προσαυξήσεις ενός λεπτού, που είναι περίπου όσο διαρκεί ένας μήνας 30 ημερών σε λειτουργία "βάσει ημερολογίου". Αυτά ομαδοποιούνται σε περιόδους 12 λεπτών, που ισοδυναμούν με ένα έτος σε λειτουργία "βάσει ημερολογίου".{}{}Σε κάθε λειτουργία υπάρχει πάντα ένα κλασικό ημερολόγιο, το οποίο χρησιμοποιείται για τις ημερομηνίες εισαγωγής οχημάτων, σπιτιών και άλλων υποδομών ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Ημερολόγιο +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Ρολόι τοίχου +STR_CONFIG_SETTING_MINUTES_PER_YEAR :Λεπτά ανά έτος: {STRING} +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Επιλέξτε τον αριθμό των λεπτών σε ένα ημερολογιακό έτος. Η προεπιλογή είναι 12 λεπτά. Ρυθμίστε στο 0 για να σταματήσετε την αλλαγή της ημερολογιακής ώρας. Αυτή η ρύθμιση δεν επηρεάζει την οικονομική προσομοίωση του παιχνιδιού και είναι διαθέσιμη μόνο όταν χρησιμοποιείτε χρονομέτρηση ρολογιού τοίχου +STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special +STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0 (ο ημερολογιακός χρόνος έχει παγώσει) STR_CONFIG_SETTING_TOWN_CARGO_SCALE :Κλίμακα παραγωγής φορτίου πόλης: {STRING} STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Κλιμάκωση της παραγωγής φορτίου των πόλεων κατά αυτό το ποσοστό STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :Κλιμάκωση της παραγωγής φορτίου των βιομηχανιών: {STRING} STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Κλιμάκωση της παραγωγής φορτίου των βιομηχανιών κατά αυτό το ποσοστό +STR_CONFIG_SETTING_CARGO_SCALE_VALUE :{NUM}% STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Αυτόματη ανανέωση όταν ένα όχημα παλιώνει: {STRING} STR_CONFIG_SETTING_AUTORENEW_VEHICLE_HELPTEXT :Όταν είναι ενεργοποιημένη, τα οχήματα που πλησιάζουν το τέλος της ζωής τους αντικαθίσταται αυτόματα όταν πληρούνται οι προϋποθέσεις αντικατάστασής του @@ -1656,6 +1695,7 @@ STR_CONFIG_SETTING_ROAD_SIDE_LEFT :Οδηγούν STR_CONFIG_SETTING_ROAD_SIDE_RIGHT :Οδηγούν από δεξιά STR_CONFIG_SETTING_HEIGHTMAP_ROTATION :Περιστροφή χάρτη υψομετρίας: {STRING} +STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_TOOLTIP :Επιλέξτε με ποιον τρόπο θα περιστραφεί η εικόνα του ύψους χάρτη, για να ταιριάζει στον κόσμο του παιχνιδιού ###length 2 STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_COUNTER_CLOCKWISE :Αριστερόστροφη STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Δεξιόστροφη @@ -1668,8 +1708,8 @@ STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Ένα STR_CONFIG_SETTING_STATION_SPREAD :Μέγιστη έκταση σταθμού: {STRING} STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Μέγιστη περιοχή στην οποία μπορούν να εκτείνονται τα τμήματα ενός σταθμού. Σημειώστε ότι υψηλές τιμές καθυστερούν το παιχνίδι -STR_CONFIG_SETTING_SERVICEATHELIPAD :Αυτόματη επισκευή ελικοπτέρων στα ελικοδρόμια: {STRING} -STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Επισκευή ελικοπτέρων μετά από κάθε προσγείωση, ακόμη κι αν δεν υπάρχει υπόστεγο στο αεροδρόμιο +STR_CONFIG_SETTING_SERVICEATHELIPAD :Αυτόματη συντήρηση ελικοπτέρων στα ελικοδρόμια: {STRING} +STR_CONFIG_SETTING_SERVICEATHELIPAD_HELPTEXT :Συντήρηση ελικοπτέρων μετά από κάθε προσγείωση, ακόμη κι αν δεν υπάρχει υπόστεγο στο αεροδρόμιο STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR :Σύνδεση γραμμής εργαλείων τοπίου με γραμμή εργαλείων σιδηροτροχιάς/δρόμου/νερού/αεροδρομίου: {STRING} STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT :Όταν ανοίγει γραμμή εργαλείων κατασκευής κάποιου τύπου μεταφορικών μέσων, ανοίγει επίσης η γραμμή εργαλείων για τη μορφοποίηση του εδάφους @@ -1803,7 +1843,7 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Διατήρη STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Διατήρηση ανοικτών των εργαλείων για γέφυρες, σήραγγες, κλπ μετά από τη χρήση STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Αυτόματη αφαίρεση των σηματοδοτών κατά τη διάρκεια κατασκευής σιδηροτροχιών: {STRING} -STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Αυτόματη αφαίρεση σηματοδοτών κατά τη διάρκεια κατασκευής σιδηροτροχιών εάν οι σηματοδότες είναι στη διαδρομή. Σημειώστε ότι αυτό μπορεί δυνητικά να οδηγήσει σε συγκρούσεις τρένων. +STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Αυτόματη αφαίρεση σηματοδοτών κατά τη διάρκεια κατασκευής σιδηροτροχιών εάν οι σηματοδότες είναι στη διαδρομή. Σημειώστε ότι αυτό μπορεί δυνητικά να οδηγήσει σε συγκρούσεις τρένων STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Όριο ταχύτητας γρήγορης κίνησης: {STRING} STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Όριο ταχύτητας του παιχνιδιού όταν είναι ενεργοποιημένη η γρήγορη ταχύτητα. 0 = κανένα όριο (όσο γρήγορα επιτρέπει ο υπολογιστής σας). Τιμές κάτω του 100% επιβραδύνουν το παιχνίδι. Το ανώτατο όριο εξαρτάται από τις προδιαγραφές του υπολογιστή σας και μπορεί να μεταβάλλεται ανάλογα με το παιχνίδι. @@ -1880,7 +1920,7 @@ STR_CONFIG_SETTING_SERVINT_TRAINS :Προκαθο STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα οχήματα τρένων, όταν δεν δίνεται άλλο διάστημα για το όχημα STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES :Προκαθορισμένο διάστημα μεταξύ συντηρήσεων για οδικά οχήματα: {STRING} STR_CONFIG_SETTING_SERVINT_ROAD_VEHICLES_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα οδικά οχήματα, όταν δεν δίνεται άλλο διάστημα για το όχημα -STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Προκαθορισμένο διάστημα επισκευών αεροσκαφών: {STRING} +STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Προκαθορισμένο διάστημα συντήρησης αεροσκαφών: {STRING} STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα αεροσκάφη, όταν δεν δίνεται άλλο διάστημα για το αεροσκάφος STR_CONFIG_SETTING_SERVINT_SHIPS :Προκαθορισμένο διάστημα μεταξύ επισκευών για τα πλοία: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα πλοία, όταν δεν δίνεται άλλο διάστημα για το πλοίο @@ -1957,7 +1997,7 @@ 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_HELPTEXT :Η χρονιά στην οποία το παιχνίδι τελειώνει για λόγους σκορ. Στο τέλος αυτής της χρονιάς, το σκορ της εταιρίας καταγράφεται και η οθόνη με τα κορυφαία σκορ εμφανίζεται, αλλά οι παίκτες μπορούν να συνεχίσουν να παίζουν μετά από αυτή.{}Εάν αυτή είναι πριν από την χρονιά έναρξης, η οθόνη με τα κορυφαία σκορ δεν εμφανίζεται ποτέ STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Ποτέ @@ -2169,6 +2209,7 @@ STR_CONFIG_SETTING_ACCOUNTING :Λογιστι STR_CONFIG_SETTING_VEHICLES :Οχήματα STR_CONFIG_SETTING_VEHICLES_PHYSICS :Φυσική STR_CONFIG_SETTING_VEHICLES_ROUTING :Δρομολογήσεις +STR_CONFIG_SETTING_VEHICLES_ORDERS :Εντολές STR_CONFIG_SETTING_LIMITATIONS :Περιορισμοί STR_CONFIG_SETTING_ACCIDENTS :Καταστροφές/Ατυχήματα STR_CONFIG_SETTING_GENWORLD :Δημιουργία Κόσμου @@ -2234,6 +2275,7 @@ STR_INTRO_MULTIPLAYER :{BLACK}Παιχ STR_INTRO_GAME_OPTIONS :{BLACK}Επιλογές Παιχνιδιού STR_INTRO_HIGHSCORE :{BLACK}Πίνακας Βαθμολογιών +STR_INTRO_HELP :{BLACK}Βοήθεια και εγχειρίδια χρήσης STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις STR_INTRO_NEWGRF_SETTINGS :{BLACK}Ρυθμίσεις NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Διαδικτυακό Περιεχόμενο @@ -2278,7 +2320,8 @@ STR_ABANDON_GAME_QUERY :{YELLOW}Είσ STR_ABANDON_SCENARIO_QUERY :{YELLOW}Είστε σίγουροι ότι θέλετε να εγκαταλείψετε το σενάριο; # Help window -STR_HELP_WINDOW_CAPTION :{WHITE}Βοήθεια και εγχειρίδια +STR_HELP_WINDOW_CAPTION :{WHITE}Βοήθεια και εγχειρίδια χρήσης +STR_HELP_WINDOW_WEBSITES :{BLACK}Ιστοσελίδες STR_HELP_WINDOW_DOCUMENTS :{BLACK}Έγγραφα STR_HELP_WINDOW_README :{BLACK}Εμφάνιση readme STR_HELP_WINDOW_CHANGELOG :{BLACK}Ιστορικό αλλαγών @@ -2290,7 +2333,7 @@ STR_HELP_WINDOW_BUGTRACKER :{BLACK}Αναφ STR_HELP_WINDOW_COMMUNITY :{BLACK}Κοινότητα # Cheat window -STR_CHEATS :{WHITE}Απατεωνιές +STR_CHEATS :{WHITE}Ρυθμίσεις πεδίου δοκιμών STR_CHEAT_MONEY :{LTBLUE}Αύξηση χρημάτων κατά {CURRENCY_LONG} STR_CHEAT_CHANGE_COMPANY :{LTBLUE}Παίζετε με την εταιρία: {ORANGE}{COMMA} STR_CHEAT_EXTRA_DYNAMITE :{LTBLUE}Μαγική μπουλντόζα (αφαιρεί βιομηχανίες, αμετακίνητα αντικείμενα): {ORANGE}{STRING} @@ -2301,6 +2344,7 @@ STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Μετα STR_CHEAT_CHANGE_DATE :{LTBLUE}Αλλαγή ημ/νίας: {ORANGE}{DATE_SHORT} STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Αλλαγή τρέχοντος έτους STR_CHEAT_SETUP_PROD :{LTBLUE}Ενεργοποίηση δυνατότητας αλλαγής τιμών παραγωγής: {ORANGE}{STRING} +STR_CHEAT_STATION_RATING :{LTBLUE}Ορισμός βαθμολογιών σταθμών στο 100%: {ORANGE}{STRING} # Livery window STR_LIVERY_CAPTION :{WHITE}{COMPANY} - Νέος Χρωματισμός @@ -2313,15 +2357,17 @@ STR_LIVERY_AIRCRAFT_TOOLTIP :{BLACK}Εμφά STR_LIVERY_TRAIN_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων τραίνων STR_LIVERY_ROAD_VEHICLE_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων οχημάτων δρόμου STR_LIVERY_SHIP_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων πλοίων +STR_LIVERY_AIRCRAFT_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων αεροσκαφών STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Επιλογή του βασικού χρώματος για το επιλεγμένο θέμα. Με Ctrl+Κλικ ορίζεται το χρώμα σε κάθε θέμα STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Επιλογή του δευτερεύοντος χρώματος για το επιλεγμένο μοτίβο. Με Ctrl+Κλικ ορίζεται το χρώμα για κάθε θέμα STR_LIVERY_PANEL_TOOLTIP :{BLACK}Επιλέξτε το χρωματικό μοτίβο για αλλαγή ή πολλαπλά μοτίβα με Ctrl+Κλικ. Πατήστε στο κουτάκι για να επιλέξετε τη χρήση του μοτίβου STR_LIVERY_TRAIN_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες τραίνων STR_LIVERY_ROAD_VEHICLE_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες οχημάτων δρόμου STR_LIVERY_SHIP_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες πλοίων +STR_LIVERY_AIRCRAFT_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες αεροσκαφών ###length 23 -STR_LIVERY_DEFAULT :Πρότυπο Μοτίβου Χρωμάτων +STR_LIVERY_DEFAULT :Προεπιλεγμένο Μοτίβο Χρωμάτων STR_LIVERY_STEAM :Ατμοκίνητη Μηχανή STR_LIVERY_DIESEL :Πετρελαιοκίνητη Μηχανή STR_LIVERY_ELECTRIC :Ηλεκτροκίνητη Μηχανή @@ -2424,6 +2470,9 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Μέγε STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Μέγεθος χάρτη του παιχνιδιού{}Πατήστε για ταξινόμηση ανά περιοχή STR_NETWORK_SERVER_LIST_DATE_CAPTION :{BLACK}Ημερομηνία STR_NETWORK_SERVER_LIST_DATE_CAPTION_TOOLTIP :{BLACK}Τρέχουσα ημερομηνία +STR_NETWORK_SERVER_LIST_PLAY_TIME_SHORT :{BLACK}{NUM}ω {NUM}λ +STR_NETWORK_SERVER_LIST_PLAY_TIME_CAPTION :{BLACK}Χρόνος παιχνιδιού +STR_NETWORK_SERVER_LIST_PLAY_TIME_CAPTION_TOOLTIP :{BLACK}Χρόνος παιχνιδιού χωρίς{}το παιχνίδι να βρίσκεται σε παύση STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Γλώσσα, έκδοση διακομιστή, κλπ. STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Πατήστε σε ένα παιχνίδι από τη λίστα για το επιλέξετε @@ -2439,6 +2488,7 @@ STR_NETWORK_SERVER_LIST_SERVER_ADDRESS :{SILVER}Διε STR_NETWORK_SERVER_LIST_INVITE_CODE :{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_PLAY_TIME :{SILVER}Χρόνος παιχνιδιού: {WHITE}{NUM}ω {NUM}λ STR_NETWORK_SERVER_LIST_GAMESCRIPT :{SILVER}Script Παιχνιδιού: {WHITE}{STRING} (v{NUM}) STR_NETWORK_SERVER_LIST_PASSWORD :{SILVER}Προστατευμένο με κωδικό! STR_NETWORK_SERVER_LIST_SERVER_OFFLINE :{SILVER}ΔΙΑΚΟΜΙΣΤΗΣ ΕΚΤΟΣ ΛΕΙΤΟΥΡΓΙΑΣ @@ -2616,6 +2666,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Το ό STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Το όνομα του server σας δεν έχει οριστεί. Το όνομα μπορεί να οριστεί την κορυφή του παραθύρου Multiplayer STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Η έκδοση του πελάτη δεν ταιριάζει με την έκδοση του διακομιστή STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Λανθασμένος κωδικός +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Δεν βρίσκεστε στη λίστα των επιτρεπόμενων πελατών STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Ο διακομιστής είναι γεμάτος STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Έχει απαγορευτεί η είσοδος σας από τον διακομιστή STR_NETWORK_ERROR_KICKED :{WHITE}Έχετε εκδιωχθεί από το παιχνίδι @@ -2674,13 +2725,13 @@ STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :αναμονή STR_NETWORK_MESSAGE_CLIENT_LEAVING :αποχώρηση STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} συμμετέχει στο παιχνίδι -STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} συμμετέχει στο παιχνίδι (Πελάτης #{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} συμμετέχει στην εταιρία #{2:NUM} +STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {0:STRING} συμμετέχει στο παιχνίδι (Πελάτης #{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {0:STRING} συμμετέχει στην εταιρία #{2:NUM} STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} συμμετέχει στους θεατές -STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ξεκίνησε μια νέα εταιρία (#{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} αποχώρησε από το παιχνίδι ({2:STRING}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {0:STRING} ξεκίνησε μια νέα εταιρία (#{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {0:STRING} αποχώρησε από το παιχνίδι ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} άλλαξαν το όνομά τους σε {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} έδωσε {2:CURRENCY_LONG} σε {1:STRING} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {0:STRING} έδωσε {2:CURRENCY_LONG} στον {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Ο διακομιστής έκλεισε την συνεδρία STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Ο διακομιστής επανεκκινεί...{}Παρακαλώ περιμένετε... STR_NETWORK_MESSAGE_KICKED :*** {STRING} εκδιώχθηκε. Λόγος: ({STRING}) @@ -2827,14 +2878,14 @@ STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Κατασκε STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Κατασκευή Μονοτρόχιου Σιδηρόδρομου STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Κατασκευή Σιδηροδρόμου Maglev -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Κατασκευή σιδηρόδρομου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση σιδηρόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Κατασκευή σιδηροδρομικής γραμμής χρησιμοποιώντας την Αυτόματη Σιδηροτροχιά. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση σιδηρόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Κατασκευή αμαξοστάσιου (για αγορά και επισκευή τρένων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Κατασκευή σιδηροτροχιάς. Ctrl+Κλικ για αφαίρεση σιδηροτροχιάς. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Κατασκευή σιδηροτροχιάς με χρήση της Αυτόματης Σιδηροτροχιάς. Ctrl+Κλικ για αφαίρεση σιδηροτροχιάς. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Κατασκευή αμαξοστάσιου (για αγορά και επισκευή τρένων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Μετατροπή σιδηροτροχιάς σε σημείο καθοδήγησης. Με Ctrl ενεργοποιείται η συνένωση σημείων καθοδήγησης. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Κατασκευή σταθμού τρένων. Με Ctrl ενεργοποιείται η συνένωση σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Κατασκευή σηματοδοτών. Με Ctrl εναλλάσσονται σηματοφόροι/σηματοδότες{}Με σύρσιμο κατασκευάζονται σηματοδότες κατά μήκος μιας ευθείας σιδηροτροχιάς. Με το Ctrl πατημένο, κατασκευάζονται σηματοδότες μέχρι την επομένη διασταύρωση ή τον επόμενο σηματοδότη{}Με Ctrl+Κλικ εναλλάσσεται το άνοιγμα του παραθύρου επιλογής σηματοδοτών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας σιδηρόδρομου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Κατασκευή τούνελ σιδηρόδρομου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Κατασκευή σταθμού τρένων. Ctrl+Κλικ για επιλογή άλλου σταθμού προς συνένωση. Με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Κατασκευή σηματοδοτών. Ctrl+Κλικ για κατασκευή του εναλλακτικού στυλ σηματοδότη{}Με Κλικ+σύρσιμο κατασκευάζονται σηματοδότες κατά μήκος μιας σιδηροτροχιάς ανά το ορισμένο διάστημα. Ctrl+Κλικ+σύρσιμο για κατασκευή σηματοδοτών μέχρι την επομένη διασταύρωση, σταθμό ή σηματοδότη{}Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας σιδηρόδρομου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Κατασκευή τούνελ σιδηρόδρομου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης για σιδηρόδρομους, σηματοδότες, σημείων καθοδήγησης και σταθμών. Κρατώντας πατημένο το Ctrl αφαιρεί και τον σιδηρόδρομο από τα σημεία καθοδήγησης και σταθμούς STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Μετατροπή/Αναβάθμιση του τύπου γραμμής. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους @@ -2895,6 +2946,10 @@ STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Αύξη STR_SELECT_RAIL_BRIDGE_CAPTION :{WHITE}Επιλογή Γέφυρας STR_SELECT_ROAD_BRIDGE_CAPTION :{WHITE}Επιλογή Γέφυρας Δρόμου STR_SELECT_BRIDGE_SELECTION_TOOLTIP :{BLACK}Επιλογή γέφυρας - πατήστε στην γέφυρα της προτίμησής σας για κατασκευή +STR_SELECT_BRIDGE_INFO_NAME :{GOLD}{STRING} +STR_SELECT_BRIDGE_INFO_NAME_MAX_SPEED :{GOLD}{STRING},{} {VELOCITY} +STR_SELECT_BRIDGE_INFO_NAME_COST :{GOLD}{0:STRING},{} {WHITE}{2:CURRENCY_LONG} +STR_SELECT_BRIDGE_INFO_NAME_MAX_SPEED_COST :{GOLD}{STRING},{} {VELOCITY} {WHITE}{CURRENCY_LONG} STR_BRIDGE_NAME_SUSPENSION_STEEL :Ατσάλινη, με Αναρτήσεις STR_BRIDGE_NAME_GIRDER_STEEL :Ατσάλινη, με Δοκούς STR_BRIDGE_NAME_CANTILEVER_STEEL :Ατσάλινη, Κρεμαστή @@ -2908,20 +2963,20 @@ STR_BRIDGE_TUBULAR_SILICON :Σιλικόν # Road construction toolbar STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Κατασκευή Δρόμου STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Κατασκευή Τροχιόδρομου -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Κατασκευή κομματιού δρόμου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση δρόμου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Κατασκευή τμήματος δρόμου. Ctrl+Κλικ για αφαίρεση τμήματος δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Κατασκευή κομματιού τροχιοδρόμου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση τροχιόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Κατασκευή οδικού δικτύου με χρήση της λειτουργίας Αυτόματου Δρόμου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση δρόμου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Κατασκευή τροχιοδρόμου με χρήση της λειτουργίας Αυτόματης Γραμμής. Το Ctrl εναλλάσσει την κατασκευή/αφαίρεση τροχιόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων (για αγορά και επισκευή οχημάτων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων δρόμου (για αγορά και επισκευή οχημάτων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων τραμ (για αγορά και επισκευή οχημάτων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Κατασκευή σταθμού λεωφορείων. Με Ctrl ενεργοποιείται η συνένωση σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Κατασκευή επιβατικού σταθμού τραμ. Με Ctrl ενεργοποιείται η συνένωση επιβατικών σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Κατασκευή σταθμού φόρτωσης φορτηγών. Με Ctrl ενεργοποιείται η συνένωση σταθμών φόρτωσης. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Κατασκευή εμπορευματικού σταθμού τραμ. Με Ctrl ενεργοποιείται συνένωση εμπορευματικών σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Ενεργοποίηση/Απενεργοποίηση μονόδρομων -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας δρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Κατασκευή γέφυρας τροχιοδρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Κατασκευή τούνελ δρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Κατασκευή τούνελ δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Κατασκευή τούνελ τροχιοδρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης για αυτοκινητόδρομους STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Εναλλαγή κτισίματος/αφαίρεσης της κατασκευής τροχιόδρομου @@ -2995,7 +3050,7 @@ STR_STATION_BUILD_NOISE :{BLACK}Παρα # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Μορφοποίηση εδάφους -STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Χαμηλώστε μια γωνία του εδάφους. Με σύρσιμο υποβαθμίζετε την πρώτη επιλεγμένη γωνία και ισοπεδώνετε την επιφάνεια στο νέο ύψος. Με Ctrl επιλέγετε την επιφάνεια διαγώνια. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Χαμήλωμα μιας γωνίας εδάφους. Κλικ+σύρσιμο για χαμήλωμα της πρώτης επιλεγμένης γωνίας και ισοπέδωση της επιφάνειας στο νέο ύψος της γωνίας. Με Ctrl+Κλικ+σύρσιμο επιλέγεται η επιφάνεια διαγώνια. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Ανυψώστε μια γωνία του εδάφους. Με σύρσιμο ανυψώνεται η πρώτη επιλεγμένη γωνία και ισοπεδώνεται η επιφάνεια στο νέο ύψος. Με Ctrl επιλέγετε την επιφάνεια διαγώνια. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστος STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Ισοπέδωση της γης στο ύψος της πρώτης γωνίας. Με Ctrl επιλέγετε την επιφάνεια διαγώνια. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Αγορά γης για μελλοντική χρήση. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους @@ -3107,7 +3162,7 @@ STR_INDUSTRY_CARGOES_SELECT_INDUSTRY_TOOLTIP :{BLACK}Επιλ # Land area window STR_LAND_AREA_INFORMATION_CAPTION :{WHITE}Πληροφορίες Περιοχής Εδάφους -STR_LAND_AREA_INFORMATION_LOCATION_TOOLTIP :{BLACK}Κεντράρετε την κεντρική προβολή στην τοποθεσία του τετραγωνίδιου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του τετραγωνίδιου +STR_LAND_AREA_INFORMATION_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κεντρικής προβολής στην τοποθεσία του τετραγωνίδιου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του τετραγωνίδιου STR_LAND_AREA_INFORMATION_COST_TO_CLEAR_N_A :{BLACK}Κόστος καθαρισμού: {LTBLUE}Μ/Δ STR_LAND_AREA_INFORMATION_COST_TO_CLEAR :{BLACK}Κόστος καθαρισμού: {RED}{CURRENCY_LONG} STR_LAND_AREA_INFORMATION_REVENUE_WHEN_CLEARED :{BLACK}Κέρδος όταν καθαριστεί: {LTBLUE}{CURRENCY_LONG} @@ -3119,7 +3174,8 @@ STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Ιδιο STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY :{BLACK}Τοπική αρχή: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_LOCAL_AUTHORITY_NONE :Καμιά STR_LAND_AREA_INFORMATION_LANDINFO_COORDS :{BLACK}Συντεταγμένες: {LTBLUE}{NUM} x {NUM} x {NUM} -STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Κατασκευή: {LTBLUE}{DATE_LONG} +STR_LAND_AREA_INFORMATION_LANDINFO_INDEX :{BLACK}Αρ. τετραγωνιδίου: {LTBLUE}{NUM} ({HEX}) +STR_LAND_AREA_INFORMATION_BUILD_DATE :{BLACK}Κατασκευή/Ανακατασκευή: {LTBLUE}{DATE_LONG} STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Κατηγορία σταθμού: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Τύπος σταθμού: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_AIRPORT_CLASS :{BLACK}Κατηγορία αεροδρομίου: {LTBLUE}{STRING} @@ -3330,6 +3386,7 @@ STR_MAPGEN_NUMBER_OF_TOWNS_TOOLTIP :Επιλέξτ STR_MAPGEN_TOWN_NAME_LABEL :{BLACK}Ονόματα πόλεων: STR_MAPGEN_TOWN_NAME_DROPDOWN_TOOLTIP :{BLACK}Επιλογή στυλ ονομάτων πόλεων STR_MAPGEN_DATE :{BLACK}Ημερομηνία: +STR_MAPGEN_DATE_TOOLTIP :{BLACK}Επιλέξτε ημερομηνία έναρξης STR_MAPGEN_NUMBER_OF_INDUSTRIES :{BLACK}Αριθμός βιομηχανιών: STR_MAPGEN_NUMBER_OF_INDUSTRIES_TOOLTIP :{BLACK}Επιλέξτε την πυκνότητα των βιομηχανιών ή έναν προσαρμοσμένο αριθμό STR_MAPGEN_HEIGHTMAP_HEIGHT :{BLACK}Υψηλότερη κορυφή: @@ -3414,6 +3471,7 @@ STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Επίπ STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Δημιουργία επίπεδου εδάφους STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Τυχαίο έδαφος STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Ύψος επίπεδης γης: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_TOOLTIP :{BLACK}Επιλέξτε το ύψος της ξηράς πάνω από την επιφάνεια της θάλασσας STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Μετακίνηση του ύψους του επίπεδου εδάφους ένα κάτω STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Μετακίνηση του ύψους του επίπεδου εδάφους ένα πάνω @@ -3500,6 +3558,7 @@ STR_SAVE_PRESET_SAVE :{BLACK}Αποθ STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Αποθήκευση προκαθορισμένου, χρησιμοποιώντας το επιλεγμένο όνομα # NewGRF parameters window +STR_BASEGRF_PARAMETERS_CAPTION :{WHITE}Αλλαγή παραμέτρων βασικού σετ γραφικών STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Αλλαγή παραμέτρων NewGRF STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Κλείσιμο STR_NEWGRF_PARAMETERS_RESET :{BLACK}Επαναφορά @@ -3516,6 +3575,7 @@ STR_NEWGRF_INSPECT_PARENT_TOOLTIP :{BLACK}Επιθ STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT :{STRING} στο {HEX} STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_OBJECT :Αντικείμενο STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_RAIL_TYPE :Τύπος σιδηροτροχιάς +STR_NEWGRF_INSPECT_CAPTION_OBJECT_AT_ROAD_TYPE :Τύπος δρόμου STR_NEWGRF_INSPECT_QUERY_CAPTION :{WHITE}Μεταβλητή NewGRF 60+x παράμετρος (δεκαεξαδικό) @@ -3534,6 +3594,7 @@ STR_SPRITE_ALIGNER_MOVE_TOOLTIP :{BLACK}Μετα STR_SPRITE_ALIGNER_CENTRE_OFFSET :{BLACK}Μετατόπιση κέντρου STR_SPRITE_ALIGNER_CENTRE_SPRITE :{BLACK}Ευθυγραμμισμένα sprite +STR_SPRITE_ALIGNER_CROSSHAIR :{BLACK}Σταυρός στόχου STR_SPRITE_ALIGNER_RESET_BUTTON :{BLACK}Επαναφορά σχετικού STR_SPRITE_ALIGNER_RESET_TOOLTIP :{BLACK}Επαναφορά των τρεχούμενων σχετικών στιγμάτων @@ -3648,6 +3709,7 @@ STR_TOWN_VIEW_TOWN_CAPTION :{WHITE}{TOWN} STR_TOWN_VIEW_CITY_CAPTION :{WHITE}{TOWN} (Πόλη) STR_TOWN_VIEW_POPULATION_HOUSES :{BLACK}Πληθυσμός: {ORANGE}{COMMA}{BLACK} Σπίτια: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_LAST_MONTH_MAX :{BLACK}{CARGO_LIST} προηγούμενος μήνας: {ORANGE}{COMMA}{BLACK} μέγιστο: {ORANGE}{COMMA} +STR_TOWN_VIEW_CARGO_LAST_MINUTE_MAX :{BLACK}{CARGO_LIST} τελευταίο λεπτό: {ORANGE}{COMMA}{BLACK} μεγ.: {ORANGE}{COMMA} STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH :{BLACK}Εμπορεύματα που χρειάζονται για την επέκταση της πόλης: STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_GENERAL :{ORANGE}{STRING}{RED} απαιτείται STR_TOWN_VIEW_CARGO_FOR_TOWNGROWTH_REQUIRED_WINTER :{ORANGE}{STRING}{BLACK} απαιτείται τον χειμώνα @@ -3753,6 +3815,7 @@ STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Υπηρ STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} από τον σταθμό {STRING} προς τον σταθμό {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Πατήστε στην υπηρεσία για κεντράρισμα στην βιομηχανία/πόλη. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της βιομηχανίας/πόλης STR_SUBSIDIES_OFFERED_EXPIRY_DATE :ανά {DATE_SHORT} +STR_SUBSIDIES_OFFERED_EXPIRY_TIME :μέσα σε {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :έως {DATE_SHORT} STR_SUBSIDIES_SUBSIDISED_EXPIRY_TIME :{UNITS_MONTHS_OR_MINUTES} απομένουν @@ -3778,6 +3841,12 @@ STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOI STR_STATION_LIST_NONE :{YELLOW}- Κανένας - STR_STATION_LIST_SELECT_ALL_FACILITIES :{BLACK}Επιλογή όλων των εγκαταστάσεων STR_STATION_LIST_CARGO_FILTER_ALL_AND_NO_RATING :Όλα τα είδη φορτίων και χωρίς βαθμολογία +STR_STATION_LIST_CARGO_FILTER_MULTIPLE :Πολλαπλά είδη φορτίων +STR_STATION_LIST_CARGO_FILTER_NO_CARGO_TYPES :Κανένα είδος φορτίου +STR_STATION_LIST_CARGO_FILTER_ONLY_NO_RATING :Μόνο καμία βαθμολογία φορτίου +STR_STATION_LIST_CARGO_FILTER_SELECT_ALL :Επιλογή όλων και χωρίς βαθμολογία +STR_STATION_LIST_CARGO_FILTER_NO_RATING :Καμία βαθμολογία φορτίου +STR_STATION_LIST_CARGO_FILTER_EXPAND :Εμφάνιση περισσότερων... # Station view window STR_STATION_VIEW_CAPTION :{WHITE}{STATION} {STATION_FEATURES} @@ -3946,6 +4015,7 @@ STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Όνομα Δι STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Εισάγετε το χρηματικό ποσό που θέλετε να δώσετε STR_BUY_COMPANY_MESSAGE :{WHITE}Ψάχνουμε μία εταιρία μεταφορών για να εξαγοράσει την εταιρία μας.{}{}Θέλετε να εξαγοράσετε την {COMPANY} για {CURRENCY_LONG}; +STR_BUY_COMPANY_HOSTILE_TAKEOVER :{WHITE}Σε μια εχθρική εξαγορά της {COMPANY} θα αγοράσετε όλα τα περιουσιακά στοιχεία, θα εξοφλήσετε όλα τα δάνεια και θα πληρώσετε κέρδη δύο ετών.{}{}Το σύνολο εκτιμάται ότι είναι {CURRENCY_LONG}.{}{}Θέλετε να προχωρήσετε με αυτήν την εχθρική εξαγορά; # Company infrastructure window STR_COMPANY_INFRASTRUCTURE_VIEW_CAPTION :{WHITE}Υποδομή της {COMPANY} @@ -3973,12 +4043,13 @@ STR_INDUSTRY_DIRECTORY_ITEM_PRODMORE :{ORANGE}{INDUST 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_ALL_TYPES :Όλα τα είδη φορτίου STR_INDUSTRY_DIRECTORY_FILTER_NONE :Καμία # Industry view STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTRY} STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Παραγωγή προηγούμενου μήνα: +STR_INDUSTRY_VIEW_PRODUCTION_LAST_MINUTE_TITLE :{BLACK}Παραγωγή τελευταίου λεπτού: STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% μεταφέρθηκαν) STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα εικόνας στην περιοχή της βιομηχανίας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην περιοχή της βιομηχανίας STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Επίπεδο παραγωγής: {YELLOW}{COMMA}% @@ -4017,16 +4088,17 @@ STR_VEHICLE_LIST_AVAILABLE_AIRCRAFT :Διαθέσι STR_VEHICLE_LIST_MANAGE_LIST :{BLACK}Διαχείριση λίστας STR_VEHICLE_LIST_MANAGE_LIST_TOOLTIP :{BLACK}Στείλτε οδηγίες σε όλα τα οχήματα σε αυτήν τη λίστα STR_VEHICLE_LIST_REPLACE_VEHICLES :Αντικατάσταση οχημάτων -STR_VEHICLE_LIST_SEND_FOR_SERVICING :Στείλτε για Επισκευή +STR_VEHICLE_LIST_SEND_FOR_SERVICING :Στείλτε για επισκευή +STR_VEHICLE_LIST_CREATE_GROUP :Δημιουργία ομάδας STR_VEHICLE_LIST_PROFIT_THIS_YEAR_LAST_YEAR :{TINY_FONT}{BLACK}Κέρδος αυτό το έτος: {CURRENCY_LONG} (προηγούμενο έτος: {CURRENCY_LONG}) -STR_VEHICLE_LIST_PROFIT_THIS_PERIOD_LAST_PERIOD :{TINY_FONT}{BLACK}Κέρδος αυτήν την περίοδο: {CURRENCY_LONG} (τελευταία περίοδος: {CURRENCY_LONG}) +STR_VEHICLE_LIST_PROFIT_THIS_PERIOD_LAST_PERIOD :{TINY_FONT}{BLACK}Κέρδος αυτή την περίοδο: {CURRENCY_LONG} (τελευταία περίοδο: {CURRENCY_LONG}) STR_VEHICLE_LIST_CARGO :[{CARGO_LIST}] STR_VEHICLE_LIST_NAME_AND_CARGO :{STRING} {STRING} -STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Στείλτε στο Υπόστεγο -STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Στείλτε στο Αμαξοστάσιο -STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :Στείλε στο Ναυπηγείο -STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :Στείλε στο Υπόστεγο +STR_VEHICLE_LIST_SEND_TRAIN_TO_DEPOT :Στείλτε στο αμαξοστάσιο +STR_VEHICLE_LIST_SEND_ROAD_VEHICLE_TO_DEPOT :Στείλτε στο αμαξοστάσιο +STR_VEHICLE_LIST_SEND_SHIP_TO_DEPOT :Στείλε στο ναυπηγείο +STR_VEHICLE_LIST_SEND_AIRCRAFT_TO_HANGAR :Στείλε στο υπόστεγο STR_VEHICLE_LIST_MASS_STOP_LIST_TOOLTIP :{BLACK}Πατήστε για να σταματήσουν όλα τα οχήματα στη λίστα STR_VEHICLE_LIST_MASS_START_LIST_TOOLTIP :{BLACK}Πατήστε για να ξεκινήσουν όλα τα οχήματα στη λίστα @@ -4117,7 +4189,7 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Εύρο STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Τύπος αεροσκάφους: {GOLD}{STRING} ###length 3 -STR_CARGO_TYPE_FILTER_ALL :Όλα τα είδη φορτίων +STR_CARGO_TYPE_FILTER_ALL :Όλα τα είδη φορτίου STR_CARGO_TYPE_FILTER_FREIGHT :Φορτίο STR_CARGO_TYPE_FILTER_FREIGHT.geniki :Φορτίου STR_CARGO_TYPE_FILTER_NONE :Κανένα @@ -4149,7 +4221,7 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορ ###length VEHICLE_TYPES 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_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Αγορά και μετατροπή του επιλεγμένου πλοίου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Αγορά και μετατροπή του επιλεγμένου αεροσκάφους. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά ###length VEHICLE_TYPES @@ -4245,7 +4317,7 @@ STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Κλων STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του τρένου μαζί με τα όλα τα βαγόνια. Πατήστε αυτό το κουμπί και μετά σε κάποιο τρένο μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του οχήματος. Πατήστε αυτό το κουμπί και μετά σε κάποιο όχημα μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο ενός πλοίου. Πατήστε αυτό το κουμπί και μετά σε κάποιο πλοίο μέσα ή έξω από το ναυπηγείο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του αεροσκάφους. Πατήστε αυτό το κουμπί και μετά σε κάποιο αεροσκάφος μέσα στο ή έξω από το υπόστεγο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Αγορά αντιγράφου του αεροσκάφους. Πατήστε αυτό το κουμπί και μετά σε κάποιο αεροσκάφος μέσα ή έξω από το υπόστεγο. Με Ctrl+Κλικ θα διαμοιραστούν τις εντολές. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του αμαξοστάσιου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης στην τοποθεσία του αμαξοστασίου @@ -4295,8 +4367,15 @@ STR_ENGINE_PREVIEW_AIRCRAFT.geniki :αεροσκά STR_ENGINE_PREVIEW_SHIP :{G=n}πλοίου STR_ENGINE_PREVIEW_SHIP.geniki :πλοίου +STR_ENGINE_PREVIEW_TEXT3 :{BLACK}{STRING}{}{5:STRING}{}{STRING} +STR_ENGINE_PREVIEW_TEXT4 :{BLACK}{STRING}{}{STRING}{}{STRING}{}{STRING} STR_ENGINE_PREVIEW_COST_WEIGHT :Κόστος: {CURRENCY_LONG} Βάρος: {WEIGHT_SHORT} STR_ENGINE_PREVIEW_COST_MAX_SPEED :Κόστος: {CURRENCY_LONG} Μεγ. Ταχύτητα: {VELOCITY} +STR_ENGINE_PREVIEW_SPEED_POWER :Ταχύτητα: {VELOCITY} Ισχύς: {POWER} +STR_ENGINE_PREVIEW_SPEED_POWER_MAX_TE :Ταχύτητα: {VELOCITY} Ισχύς: {POWER} Μέγ. Ε.Δ: {FORCE} +STR_ENGINE_PREVIEW_TYPE :Τύπος αεροσκάφους: {STRING} +STR_ENGINE_PREVIEW_TYPE_RANGE :Τύπος αεροσκάφους: {STRING} Εμβέλεια: {COMMA} τετραγωνίδια +STR_ENGINE_PREVIEW_RUNCOST_YEAR :Τρέχον κόστος: {CURRENCY_LONG}/έτος STR_ENGINE_PREVIEW_RUNCOST_PERIOD :Τρέχον κόστος: {CURRENCY_LONG}/περίοδο STR_ENGINE_PREVIEW_CAPACITY :Χωρητικότητα: {CARGO_LONG} STR_ENGINE_PREVIEW_CAPACITY_2 :Χωρητικότητα: {CARGO_LONG}, {CARGO_LONG} @@ -4362,10 +4441,10 @@ STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Κεντ STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Κεντράρετε την κεντρική προβολή στην τοποθεσία του αεροσκάφους. Με διπλό κλικ θα ακολουθηθεί το αεροσκάφος στην κεντρική προβολή. Το Ctrl+Κλικ ανοίγει μία νέα προβολή στην τοποθεσία του αεροσκάφους ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το τρένο στο αμαξοστάσιο. Με Ctrl+Κλικ κάνει μόνο επισκευή -STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το όχημα στο αμαξοστάσιο. Με Ctrl+Κλικ κάνει μόνο επισκευή -STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το πλοίο στο ναυπηγείο. Με Ctrl+Κλικ κάνει μόνο επισκευή -STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το αεροσκάφος στο υπόστεγο. Με Ctrl+Κλικ κάνει μόνο επισκευή +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το τρένο στο αμαξοστάσιο. Με Ctrl+Κλικ κάνει μόνο συντήρηση +STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το όχημα στο αμαξοστάσιο. Με Ctrl+Κλικ κάνει μόνο συντήρηση +STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το πλοίο στο ναυπηγείο. Με Ctrl+Κλικ κάνει μόνο συντήρηση +STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το αεροσκάφος στο υπόστεγο. Με Ctrl+Κλικ κάνει μόνο συντήρηση ###length VEHICLE_TYPES STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Αυτό θα αγοράσει αντίγραφο του τρένου μαζί με όλα τα βαγόνια. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά @@ -4376,7 +4455,7 @@ STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Αυτό STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Αναγκάστε το τρένο να προχωρήσει χωρίς να περιμένει το σηματοδότη να το επιτρέψει STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Αναστροφή κατεύθυνσης τρένου STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Εξανάγκαση του οχήματος να κάνει αναστροφή -STR_VEHICLE_VIEW_ORDER_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στον προορισμό της παραγγελίας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του προορισμού της παραγγελίας +STR_VEHICLE_VIEW_ORDER_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στον προορισμό της εντολής. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του προορισμού της εντολής ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_REFIT_TOOLTIP :{BLACK}Μετατροπή του τρένου για μεταφορά διαφορετικού φορτίου @@ -4405,6 +4484,7 @@ STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Τρέχ # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Φόρτωση / Εκφόρτωση STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Αναχωρεί +STR_VEHICLE_STATUS_WAITING_UNBUNCHING :{LTBLUE}Αναμονή για αποσύνδεση STR_VEHICLE_STATUS_CRASHED :{RED}Καταστράφηκε! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Χαλασμένο STR_VEHICLE_STATUS_STOPPED :{RED}Σταματημένο @@ -4413,16 +4493,17 @@ STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Χωρίς STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Αναμονή για ελεύθερη τροχιά STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Υπερβολικά μακριά από τον επόμενο προορισμό -STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}Πάει προς {STATION}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}{1:VELOCITY} - Κατεύθυνση για το {0:STATION} STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Δεν έχει εντολές, {VELOCITY} -STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}Πορεία προς {WAYPOINT}, {VELOCITY} -STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}Κατεύθυνση για το {DEPOT}, {VELOCITY} -STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}Επισκευή στο {DEPOT}, {VELOCITY} +STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}{1:VELOCITY} - Κατεύθυνση για το {0:WAYPOINT} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Κατεύθυνση για το {0:DEPOT} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Συντήρηση στο {0:DEPOT} +STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_UNBUNCH_VEL :{LTBLUE}{1:VELOCITY} - Αποσύνδεση και συντήρηση στο {0:DEPOT} -STR_VEHICLE_STATUS_CANNOT_REACH_STATION_VEL :{LTBLUE}Δεν υπάρχει πρόσβαση στο {STATION}, {VELOCITY} -STR_VEHICLE_STATUS_CANNOT_REACH_WAYPOINT_VEL :{LTBLUE}Δεν υπάρχει πρόσβαση στο {WAYPOINT}, {VELOCITY} -STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_VEL :{ORANGE}Δεν υπάρχει πρόσβαση στο {DEPOT}, {VELOCITY} -STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_SERVICE_VEL :{LTBLUE}Δεν υπάρχει πρόσβαση στο {DEPOT}, {VELOCITY} +STR_VEHICLE_STATUS_CANNOT_REACH_STATION_VEL :{LTBLUE}{1:VELOCITY} - Δεν υπάρχει πρόσβαση στο {0:STATION} +STR_VEHICLE_STATUS_CANNOT_REACH_WAYPOINT_VEL :{LTBLUE}{1:VELOCITY} - Δεν υπάρχει πρόσβαση στο {0:WAYPOINT} +STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Δεν υπάρχει πρόσβαση στο {0:DEPOT} +STR_VEHICLE_STATUS_CANNOT_REACH_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Δεν υπάρχει πρόσβαση στο {0:DEPOT} # Vehicle stopped/started animations ###length 2 @@ -4455,6 +4536,8 @@ STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Βάρο STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Κέρδη αυτό το έτος: {LTBLUE}{CURRENCY_LONG} (προηγούμενου έτους: {CURRENCY_LONG}) STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR_MIN_PERFORMANCE :{BLACK}Φετινό κέρδος: {LTBLUE}{CURRENCY_LONG} (Περσινό: {CURRENCY_LONG}) {BLACK}Ελάχιστη απόδοση: {LTBLUE}{POWER_TO_WEIGHT} +STR_VEHICLE_INFO_PROFIT_THIS_PERIOD_LAST_PERIOD :{BLACK}Κέρδος αυτή την περίοδο: {LTBLUE}{CURRENCY_LONG} (τελευταία περίοδο: {CURRENCY_LONG}) +STR_VEHICLE_INFO_PROFIT_THIS_PERIOD_LAST_PERIOD_MIN_PERFORMANCE :{BLACK}Κέρδος αυτή την περίοδο: {LTBLUE}{CURRENCY_LONG} (τελευταία περίοδο: {CURRENCY_LONG}) {BLACK}Ελάχ. απόδοση: {LTBLUE}{POWER_TO_WEIGHT} STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Αξιοπιστία: {LTBLUE}{COMMA}% {BLACK}Καταρρεύσεις μετά από την τελευταία επισκευή: {LTBLUE}{COMMA} STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Κατασκευή: {LTBLUE}{NUM}{BLACK} Αξία: {LTBLUE}{CURRENCY_LONG} @@ -4466,18 +4549,21 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Χωρη STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Έσοδα μεταφοράς: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Διάστημα μεταξύ επισκευών: {LTBLUE}{COMMA}{NBSP}ημέρες{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Διάστημα μεταξύ επισκευών: {LTBLUE}{COMMA}{NBSP}λεπτά{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Διάστημα μεταξύ συντηρήσεων: {LTBLUE}{COMMA}{NBSP}λεπτ{P ό ά}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Διάστημα επισκευών: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Τελευταίο service: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Τελευταίο service: {LTBLUE}{NUM} λεπτ{P 0 ό ά} πριν STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Αύξηση του διαστήματος συντήρησης κατά 10 ημέρες. Ctrl+Click για αύξηση του διαστήματος συντήρησης κατά 5 ημέρες STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Αύξηση του διαστήματος συντήρησης κατά 5 λεπτά. Ctrl+Click για αύξηση του διαστήματος συντήρησης κατά 1 λεπτό +STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Αύξηση του διαστήματος εξυπηρέτησης κατά 10 τοις εκατό. Ctrl+Click για αύξηση του διαστήματος εξυπηρέτησης κατά 5 τοις εκατό STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :Μειώστε το διάστημα μεταξύ των σέρβις κατά 10 ημέρες. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 5 ημέρες STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :Μειώστε το διάστημα μεταξύ των σέρβις κατά 5 λεπτά. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 1 λεπτό STR_VEHICLE_DETAILS_DECREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :Μειώστε το διάστημα μεταξύ των σέρβις κατά 10 τοις εκατό. Ctrl+Click για να μειώσετε το διάστημα συντήρησης κατά 5 τοις εκατό. STR_SERVICE_INTERVAL_DROPDOWN_TOOLTIP :{BLACK}Αλλάξτε τον τύπο διαστήματος επισκευών STR_VEHICLE_DETAILS_DEFAULT :Προκαθορισμένο +STR_VEHICLE_DETAILS_DAYS :Ημέρες +STR_VEHICLE_DETAILS_MINUTES :Λεπτά STR_VEHICLE_DETAILS_PERCENT :Ποσοστό ###length VEHICLE_TYPES @@ -4541,7 +4627,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE STR_ORDERS_TIMETABLE_VIEW :{BLACK}Δρομολόγια STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Αλλαγή σε προβολή δρομολογίων -STR_ORDERS_LIST_TOOLTIP :{BLACK}Λίστα εντολών - πατήστε σε μια εντολή για να την επιλέξετε. Με Ctrl+Κλικ γίνεται μετακίνηση στον προορισμό της οδηγίας +STR_ORDERS_LIST_TOOLTIP :{BLACK}Λίστα εντολών - πατήστε σε μια εντολή για να την επιλέξετε. Ctrl+Κλικ για μετακίνηση στον προορισμό της εντολής STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} {STRING} @@ -4580,9 +4666,14 @@ STR_ORDER_DROP_REFIT_AUTO_ANY :Διαθέσι STR_ORDER_DROP_GO_ALWAYS_DEPOT :Πάντα πήγαινε STR_ORDER_DROP_SERVICE_DEPOT :Επισκευή εάν χρειάζεται STR_ORDER_DROP_HALT_DEPOT :Στάση +STR_ORDER_DROP_UNBUNCH :Αποδέσμευση # Depot action tooltips, one per vehicle type ###length VEHICLE_TYPES +STR_ORDER_TRAIN_DEPOT_ACTION_TOOLTIP :{BLACK}Επιλέξτε την ενέργεια που θα εκτελεστεί σε αυτό το αμαξοστάσιο +STR_ORDER_ROAD_DEPOT_ACTION_TOOLTIP :{BLACK}Επιλέξτε την ενέργεια που θα εκτελεστεί σε αυτό το αμαξοστάσιο +STR_ORDER_SHIP_DEPOT_ACTION_TOOLTIP :{BLACK}Επιλέξτε την ενέργεια που θα εκτελεστεί σε αυτό το αμαξοστάσιο +STR_ORDER_HANGAR_ACTION_TOOLTIP :{BLACK}Επιλέξτε την ενέργεια που θα εκτελεστεί σε αυτό το υπόστεγο αεροπλάνων ###next-name-looks-similar STR_ORDER_CONDITIONAL_VARIABLE_TOOLTIP :{BLACK}Δεδομένα οχήματος για να βασιστεί το άλμα @@ -4603,7 +4694,7 @@ STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Πως STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :είναι ίσο με STR_ORDER_CONDITIONAL_COMPARATOR_NOT_EQUALS :δεν είναι ίσο με STR_ORDER_CONDITIONAL_COMPARATOR_LESS_THAN :είναι μικρότερο από -STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :είναι μικρότερο ή ίσο από +STR_ORDER_CONDITIONAL_COMPARATOR_LESS_EQUALS :είναι μικρότερο από ή ίσο με STR_ORDER_CONDITIONAL_COMPARATOR_MORE_THAN :είναι περισσότερο από STR_ORDER_CONDITIONAL_COMPARATOR_MORE_EQUALS :είναι περισσότερο από ή ισο με STR_ORDER_CONDITIONAL_COMPARATOR_IS_TRUE :είναι αληθές @@ -4613,20 +4704,20 @@ STR_ORDER_CONDITIONAL_VALUE_TOOLTIP :{BLACK}Η τι STR_ORDER_CONDITIONAL_VALUE_CAPT :{WHITE}Δώστε τίμη για να συγκριθεί STR_ORDERS_SKIP_BUTTON :{BLACK}Παράκαμψη -STR_ORDERS_SKIP_TOOLTIP :{BLACK}Παρακάμπτει την τρέχουσα εντολή και ξεκινά την επόμενη. Με Ctrl+Κλικ παρακάμπτεται η επιλεγμένη εντολή +STR_ORDERS_SKIP_TOOLTIP :{BLACK}Παρακάμπτει την τρέχουσα εντολή και ξεκινά την επόμενη. Ctrl+Κλικ για παράκαμψη της επιλεγμένης εντολής STR_ORDERS_DELETE_BUTTON :{BLACK}Διαγραφή STR_ORDERS_DELETE_TOOLTIP :{BLACK}Διαγραφή της επιλεγμένης εντολής STR_ORDERS_DELETE_ALL_TOOLTIP :{BLACK}Διαγραφή όλων των εντολών STR_ORDERS_STOP_SHARING_BUTTON :{BLACK}Διακοπή μοιράσματος -STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Διακοπή μοιράσματος της λίστας εντολών. Με Ctrl+Κλικ διαγράφονται επιπλέον όλες τις εντολές από αυτό το όχημα +STR_ORDERS_STOP_SHARING_TOOLTIP :{BLACK}Διακοπή διαμοιρασμού της λίστας εντολών. Με Ctrl+Κλικ επιπλέον διαγράφονται όλες οι εντολές για αυτό το όχημα STR_ORDERS_GO_TO_BUTTON :{BLACK}Πήγαινε Στο STR_ORDER_GO_TO_NEAREST_DEPOT :Πήγαινε στο κοντινότερο αμαξοστάσιο STR_ORDER_GO_TO_NEAREST_HANGAR :Πήγαινε στο κοντινότερο υπόστεγο STR_ORDER_CONDITIONAL :Εκτέλεση εντόλης υπο προυπόθεση STR_ORDER_SHARE :Μοίρασμα εντολών -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Εισάγετε μια νέα εντολή πριν την επιλεγμένη ή προσθέστε στο τέλος της λίστας. Με Ctrl οι εντολές σταθμού γίνονται «πλήρης φόρτωση οποιουδήποτε εμπορεύματος», οι εντολές καθοδήγησης «χωρίς στάση» και οι εντολές αμαξοστασίου «επισκευή». Με «ίδιες εντολές» ή με Ctrl το όχημα θα έχει τις ίδιες εντολές με το επιλεγμένο. Πατώντας πάνω σε κάποιο όχημα αντιγράφονται οι εντολές από αυτό. Μια εντολή για αμαξοστάσιο απενεργοποιεί την αυτόματη επισκευή του οχήματος +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Εισάγετε μια νέα εντολή πριν την επιλεγμένη ή προσθέστε στο τέλος της λίστας. Ctrl+Κλικ σε έναν σταθμό για ορισμό εντολής σε "πλήρης φόρτωση οποιουδήποτε εμπορεύματος", σε σημείο διαδρομής για αντιστροφή εντολής "χωρίς στάση εξ ορισμού" ή σε αμαξοστάσιο για "αποσύνδεση". Κάντε κλικ σε άλλο όχημα για να αντιγράψετε τις εντολές του ή Ctrl+Click για διαμοιρασμό εντολών. Μια εντολή αμαξοστασίου απενεργοποιεί την αυτόματη συντήρηση του οχήματος STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Εμφάνιση όλων των οχημάτων που μοιράζονται αυτό το δρομολόγιο @@ -4652,6 +4743,7 @@ STR_ORDER_REFIT_ORDER :(Μετατρο STR_ORDER_REFIT_STOP_ORDER :(Μετατροπή σε {STRING} και στάση) STR_ORDER_STOP_ORDER :(Στάση) +STR_ORDER_WAIT_TO_UNBUNCH :(αναμονή προς αποσύνδεση) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Δεν μπορείτε να χρησιμοποιήσετε τον σταθμό){POP_COLOUR} {STRING} {STATION} {STRING} @@ -4729,8 +4821,13 @@ STR_TIMETABLE_STATUS_ON_TIME :{BLACK}Αυτό STR_TIMETABLE_STATUS_LATE :{BLACK}Αυτό το όχημα έχει καθυστερήσει κατά {STRING} STR_TIMETABLE_STATUS_EARLY :{BLACK}Το όχημα εκτελεί το δρομολόγιο του κατά {STRING} νωρίτερα STR_TIMETABLE_STATUS_NOT_STARTED :{BLACK}Αυτό το δρομολόγιο ακόμα δεν έχει ξεκινήσει +STR_TIMETABLE_STATUS_START_AT_DATE :{BLACK}Αυτό το δρομολόγιο θα ξεκινήσει στις {STRING} +STR_TIMETABLE_STATUS_START_IN_SECONDS :{BLACK}Αυτό το δρομολόγιο θα ξεκινήσει σε {COMMA} δευτερόλεπτα +STR_TIMETABLE_START :{BLACK}Εκκίνηση δρομολογίου +STR_TIMETABLE_START_TOOLTIP :{BLACK}Επιλέξτε πότε ξεκινά αυτό το δρομολόγιο. Ctrl+Click για ομοιόμορφη κατανομή της εκκίνησης όλων των οχημάτων που μοιράζονται αυτήν την εντολή με βάση τη σχετική τους εντολή, εάν η εντολή είναι πλήρως προγραμματισμένη +STR_TIMETABLE_START_SECONDS_QUERY :Δευτερόλεπτα μέχρι την έναρξη του δρομολογίου STR_TIMETABLE_CHANGE_TIME :{BLACK}Αλλαγή Χρόνων STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Αλλάζει ο χρόνος που παίρνει η επιλεγμένη επιλογή για να εκτελεστεί @@ -4739,7 +4836,7 @@ STR_TIMETABLE_CLEAR_TIME :{BLACK}Εκκα STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Εκκαθαρίζει το χρόνο για την επιλεγμένη εντολή. Ctrl+Κλικ σβήνει τον χρόνο για όλες τις εντολές STR_TIMETABLE_CHANGE_SPEED :{BLACK}Αλλαγή Ορίου Ταχύτητας -STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Αλλαγή της μέγιστης ταχύτητας ταξιδιού της επιλεγμένης εντολής +STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Αλλαγή της μέγιστης ταχύτητας ταξιδιού της επιλεγμένης εντολής. Ctrl+Κλικ για ορισμό της ταχύτητας ταξιδιού όλων των εντολών STR_TIMETABLE_CLEAR_SPEED :{BLACK}Εκκαθάριση Ορίου Ταχύτητας STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Καθαρίζει τη μέγιστη ταχύτητα ταξιδιού της επιλεγμένης εντολής @@ -5116,6 +5213,11 @@ STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Αδύν STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Λάθος τύπος αμαξοστάσιου # Depot unbunching related errors +STR_ERROR_UNBUNCHING_ONLY_ONE_ALLOWED :{WHITE}... μπορεί να έχει μόνο μια εντολή αποσύνδεσης +STR_ERROR_UNBUNCHING_NO_FULL_LOAD :{WHITE}... δεν μπορούν να χρησιμοποιηθούν εντολές πλήρους φόρτωσης, όταν το όχημα έχει εντολή αποδέσμευσης +STR_ERROR_UNBUNCHING_NO_UNBUNCHING_FULL_LOAD :{WHITE}... δεν είναι δυνατή η αποδέσμευση οχήματος που έχει εντολή πλήρους φόρτωσης +STR_ERROR_UNBUNCHING_NO_CONDITIONAL :{WHITE}... δεν μπορούν να χρησιμοποιηθούν εντολές υπό όρους, όταν το όχημα έχει εντολή αποδέσμευσης +STR_ERROR_UNBUNCHING_NO_UNBUNCHING_CONDITIONAL :{WHITE}... δεν είναι δυνατή η αποδέσμευση οχήματος που έχει εντολές υπό όρους # Autoreplace related errors STR_ERROR_TRAIN_TOO_LONG_AFTER_REPLACEMENT :{WHITE}Το {VEHICLE} είναι πολύ μεγάλο μετά την ανανέωση @@ -5320,6 +5422,8 @@ STR_ERROR_NO_AIRPORT :{WHITE}Δεν STR_ERROR_NO_STOP_COMPATIBLE_ROAD_TYPE :{WHITE}Δεν υπάρχουν στάσεις με συμβατό τύπο δρόμου STR_ERROR_NO_STOP_COMPATIBLE_TRAM_TYPE :{WHITE}Δεν υπάρχουν στάσεις με συμβατό τύπο τραμ STR_ERROR_NO_STOP_ARTICULATED_VEHICLE :{WHITE}Δεν υπάρχουν στάσεις που να είναι κατάλληλες για αρθρωτά οδικά οχήματα.{}Τα αρθρωτά οδικά οχήματα απαιτούν μια στάση-πέρασμα (drive-through) και όχι κλειστή στάση +STR_ERROR_AIRPORT_NO_PLANES :{WHITE}Το αεροπλάνο αυτό δεν μπορεί να προσγειωθεί σε αυτό το ελικοδρόμιο +STR_ERROR_AIRPORT_NO_HELICOPTERS :{WHITE}Το ελικόπτερο αυτό δεν μπορεί να προσγειωθεί σε αυτό το αεροδρόμιο STR_ERROR_NO_RAIL_WAYPOINT :{WHITE}Δεν υπάρχει σιδηροδρομικό σημείο STR_ERROR_NO_BUOY :{WHITE}Δεν υπάρχει σημαδούρα diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 4c761c6713..606fe189ce 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -385,6 +385,14 @@ STR_COLOUR_WHITE :Balta STR_COLOUR_RANDOM :Atsitiktinė ###length 17 +STR_COLOUR_SECONDARY_DARK_BLUE :Tamsiai mėlynas/-a +STR_COLOUR_SECONDARY_LIGHT_BLUE :Šviesiai mėlynas/-a +STR_COLOUR_SECONDARY_GREEN :Žalias/-a +STR_COLOUR_SECONDARY_DARK_GREEN :Tamsiai žalias/-a +STR_COLOUR_SECONDARY_BLUE :Mėlynas/-a +STR_COLOUR_SECONDARY_CREAM :Kremas +STR_COLOUR_SECONDARY_BROWN :Rudas/-a +STR_COLOUR_SECONDARY_GREY :Pilkas/-a # Units used in OpenTTD @@ -1173,7 +1181,10 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Pažymė STR_GAME_OPTIONS_GUI_SCALE_1X :1x +STR_GAME_OPTIONS_GUI_SCALE_2X :2x +STR_GAME_OPTIONS_GUI_SCALE_3X :3x STR_GAME_OPTIONS_GUI_SCALE_4X :4x +STR_GAME_OPTIONS_GUI_SCALE_5X :5x STR_GAME_OPTIONS_GRAPHICS :{BLACK}Grafika @@ -1311,6 +1322,7 @@ STR_CONFIG_SETTING_TYPE_GAME_MENU :žaidimo (įra STR_CONFIG_SETTING_TYPE_GAME_INGAME :žaidimo (įrašoma kiekvieną kartą išsaugant žaidimą. Galioja tik šiuo metu aktyviai kompanijai ir tik aktyviam žaidimui) STR_CONFIG_SETTING_TYPE_COMPANY_MENU :kompanijos (įrašoma pradedant naują žaidimą) STR_CONFIG_SETTING_TYPE_COMPANY_INGAME :kompanijos (įrašoma kiekvieną kartą išsaugant žaidimą. Galioja tik šiuo metu aktyviai kompanijai) +STR_CONFIG_SETTING_RESET_ALL_CONFIRMATION_DIALOG_CAPTION :{WHITE}Atsargiai! STR_CONFIG_SETTING_RESET_ALL_CONFIRMATION_DIALOG_TEXT :{WHITE}Šis veiksmas iš naujo nustatys visus žaidimo nustatymus į numatytąsias vertes.{}Ar tikrai norite tęsti? STR_CONFIG_SETTING_RESTRICT_CATEGORY :{BLACK}Kategorija: @@ -1567,8 +1579,10 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Kartą atsirad ###length 2 +STR_CONFIG_SETTING_MINUTES_PER_YEAR :Minutės per metus: {STRING} ###setting-zero-is-special +STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0 (kalendoriaus laikas užšalęs/sustabdytas) STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Automatiškai atnaujinti transporto priemonę, kai ji pasensta: {STRING} diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index 591057b241..4284d488a5 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -1079,6 +1079,7 @@ STR_GAME_OPTIONS_CURRENCY_INR :Indická rupia STR_GAME_OPTIONS_CURRENCY_IDR :Indonézska rupia STR_GAME_OPTIONS_CURRENCY_MYR :Malajzijský ringgit STR_GAME_OPTIONS_CURRENCY_LVL :Lotyšské Laty +STR_GAME_OPTIONS_CURRENCY_PTE :Portugalské Escudo STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Automatické ukladanie STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Výber intervalu automatického ukladania @@ -1121,9 +1122,9 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Mierkov STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Začiarknutím tohto políčka zmeníte úkosy podľa veľkosti rozhrania STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Použite tradičné sprite písmo -STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Začiarknite toto políčko, ak uprednostňujete použitie tradičného písma sprite s pevnou veľkosťou. +STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Začiarknite toto políčko, ak uprednostňujete použitie tradičného písma sprite s pevnou veľkosťou STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Vyhladzovacie písma -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Začiarknite toto políčko, ak chcete vyhladiť písma s meniteľnou veľkosťou. +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Začiarknite toto políčko, ak chcete vyhladiť písma s meniteľnou veľkosťou STR_GAME_OPTIONS_GUI_SCALE_1X :1x STR_GAME_OPTIONS_GUI_SCALE_2X :2x @@ -1342,7 +1343,7 @@ STR_CONFIG_SETTING_INFINITE_MONEY :Neobmedzené fi STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Umožniť neobmedzené míňanie peňazí, a vypnúť bankrupciu spoločností STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Maximálny počiatočný úver: {STRING} -STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximálna množstvo peňazí ktoré si môže spoločnosť požičať (bez inflácie). Ak je nastavené na "Žiaden úver", žiadne peniaze nebudú dostupné, iba v prípade že ich dodáva herný skript, alebo sú nastavené neobmedzené financie. +STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Maximálna množstvo peňazí ktoré si môže spoločnosť požičať (bez inflácie). Ak je nastavené na "Žiaden úver", žiadne peniaze nebudú dostupné, iba v prípade že ich dodáva herný skript, alebo sú nastavené neobmedzené financie STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_VALUE :{CURRENCY_LONG} ###setting-zero-is-special STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_DISABLED :Žiadny úver @@ -1426,7 +1427,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Strmosť svahu STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Strmosť svahu na diel pre vozidlá. Vyššia hodnota spôsobuje väčší problém pri prejazde cez vrcholce. STR_CONFIG_SETTING_FORBID_90_DEG :Zakázať vlakom a lodiam otáčanie o 90°: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 stupňové zákruty vznikajú keď sa spojí horizontálna a vertikálna dráha. Týmto vznikne potreba vlaku "otočiť sa" o 90 stupňov pri prechode touto zákrutou namiesto 45 stupňovího prejazdu ako pri ostatných kombináciách trate. Toto isté platí aj pre lode. +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90 stupňové zákruty vznikajú keď sa spojí horizontálna a vertikálna dráha. Týmto vznikne potreba vlaku "otočiť sa" o 90 stupňov pri prechode touto zákrutou namiesto 45 stupňovího prejazdu ako pri ostatných kombináciách trate STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Povoliť spájať stanice nepriamo hraničiace: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Povoľuje pridanie časti stanice bez priamej manipulácie s existujúcimi časťami. Použite Ctrl+Klik na položenie novej časti. @@ -1538,7 +1539,7 @@ STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Predvolená far STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Zvoľte začiatočnú farbu pre spoločnosť STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY :Počiatočná sekundárna farba spoločnosti: {STRING} -STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :Zvoľte počiatočnú sekundárnu farbu spoločnosti, pokiaľ používate NewGRF ktorý to umožňuje. +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :Zvoľte počiatočnú sekundárnu farbu spoločnosti, pokiaľ používate NewGRF, ktorý to umožňuje STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Letiská nikdy neexiprujú: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Povoluje zachovať vsetky typy letísk navzdy. @@ -1562,20 +1563,20 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Nikdy nepresta STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Ak je zapnuté, všetky vozidlá zostanú k dispozícii navždy. STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Časovač: {STRING} -STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Zvoliť jednotky pre časovač. Toto nieje možné neskôr zmeniť.{}{}Kalendárový základ je klasický OpenTTD mód, kde rok má 12 mesiacov, a každý mesiac 28-31 dní.{}{}V hodinovom móde, produkcia tovaru a financie sú založené na minútových krokoch, čo je zhruba tak dlho, ako trvá 30 dní v kalendárovom móde. Zoskupené sú po 12 minútových obdobiach, čo je ekvivalent jedného roka v kalendárovom móde.{}{}V oboch módoch je klasický kalendár, ktorý je použitý na predstavenie nových vozidiel, domov, a inej infraštruktúry. +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Zvoliť jednotky pre časovač. Toto nieje možné neskôr zmeniť.{}{}Kalendárový základ je klasický OpenTTD mód, kde rok má 12 mesiacov, a každý mesiac 28-31 dní.{}{}V hodinovom móde, produkcia tovaru a financie sú založené na minútových krokoch, čo je zhruba tak dlho, ako trvá 30 dní v kalendárovom móde. Zoskupené sú po 12 minútových obdobiach, čo je ekvivalent jedného roka v kalendárovom móde.{}{}V oboch módoch je klasický kalendár, ktorý je použitý na predstavenie nových vozidiel, domov, a inej infraštruktúry ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Kalendár STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Hodiny STR_CONFIG_SETTING_MINUTES_PER_YEAR :Minút za rok: {STRING} -STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Zvoľte počet minút za jeden kalendárny rok. Predvolená hodnota je 12. Nastavte 0, aby sa kalendárne obdobie nemenilo. Toto nastavenie neovlivňuje simuláciu ekonómie, a je dostupná len v hodinovom móde. +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Zvoľte počet minút za jeden kalendárny rok. Predvolená hodnota je 12. Nastavte 0, aby sa kalendárne obdobie nemenilo. Toto nastavenie neovlivňuje simuláciu ekonómie, a je dostupná len v hodinovom móde STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0 (čas kalendáru pozastavený) STR_CONFIG_SETTING_TOWN_CARGO_SCALE :Škála produkcie tovaru mestom: {STRING} -STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Škála produkcie tovaru mestami o toľkoto percent +STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Zvýšenie produkcie tovaru mestami o toľkoto percent STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :Škála produkcie tovaru priemyslom: {STRING} STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Škála produkcie tovaru priemyslom o toľkoto percent STR_CONFIG_SETTING_CARGO_SCALE_VALUE :{NUM}% @@ -1596,7 +1597,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Trvanie zobraze STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Trvanie zobrazenia chybovej hlášky v červenom okne. Uvedomte si že niektoré "kritické" správy nezmiznú po uplynutí času, ale musia byť zatvorené ručne. STR_CONFIG_SETTING_HOVER_DELAY :Ukázať nápovedu: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oneskorenie pred zobrazením nápovedy po prejdení prvku rozhrania myšou. Nápoveda môže byť eventuálne nastavené aj na kliknutie pravým tlačidlom myši pri hodnote 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Oneskorenie pred zobrazením nápovedy po prejdení na prvok rozhrania myšou. Ak je hodnota nastavenená na 0, tak je nápoveda zobrazená po kliknutí pravým tlačidlom myši STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Zobrazenie po {COMMA} milisekundách ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Klik pravým tlačidlom @@ -1608,8 +1609,8 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Hrúbka čiar v STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Hrúbka čiar v grafe. Tenké čiary sú presnejšie, hrubšie zasa lepšie viditeľné STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Zobraziť názov NewGRF v okne vozidiel: {STRING} -STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Pridá riadok do zoznamu vozidiel, ktorý ukazuje z akého NewGRF vozidlo pochádza. -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Zobraziť náklad, ktorý môžu vozidlá prepravovať v oknách zoznamu {STRING} +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Pridá riadok do zoznamu vozidiel, ktorý ukazuje z akého NewGRF vozidlo pochádza +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Zobraziť náklad, ktorý môžu vozidlá prepravovať v oknách zoznamu: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Ak je zapnuté, v zoznamoch vozidiel sa nad ňou zobrazí prepravovateľný náklad vozidla STR_CONFIG_SETTING_LANDSCAPE :Krajina: {STRING} @@ -1628,7 +1629,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY :Hustota priemys STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Nastavte, koľko má byť vygenerovaného priemyslu a aká úroveň by mala byť zachovaná v priebehu hry STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximálna vzdialenosť od okrajov mapy pre rafinérie: {STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinérie ropy sú vybudované len na okrajoch mapy, tzn na pobreží pri ostrovných mapách +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Rafinérie ropy sú vybudované len na okrajoch mapy, tzn na pobreží pri ostrovných mapách. Na mapách väčších ako 256 polí je táto hodnota proporcionálne zväčená STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Úroveň hranice snehu: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Zvoľte, v akej výške začína sneh v subarktickej krajine. Sneh tiež ovplyvňuje generáciu priemyslu a požiadavky rastu mesta. Môže byť upravené iba cez Editor scenára, alebo je vypočítane cez "pokrytie snehom" @@ -1650,7 +1651,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Členitý STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Veľmi členitý STR_CONFIG_SETTING_VARIETY :Rozmanitosť distribúcie: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :Zvoliť, či mapa obsahuje oba terény aj horský aj nížinný. Čím väčšia rozmanitosť, tým väčšie budú rozdiely v prevýšeniach medzi rovinami a horami. +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Zvoliť, či mapa obsahuje oba terény aj horský aj nížinný. Čím väčšia rozmanitosť, tým väčšie budú rozdiely v prevýšeniach medzi rovinami a horami STR_CONFIG_SETTING_RIVER_AMOUNT :Množstvo riek: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Vyberte koľko riek sa má generovať @@ -1697,7 +1698,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Tmavozelená STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Fialová STR_CONFIG_SETTING_LINKGRAPH_COLOURS :Farby prekrytia toku nákladu: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Nastavte farebnú schému použitú pre prekrytie toku nákladu. +STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Nastavte farebnú schému pre vrstvu toku nákladu ###length 4 STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED :Zelenočervená STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_BLUE :Zelenomodrá @@ -1818,7 +1819,7 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Zachovať stave STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Zachovaj okno s nástrojmi na stavbu mostov/tunelov otvorené aj po použití STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automaticky odstraňovať návestidlá pri výstavbe železnice: {STRING} -STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automaticky odstraňovať návestidla pri výstavbe železnice, ak návestidlá blokujú výstavbu. To však môže niekedy smerovať k zrážke vlakov. +STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automaticky odstraňovať návestidlá pri výstavbe železnice, ak návestidlá blokujú výstavbu. Toto však môže niekedy viesť k zrážke vlakov STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Limit zrýchlenia priebehu hry: {STRING} STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Limit rýchlosti hry pri zapnutí zrýchlenia priebehu hry. 0 = bez limitu (tak rýchlo, ako to umožní počítač). Hodnoty pod 100% spomalia hru. Horný limit závisí od špecifikácií počítača a môže sa meniť s hrou. @@ -1885,11 +1886,11 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Povoliť AI po STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#op kódov pred uspaním skriptu: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maximálny počet krokov skriptu počas 1 ťahu. STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Maximálne využitie pamäte na skript: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Koľko pamäte môže jeden skript spotrebovať pred násilným ukončením. Pri veľkých mapách bude možno potrebné túto hodnotu zvýšiť. +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Koľko pamäte môže jeden skript spotrebovať pred násilným ukončením. Pri veľkých mapách bude možno potrebné túto hodnotu zvýšiť STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Servisné intervaly v percentách: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Ak je zapnuté, vozidlá sa budú pokúšať navštíviť servis ak ich spoľahlivosť klesne pod nastavenú hodnotu percent maximálnej spoľahlivosti.{}{}Napríklad, ak je maximálna spoľahlivosť 90% a servisný interval je 20%, vozidlo sa pokúsi ísť do servisu keď dosiahne 72%. +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Ak je zapnuté, vozidlá sa budú pokúšať navštíviť servis ak ich spoľahlivosť klesne pod nastavenú hodnotu percent maximálnej spoľahlivosti.{}{}Napríklad, ak je maximálna spoľahlivosť 90% a servisný interval je 20%, vozidlo sa pokúsi ísť do servisu keď dosiahne 72% STR_CONFIG_SETTING_SERVINT_TRAINS :Predvolený interval servisu pre vlaky: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Nastav predvolený interval pre nové vlaky. Ak nie je nastavený podrobnejší interval. @@ -1907,7 +1908,7 @@ STR_CONFIG_SETTING_NOSERVICE :Vypnúť servis STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Ak je zapnuté, vozidlá nebudú servisované ak sú vypnuté poruchy. STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Pokuta za rýchlosť nakládky pre vlaky, ktoré sú dlhšie ako stanica: {STRING} -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Keď je táto možnosť povolená, vlaky, ktoré sú pre stanicu príliš dlhé, nakladajú pomalšie ako vlak, ktorý sa do stanice zmestí. Toto nastavenie neovplyvňuje hľadanie cesty. +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Keď je táto možnosť povolená, vlaky, ktoré sú pre stanicu príliš dlhé, nakladajú pomalšie ako vlak, ktorý sa do stanice zmestí. Toto nastavenie neovplyvňuje hľadanie cesty STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Obmedzenie rýchlosti pre vagóny: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :Ak je zapnuté, použijú sa tiež rýchlostné obmedzenia pre vagóny na obmedzenie celkovej rýchlosti vlakov. @@ -1972,13 +1973,13 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Rok od ktorého STR_CONFIG_SETTING_STARTING_YEAR :Začiatok hry v roku: {STRING} STR_CONFIG_SETTING_ENDING_YEAR :Rok ukončenia skórovania: {STRING} -STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Rok v ktorom končí hra pre zaznamenanie skóre. Na konci tohto roku sa nahrá skóre spoločnosti a zobrazí sa tabuľka s najvyšším skóre, avšak hráči môžu v hre naďalej pokračovať.{}Ak je tento rok pred začiatkom hry, tabuľka sa nikdy nezobrazí. +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Rok v ktorom končí hra pre zaznamenanie skóre. Na konci tohto roku sa nahrá skóre spoločnosti a zobrazí sa tabuľka s najvyšším skóre, avšak hráči môžu v hre naďalej pokračovať.{}Ak je tento rok pred začiatkom hry, tabuľka sa nikdy nezobrazí STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nikdy STR_CONFIG_SETTING_ECONOMY_TYPE :Typ ekonomiky: {STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Plynulá ekonomika robí zmeny v produkcii častejšie a v menších krokoch. Zamrznutá ekonomika neumožňuje zmeny v produkcii, ani zatváranie priemyslu. Toto nastavenie nemusí ovplyvňovať priemysel z NewGRF. +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Plynulá ekonomika robí zmeny v produkcii častejšie a v menších krokoch. Zamrznutá ekonomika neumožňuje zmeny v produkcii, ani zatváranie priemyslu. Toto nastavenie nemusí ovplyvňovať priemysel z NewGRF ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Originálna STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Plynulá @@ -2033,7 +2034,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :povolené STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :povolené, vlastné rozloženie mesta STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Generovanie nákladu v mestách: {STRING} -STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Množstvo nákladu produkovaného domami v mestách, podmienené celkovou populáciou mesta.{}Kvadratický rast: Mesto s dvojnásobnou veľkosťou produkuje štvornásobné množstvo cestujúcich.{}Lineárny rast: Mesto s dvojnásobnou veľkosťou produkuje dvojnásobné množstvo cestujúcich. +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Množstvo nákladu produkovaného domami v mestách, podmienené celkovou populáciou mesta.{}Kvadratický rast: Mesto s dvojnásobnou veľkosťou produkuje štvornásobné množstvo cestujúcich.{}Lineárny rast: Mesto s dvojnásobnou veľkosťou produkuje dvojnásobné množstvo cestujúcich ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratické STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineárne @@ -2074,7 +2075,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4-krát STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8-krát STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Najvyššie rozlíšenie grafických prvkov: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limit maximálneho rozlíšenia grafických prvkov. Limitovanie rozlíšenia prvkov znemožní používanie vysokého rozlíšenia aj keď je dostupné. To pomáha zachovať zjednotený vzhľad hry, ak sa používa mix GRF súborov s a bez vysokého rozlíšenia. +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Limit maximálneho rozlíšenia grafických prvkov. Limitovanie rozlíšenia prvkov znemožní používanie vysokého rozlíšenia aj keď je dostupné. To pomáha zachovať zjednotený vzhľad hry, ak sa používa mix GRF súborov s a bez vysokého rozlíšenia ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2098,33 +2099,33 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Násobok počia STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Priemerná veľkosť veľkomiest v porovnaní k mestám na začiatku hry. STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Aktualizovať spojovací graf každých {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Čas medzi po sebe idúcimi prepočítavaniami spojovacieho grafu. Každé prepočítanie vypočíta trasu pre jednu komponentu grafu. To znamená, že hodnota X tohoto nastavenia neobnoví celý graf, len niektoré jeho časti. Čím menšia táto hodnota, tým viac procesorového času je potreba na jeho vypočítanie. Čím je hodnota vyššia, tým dlhšie bude trvať začiatok distrubúcie tovaru na nových trasách. +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Čas medzi po sebe idúcimi prepočítavaniami spojovacieho grafu. Každé prepočítanie vypočíta trasu pre jednu komponentu grafu. To znamená, že hodnota X tohoto nastavenia neobnoví celý graf, len niektoré jeho časti. Čím menšia táto hodnota, tým viac procesorového času je potreba na jeho vypočítanie. Čím je hodnota vyššia, tým dlhšie bude trvať začiatok distrubúcie tovaru na nových trasách STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Využiť {STRING} na prepočítanie distribučného grafu -STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Čas potrebný na prepočítanie komponentov spojovacieho grafu. Keď započne prepočítavanie, vytvorí sa nové vlákno ktorému je umožnené existovať po túto dobu. Čím je hodnota nižšia, tým je väčšia pravdepodobnosť, že vlákno nedobehne kedy má. Hra sa pozastaví ("lag") pokial vlákno nedobehne. Čím je hodnota vyššia, tým dlhšie bude trvať grafu sa aktualizovať v prípade, že sa trasy zmenia. +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Čas potrebný na prepočítanie komponentov spojovacieho grafu. Keď započne prepočítavanie, vytvorí sa nové vlákno ktorému je umožnené existovať po túto dobu. Čím je hodnota nižšia, tým je väčšia pravdepodobnosť, že vlákno nedobehne kedy má. Hra sa pozastaví ("lag") pokial vlákno nedobehne. Čím je hodnota vyššia, tým dlhšie bude trvať grafu sa aktualizovať v prípade, že sa trasy zmenia STR_CONFIG_SETTING_DISTRIBUTION_PAX :Druh distribúcie pre cestujúcich: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symetricky" znamená, že približne rovnaké množstvo pasažierov bude cestovať zo stanice A do stanice B ako z B do A. "Asymetricky" znamená, že v oboch smeroch môže cestovať ľubovoľné množstvo pasažierov. "Manuálne" znamená, že sa pre pasažierov nevykoná automatická distribúcia. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symetricky" znamená, že približne rovnaké množstvo pasažierov bude cestovať zo stanice A do stanice B ako z B do A. "Asymetricky" znamená, že v oboch smeroch môže cestovať ľubovoľné množstvo pasažierov. "Manuálne" znamená, že sa pre pasažierov nevykoná automatická distribúcia STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Druh distribúcie pre poštu: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Symetricky" znamená, že približne rovnaké množstvo pošty bude odoslané zo stanice A do stanice B ako z B do A. "Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo pošty. "Manuálne" znamená, že sa pre poštu nevykoná automatická distribúcia. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Symetricky" znamená, že približne rovnaké množstvo pošty bude odoslané zo stanice A do stanice B ako z B do A. "Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo pošty. "Manuálne" znamená, že sa pre poštu nevykoná automatická distribúcia STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Druh distribúcie pre náklad prevážaný obrnenými vozidlami: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Náklad prevážaný obrnenými vozidlami sú cennosti v miernom, diamanty v subtropickom alebo zlato v subarktickom podnebí. NewGRF to môže zmeniť. "Symetricky" znamená, že rovnaké množstvo nákladu bude odoslané zo stanice A do stanice B a naopak. "Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo nákladu. "Manuálne" znamená, že sa pre náklad nevykoná automatická distribúcia. Doporučuje sa nastaviť na "asymetricky" alebo "manuálne" pri hraní v subarktickom alebo subtropickom, pretože banky prijímajú náklad iba v týchto podnebiach. Pre mierne podnebie si môžete vybrať aj "symetricky", pretože banky budú posielať cennosti späť do pôvodnej banky, ktorá ich odoslala. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Náklad prevážaný obrnenými vozidlami sú cennosti v miernom, diamanty v subtropickom alebo zlato v subarktickom podnebí. NewGRF to môže zmeniť. "Symetricky" znamená, že rovnaké množstvo nákladu bude odoslané zo stanice A do stanice B a naopak. "Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo nákladu. "Manuálne" znamená, že sa pre náklad nevykoná automatická distribúcia. Doporučuje sa nastaviť na "asymetricky" alebo "manuálne" pri hraní v subarktickom alebo subtropickom, pretože banky prijímajú náklad iba v týchto podnebiach. Pre mierne podnebie si môžete vybrať aj "symetricky", pretože banky budú posielať cennosti späť do pôvodnej banky, ktorá ich odoslala STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Druh distribúcie pre ostatné druhy nákladu: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo nákladu. "Manuálne" znamená, že sa pre náklad nevykoná automatická distribúcia. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asymetricky" znamená, že v oboch smeroch môže byť odoslané ľubovoľné množstvo nákladu. "Manuálne" znamená, že sa pre náklad nevykoná automatická distribúcia ###length 3 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :manuálne STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymetricky STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symetricky STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Presnosť distribúcie: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Čím viac nastavíte, tým viac procesorového času zaberie vypočítavanie trás spojov. Pokiaľ to bude trvať príliš dlho, môžete si všimnúť oneskorenie. Ak nastavíte nízku hodnotu, rozdelenie bude nepresné a môže sa stať, že náklad nebude odoslaný na miesta, ktoré očakávate. +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Čím viac nastavíte, tým viac procesorového času zaberie vypočítavanie trás spojov. Pokiaľ to bude trvať príliš dlho, môžete si všimnúť oneskorenie. Ak nastavíte nízku hodnotu, rozdelenie bude nepresné a môže sa stať, že náklad nebude odoslaný na miesta, ktoré očakávate STR_CONFIG_SETTING_DEMAND_DISTANCE :Vplyv vzdialenosti na požiadavky: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Ak nastavíte toto na hodnotu väčšiu ako 0, tak vzdialenosť medzi východiskovou stanicou A nejakého nákladu a možnou cieľovou stanicou B bude mať vplyv na množstvo nákladu poslaného z A do B. Čím bude B ďalej od A, tým menej nákladu bude odoslaného. Čím viac nastavíte, tým menej nákladu bude odoslaného do vzdialenejších staníc a viac nákladu bude odoslaného do bližších staníc. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Ak nastavíte toto na hodnotu väčšiu ako 0, tak vzdialenosť medzi východiskovou stanicou A nejakého nákladu a možnou cieľovou stanicou B bude mať vplyv na množstvo nákladu poslaného z A do B. Čím bude B ďalej od A, tým menej nákladu bude odoslaného. Čím viac nastavíte, tým menej nákladu bude odoslaného do vzdialenejších staníc a viac nákladu bude odoslaného do bližších staníc STR_CONFIG_SETTING_DEMAND_SIZE :Množstvo vráteného nákladu pre symetrický mód: {STRING} -STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Nastavením na menej ako 100% sa bude symetrická distribúcia správať viac asymetricky. Menej nákladu sa bude povinne vracať späť, ak sa určité množstvo pošle do stanice. Ak nastavíte 0%, symetrická distribúcia sa bude správať ako asymetrická. +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Nastavením na menej ako 100% sa bude symetrická distribúcia správať viac asymetricky. Menej nákladu sa bude povinne vracať späť, ak sa určité množstvo pošle do stanice. Ak nastavíte 0%, symetrická distribúcia sa bude správať ako asymetrická STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Vyťaženie krátkych ciest pred použitím vysokokapacitných ciest: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Často je viac ciest medzi dvoma stanicami. Cargodist vyťaží najprv najkratšiu cestu, potom využije druhú najkratšiu cestu až kým nebude vyťažená atď. Vyťaženie je určené podľa odhadu kapacity a plánovaného využitia. Ak sú vyťažené všetky trasy a nepostačuje to, preťaží všetky trasy, s preferenciou najkapacitnejšej. Väčšinou algoritmus neodhadne kapacitu presne. Toto nastavenie umožňuje určiť na koľko percent musí byť vyťažená prvá pred výberom nasledujúcej dlhšej. Nastavte na menej ako 100%, aby sa zabránilo preplneniu staníc v prípade nadhodnotenia kapacity. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Často je viac ciest medzi dvoma stanicami. Cargodist vyťaží najprv najkratšiu cestu, potom využije druhú najkratšiu cestu až kým nebude vyťažená atď. Vyťaženie je určené podľa odhadu kapacity a plánovaného využitia. Ak sú vyťažené všetky trasy a nepostačuje to, preťaží všetky trasy, s preferenciou najkapacitnejšej. Väčšinou algoritmus neodhadne kapacitu presne. Toto nastavenie umožňuje určiť na koľko percent musí byť vyťažená prvá pred výberom nasledujúcej dlhšej. Nastavte na menej ako 100%, aby sa zabránilo preplneniu staníc v prípade nadhodnotenia kapacity STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Jednotky rýchlosti (pozemné): {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :Jednotky rýchlosti (námorné): {STRING} @@ -2641,6 +2642,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Meno va STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Názov vašeho servra nebol nastavený. Názov môžete nastaviť na vrchu okna hry pre viacerých hráčov STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Revizia hry u tohto klienta nezodpoveda revizii hry na serveri. STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Nesprávne heslo +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Nie ste na zozname povolených klientov STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Server je plný STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Si zabanovaný na tomto serveri STR_NETWORK_ERROR_KICKED :{WHITE}Bol si vyhodený z hry @@ -2668,6 +2670,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :prijatý neplat STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :chybná verzia hry STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :meno sa už používa STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :nesprávne heslo +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :nie je na zozname povolených STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :zlá spoločnosť-id in DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :vyhodený zo servera STR_NETWORK_ERROR_CLIENT_CHEATER :sa pokúšal cheatovať @@ -3046,11 +3049,11 @@ STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Umiestni STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Náhodné stromy STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Zasadiť stromy náhodne po celej krajine STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normálne -STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Sadiť stromy po jednom, ťahaním po krajine. +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Sadiť stromy po jednom, ťahaním po krajine STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Porast -STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Sadiť malé porasty ťahaním po krajine. +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Sadiť malé porasty ťahaním po krajine STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Les -STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Sadiť veľké lesy ťahaním po krajine. +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Sadiť veľké lesy ťahaním po krajine # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Generovanie územia @@ -3265,11 +3268,11 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD STR_FRAMERATE_CAPTION :{WHITE}Snímková frekvencia STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x) STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Frekvencia simulácie: {STRING} -STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Počet herných tiknutí simulovaných za sekundu. +STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Počet herných tiknutí simulovaných za sekundu STR_FRAMERATE_RATE_BLITTER :{BLACK}Snímková frekvencia grafiky: {STRING} -STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Počet video snímok vykreslených za sekundu. +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Počet video snímok vykreslených za sekundu STR_FRAMERATE_SPEED_FACTOR :{BLACK}Súčasný násobok hernej rýchlosti: {DECIMAL}x -STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Súčasná rýchlosť hry v porovnaní s rýchlosťou, akou by mala hra normálne bežať. +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Súčasná rýchlosť hry v porovnaní s rýchlosťou, akou by mala hra normálne bežať STR_FRAMERATE_CURRENT :{WHITE}Teraz STR_FRAMERATE_AVERAGE :{WHITE}Priemer STR_FRAMERATE_MEMORYUSE :{WHITE}Pamäť @@ -4098,7 +4101,7 @@ STR_GROUP_CREATE_TOOLTIP :{BLACK}Vytvori STR_GROUP_DELETE_TOOLTIP :{BLACK}Zrušiť vybranú skupinu STR_GROUP_RENAME_TOOLTIP :{BLACK}Premenovať vybranú skupinu STR_GROUP_LIVERY_TOOLTIP :{BLACK}Zmeniť farebnú schému vybranej skupiny -STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Znemožniť automatické nahradzovanie v skupine. Ctrl+klik znemožní nahradzovanie aj v podskupinách. +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Znemožniť automatické nahradzovanie v skupine. Ctrl+klik znemožní nahradzovanie aj v podskupinách STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Vymazať skupinu STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Ste si istý, že chcete vymazať túto skupinu a jej podskupiny? @@ -4514,10 +4517,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacita STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer kredity: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Servisný interval: {LTBLUE}{COMMA}{NBSP}dní{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servisný interval: {LTBLUE}{COMMA}{NBSP}minút{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Servisný interval: {LTBLUE}{COMMA}{NBSP}{P "minúta" "minúty" "minút"}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Servisný interval: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Posledný servis: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Posledný servis: pred {LTBLUE}{NUM} minútami +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Posledný servis: pred {LTBLUE}{NUM} {P "minútou" "minútami" "minútami"} STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Zvýši servisný interval o 10 dní. Ctrl+klik zvýši servisný interval o 5 dní STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Zvýši servisný interval o 5 minút. Ctrl+klik zvýši servisný interval o 1 minútu STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Zvýši servisný interval o 10 percent. Ctrl+klik zvýši servisný interval o 5 percent @@ -5060,7 +5063,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Spoločn STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Nemôžete tu postaviť sídlo spoločnosti... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Nie je možné postaviť viac miest +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Nie je možné postaviť viac miest... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Mesto nemôže byť odstránené... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Nemôžete tu založiť mesto... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Nemožno rozšíriť mesto... diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index 4ee31f9b94..d35c4d763b 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -1471,7 +1471,7 @@ STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Företagets sta STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Välj startfärg för företaget STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY :Företagets andravalsstartfärg: {STRING} -STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :Välj andravalsfärg för företaget att starta med, om du använder en NewGRF som stöder det. +STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT :Välj andravalsfärg för företaget att starta med, om du använder en NewGRF som stöder det STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Flygplatser blir aldrig gamla: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Aktivering av denna inställning gör så att alla flygplatstyper finns kvar i obegränsad tid efter att de blivit tillgängliga @@ -1542,7 +1542,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Linjernas bredd STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Visa NewGRF:ens namn i fordonsbyggnadsfönstret: {STRING} STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Lägg till en rad i fordonsbyggnadsfönstret som visar vilken NewGRF det valda fordonet kommer ifrån -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Visa godstyper som fordonen kan transportera i listorna {STRING} +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Visa godstyper som fordonen kan transportera i listfönstren: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Om det är aktiverat kommer fordonets transportabla last att visas ovanför den i fordonslistor STR_CONFIG_SETTING_LANDSCAPE :Landskap: {STRING} @@ -1583,7 +1583,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Svår STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Väldigt svår STR_CONFIG_SETTING_VARIETY :Varierad distribution: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :Välj om kartan ska innehålla både berg och flacka områden. Ju större variation desto större höjdskillnad mellan bergiga och flacka områden. +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Välj om kartan ska innehålla både berg och flacka områden. Ju större variation desto större höjdskillnad mellan bergiga och flacka områden STR_CONFIG_SETTING_RIVER_AMOUNT :Antal floder: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Välj hur många floder att generera @@ -1630,7 +1630,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Mörkgrön STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Violett STR_CONFIG_SETTING_LINKGRAPH_COLOURS :Färger på godsflödesöverlägg: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Ställ in det färgschema som ska användas på godsflödesöverlägget. +STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Ställ in det färgschema som ska användas på godsflödesöverlägget ###length 4 STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED :Grön till röd (original) STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_BLUE :Grön till blå @@ -1751,10 +1751,10 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Behåll byggnad STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Håll verktygen för byggnation av broar, tunnlar, etc. öppna efter användning STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automatiskt ta bort signaler vid byggande av järnväg: {STRING} -STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Ta automatiskt bort signaler vid byggande av järnväg om signalerna är i vägen. Notera att detta kan leda till att tåg krockar. +STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Ta automatiskt bort signaler vid byggande av järnväg om signalerna är i vägen. Notera att detta kan leda till att tåg krockar STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Begränsning av snabbspolning: {STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Begränsa hur snabbt spelet går när snabbspolning är aktiverad. 0 = ingen begränsning (så snabbt som din dator tillåter). Värden under 100% saktar ner spelet. Den övre begränsningen beror på din dators specifikationer och kan variera beroende på spelet. +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Begränsa hur snabbt spelet går när snabbspolning är aktiverad. 0 = ingen begränsning (så snabbt som din dator tillåter). Värden under 100% saktar ner spelet. Den övre begränsningen beror på din dators specifikationer och kan variera beroende på spelet STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% normal spelhastighet ###setting-zero-is-special STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Ingen begränsning (Så snabbt som din dator tillåter) @@ -1822,7 +1822,7 @@ STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Hur mycket minn STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Visa serviceintervall i procent: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :När det är aktiverat försöker fordon bli servade när deras tillförlitlighet har fallit med en viss procentsats av den maximala tillförlitligheten.{}{}Till exempel, om ett fordons maximala tillförlitlighet är 90% och serviceintervallet är 20% kommer fordonet söka service när tillförlitligheten är 72%.Välj om fordonsservice ska triggas av hur lång tid som har gått sedan senaste service eller av att tillförlitligheten faller med +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :När det är aktiverat försöker fordon bli servade när deras tillförlitlighet har fallit med en viss procentsats av den maximala tillförlitligheten.{}{}Till exempel, om ett fordons maximala tillförlitlighet är 90% och serviceintervallet är 20% kommer fordonet söka service när tillförlitligheten är 72% STR_CONFIG_SETTING_SERVINT_TRAINS :Normalt serviceintervall för tåg: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Välj vilket serviceintervall som normalt sett ska användas för nya tåg, om inget annat serviceintervall uttryckligen anges @@ -1905,7 +1905,7 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Årtal då tidn STR_CONFIG_SETTING_STARTING_YEAR :Startår: {STRING} STR_CONFIG_SETTING_ENDING_YEAR :Slutår för poängräkning: {STRING} -STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Årtal då spelet slutar räkna poäng. Vid slutet av detta år sparas företagets poäng och listan med de bästa spelresultaten visas, men därefter kan spelarna fortsätta att spela.{}Om årtalet är satt till innan startåret visas aldrig de bästa spelresultaten. +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Årtal då spelet slutar räkna poäng. Vid slutet av detta år sparas företagets poäng och listan med de bästa spelresultaten visas, men därefter kan spelarna fortsätta att spela.{}Om årtalet är satt till innan startåret visas aldrig de bästa spelresultaten STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Aldrig @@ -1966,7 +1966,7 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Tillåten STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Tillåten, vanlig stads-layout STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Fraktgods som genereras i staden: {STRING} -STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hur mycket fraktgods som produceras av hus i städer, i förhållande till den totala befolkningen i staden.{}Kvadratisk tillväxt: En dubbelt så stor stad genererar fyra gånger så många passagerare.{}Linjär tillväxt: En dubbelt så stor stad genererar dubbelt så många passagerare. +STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Hur mycket fraktgods som produceras av hus i städer, i förhållande till den totala befolkningen i staden.{}Kvadratisk tillväxt: En dubbelt så stor stad genererar fyra gånger så många passagerare.{}Linjär tillväxt: En dubbelt så stor stad genererar dubbelt så många passagerare ###length 2 STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratisk (original) STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Linjär @@ -2052,9 +2052,9 @@ STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distributionsno STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Ju högre du sätter denna, desto längre CPU-tid kommer beräkningen av länkgrafen ta. Om det tar för lång tid kan spelet lagga. Om du däremot sätter den till ett lågt värde kommer distributionen att bli inexakt, vilket kan leda till att godset inte skickas dit du förväntar dig. STR_CONFIG_SETTING_DEMAND_DISTANCE :Avståndets påverkan på efterfrågan: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Om du sätter denna till ett värde högre än 0 kommer avståndet mellan ursprungsstationen A för en viss last och en möjlig destination B påverka mängden last som skickas från A till B. Ju längre B är ifrån A, desto mindre last kommer att skickas. Ju högre du sätter den, desto mindre last kommer att skickas till avlägsna stationer och desto mer last kommer att skickas till närbelägna stationer. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Om du sätter denna till ett värde högre än 0 kommer avståndet mellan ursprungsstationen A för en viss last och en möjlig destination B påverka mängden last som skickas från A till B. Ju längre B är ifrån A, desto mindre last kommer att skickas. Ju högre du sätter den, desto mindre last kommer att skickas till avlägsna stationer och desto mer last kommer att skickas till närbelägna stationer STR_CONFIG_SETTING_DEMAND_SIZE :Mängd återsänd last i symmetriskt läge: {STRING} -STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Genom att sätta denna till mindre än 100% får man den symmetriska distributionen att bete sig mer som den asymmetriska. En mindre andel än vanligt av den last som skickas till en station kommer att skickas tillbaka. Sätter du den till 0% beter sig den symmetriska distributionen precis som den asymmetriska. +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Genom att sätta denna till mindre än 100% får man den symmetriska distributionen att bete sig mer som den asymmetriska. En mindre andel än vanligt av den last som skickas till en station kommer att skickas tillbaka. Sätter du den till 0% beter sig den symmetriska distributionen precis som den asymmetriska STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Belastning av korta rutter innan rutter med hög kapacitet används: {STRING} STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Ofta finns det flera rutter mellan två givna stationer. Godsdistributionen kommer att fylla upp den första rutten först och därefter den näst kortaste tills den är mättad osv. Mättnadsgraden bestäms utifrån en uppskattning av kapaciteten och planerad användning. När godsdristributionen har belastat samtliga rutter, och om det finns kvarvarande behov, då kommer samtliga rutter att överbelastas med preferens för rutterna med högst kapacitet. Uppskattningen av kapaciteten kommer oftast inte ske med hög noggrannhet. Denna inställning tillåter dig att ställa in hur många procent som en kort rutt ska belastas innan algoritmen ska välja nästa längre rutt. Sätt värdet till under 100 % om du vill undvika överfulla stationer i händelse av överskattad kapacitet. @@ -3200,11 +3200,11 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD STR_FRAMERATE_CAPTION :{WHITE}Bildfrekvens STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x) STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Simulationsfrekvens: {STRING} -STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Antal spel-tick som simuleras per sekund. +STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Antal spel-tick som simuleras per sekund STR_FRAMERATE_RATE_BLITTER :{BLACK}Bildfrekvens för grafik: {STRING} -STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Antal bildrutor som återges per sekund. +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Antal bildrutor som återges per sekund STR_FRAMERATE_SPEED_FACTOR :{BLACK}Spelets nuvarande hastighetsfaktor: {DECIMAL}x -STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Hur snabbt spelet för närvarande körs, jämfört med förväntad hastighet vid normal simulationsfrekvens. +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Hur snabbt spelet för närvarande körs, jämfört med förväntad hastighet vid normal simulationsfrekvens STR_FRAMERATE_CURRENT :{WHITE}Nuvarande STR_FRAMERATE_AVERAGE :{WHITE}Genomsnittlig STR_FRAMERATE_MEMORYUSE :{WHITE}Minne @@ -4028,7 +4028,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Ogrupperade fly STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupper - klicka på en grupp för att lista alla fordon i gruppen. Dra och släpp grupper för att ordna hierarkin. +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupper - klicka på en grupp för att lista alla fordon i gruppen. Dra och släpp grupper för att ordna hierarkin STR_GROUP_CREATE_TOOLTIP :{BLACK}Klicka för att skapa en grupp STR_GROUP_DELETE_TOOLTIP :{BLACK}Ta bort vald grupp STR_GROUP_RENAME_TOOLTIP :{BLACK}Byt namn på vald grupp @@ -4220,9 +4220,9 @@ STR_DEPOT_CLONE_SHIP :{BLACK}Klona sk STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Klona flygplan ###length VEHICLE_TYPES -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Köp en kopia av ett tåg inklusive alla vagnar. Klicka på denna knapp och sen på ett tåg i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Köp en kopia av ett vägfordon. Klicka på denna knapp och sen på ett vägfordon i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Köp en kopia av ett skepp. Klicka på denna knapp och sen på ett skepp i eller utanför depån. Ctrl+Klick för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Köp en kopia av ett tåg inklusive alla vagnar. Klicka på denna knapp och sedan på ett tåg i eller utanför depån. Ctrl+klicka för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Köp en kopia av ett vägfordon. Klicka på denna knapp och sedan på ett vägfordon i eller utanför depån. Ctrl+klicka för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Köp en kopia av ett skepp. Klicka på denna knapp och sedan på ett skepp i eller utanför depån. Ctrl+klicka för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Köp en kopia av en flygfarkost. Klicka på denna knapp och sedan på en flygfarkost i eller utanför hangaren. Ctrl+klicka för att dela ordrar. Håll även in Shift för att endast visa uppskattad kostnad ###length VEHICLE_TYPES @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Kapacite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK} Överför kredit: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Serviceintervall: {LTBLUE}{COMMA}{NBSP}dagar{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Serviceintervall: {LTBLUE}{COMMA}{NBSP}minuter{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Serviceintervall: {LTBLUE}{COMMA}{NBSP}minut{P "" er}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Serviceintervall: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Senast servad: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Senast servad: {LTBLUE}{NUM} minuter sedan +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Senast servad: {LTBLUE}{NUM} minut{P "" er} sedan STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Öka serviceintervall med 10 dagar. Ctrl+Klick för att öka serviceintervall med 5 dagar STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Öka serviceintervall med 5 minuter. Ctrl+Klick för att öka serviceintervall med 1 minut STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Öka serviceintervall med 10 procent. Ctrl+Klick för att öka serviceintervall med 5 procent diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 2df685a55a..4fad532d45 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -1498,7 +1498,7 @@ STR_CONFIG_SETTING_FORBID_90_DEG :Заборон STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :При включенні прямокутні перетини шляхів не будуть вважатися поворотами. Для повороту необходно прокладати шляхи під кутом 45°. STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Станції можуть складатися з не суміжних частин: {STRING} -STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Дозволяє об'єднання в одну станцію частин, що не примикають одна до одної. Щоб приєднати нову станцію до існуючої, необхідно використовувати Ctrl+клац при будівництві +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Дозволяє додавання до станції частин, що не примикають одна до одної. Для цього використовуйте Ctrl+клац при будівництві нових частин STR_CONFIG_SETTING_INFLATION :Інфляція: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Дозволяє інфляцію в економіці. При цьому витрати з часом зростають дещо швидше за прибутки @@ -1700,7 +1700,7 @@ STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Макс. ві STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Обмеження віддалення від меж мапи будівництва нафтопереробних заводів та нафтових установок. На острівних мапах це гарантує розташування біля узбережжя. На мапах понад 256 клітинок це значення збільшиться. STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Рівень снігової шапки: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Контроль висоти, вище якої лежить сніг в субарктичному ландшафті. Сніг впливає на генерування підприємств та на умови росту міст. Можливо змінити лише в редакторі сценаріїв, інакше вираховується за параметром "покриття снігом" +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Оберіть висоту, вище якої лежить сніг в субарктичному ландшафті. Сніг впливає на генерування підприємств та на умови росту міст. Можливо змінити лише в редакторі сценаріїв, інакше вираховується за параметром "покриття снігом" STR_CONFIG_SETTING_SNOW_COVERAGE :Покриття снігом: {STRING} STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Контроль приблизної частки снігу в субарктичному ландшафті. Сніг впливає на створення підприємств та умови росту міст. Використовується лише при створенні мапи. Території біля моря завжди безсніжні @@ -2710,6 +2710,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Не в STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Не вказано назву сервера. Назва має вказуватись нагорі вікна багатокористувацької гри. STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Версія клієнта не збігається з версією сервера STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Пароль невірний +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Ви не в списку дозволених клієнтів STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Сервер переповнений STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Вас відключено від цього серверу STR_NETWORK_ERROR_KICKED :{WHITE}Вас відключено від гри @@ -2924,16 +2925,16 @@ STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Будівни STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Будівництво монорейкової залізниці STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Будівництво магнітної залізниці -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Будувати колію. Ctrl переключає побудову/знесення для будівництва колії. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Будувати колію, використовуючи авторежим. Ctrl переключає побудову/знесення для будівництва колії. Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Будування колії. Ctrl+клац для знесення колії. Утримуйте Shift для показу очікуваних витрат +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Будування колії в авторежимі. Ctrl+клац для знесення колії. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Будувати залізничне депо (для купівлі та обслуговування потягів). Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Перетворити колію на точку маршруту. Ctrl дозволяє об'єднання точок маршруту. Утримуйте Shift для показу очікуваних витрат -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будувати станцію. Ctrl дозволяє об'єднання станцій. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати залізничні сигнали. Ctrl переключає семафори/світлові сигнали{}Протяжка мишою будує сигнали вздовж прямої ділянки рейок. Ctrl будує сигнали до наступної розв'язки чи сигналу{}Ctrl+клац мишою вмикає показ вікна вибору сигналів. Утримуйте Shift для показу витрат на будівництво +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Будування точки маршруту. Ctrl+клац для створення приєднаної точки маршруту. Утримуйте Shift для показу очікуваних витрат +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Будування залізничної станції. Ctrl+клац для приєднання додаткових станцій. Утримуйте Shift для показу очікуваних витрат +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати колійні сигнали. Ctrl+клац переключає семафори/світлофори{}Ctrl+протяжка будує сигнали вздовж ділянки колії з обраним проміжком. Ctrl+клац+протяжка будує сигнали до наступної стрілки, станції чи сигналу. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати залізничний міст. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будування тунелю. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будувати/демонтувати колію, сигнали, точки маршруту і станції. Утримання Ctrl також демонтує колію з точок маршрутів і станцій -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Модернізувати колію. Утримуйте Shift для показу витрат на модернізацію +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Модернізація колії. Утримуйте Shift для показу очікуваних витрат STR_RAIL_NAME_RAILROAD :Звичайна колія STR_RAIL_NAME_ELRAIL :Електрифікована колія @@ -3098,7 +3099,7 @@ STR_STATION_BUILD_NOISE :{BLACK}Ріве STR_LANDSCAPING_TOOLBAR :{WHITE}Ландшафт STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Опустити край ділянки землі. Протягування мишею опускає вибраний край і вирівнює вибрану ділянку до його нової висоти. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Підняти край ділянки землі. Протягування мишею піднімає вибраний край і вирівнює вибрану ділянку до його нової висоти. Ctrl+клац+протягування для виділення клітинок по діагоналі. Утримуйте Shift для показу очікуваних витрат -STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Вирівняти ділянку землі до висоти першого обраного краю. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат +STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Вирівнювання ділянки землі до висоти першого обраного краю. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Купити ділянку для використання у майбутньому. Утримуйте Ctrl для виділення діагональної ділянки. Утримуйте Shift для показу вартості ділянки # Object construction window @@ -4259,7 +4260,7 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Купу ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний поїзд. Утримуйте Shift для показу витрат на придбання STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибране авто. Утримуйте Shift для показу витрат на придбання -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний корабель. Утримуйте Shift для показу витрат на придбання +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Купити обраний корабель. Утримуйте Shift для показу очікуваних витрат STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний літак. Утримуйте Shift для показу витрат на придбання ###length VEHICLE_TYPES From b8b01818ca55ed7a0fd029316a565a72d2f1f1ac Mon Sep 17 00:00:00 2001 From: translators Date: Wed, 27 Mar 2024 04:43:49 +0000 Subject: [PATCH 44/70] Update: Translations from eints english (au): 1 change by krysclarke norwegian (bokmal): 1 change by eriksorngard spanish (mexican): 32 changes by rgonzalez-py english (us): 3 changes by 2TallTyler russian: 3 changes by Ln-Wolf ukrainian: 18 changes by StepanIvasyn lithuanian: 6 changes by dziugas1959 portuguese (brazilian): 11 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 22 +++++++++---------- src/lang/english_AU.txt | 2 +- src/lang/english_US.txt | 6 +++--- src/lang/lithuanian.txt | 6 ++++++ src/lang/norwegian_bokmal.txt | 2 +- src/lang/russian.txt | 6 +++--- src/lang/spanish_MX.txt | 33 ++++++++++++++++++++++++++++- src/lang/ukrainian.txt | 35 ++++++++++++++++--------------- 8 files changed, 75 insertions(+), 37 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 1433e179fb..3b32451592 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -275,14 +275,14 @@ STR_LIST_FILTER_TOOLTIP :{BLACK}Digitar STR_TOOLTIP_GROUP_ORDER :{BLACK}Escolher a ordem de agrupamento STR_TOOLTIP_SORT_ORDER :{BLACK}Escolher a ordenação (descendente/ascendente) STR_TOOLTIP_SORT_CRITERIA :{BLACK}Escolher o critério de ordenação -STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Escolher o critério de pesquisa +STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Escolher o critério de seleção STR_BUTTON_SORT_BY :{BLACK}Ordenar por STR_BUTTON_CATCHMENT :{BLACK}Cobertura STR_TOOLTIP_CATCHMENT :{BLACK}Mostrar/Ocultar a área de cobertura STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Fechar janela STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Título da janela - arraste isto para mover a janela -STR_TOOLTIP_SHADE :{BLACK}Encolher janela - somente a barra de título fica visível +STR_TOOLTIP_SHADE :{BLACK}Encolher janela - manter visível apenas a barra de título STR_TOOLTIP_DEBUG :{BLACK}Mostrar informação de depuração de NewGRF STR_TOOLTIP_DEFSIZE :{BLACK}Redimensionar a janela para o tamanho padrão. Ctrl+Clique para salvar o tamanho atual como padrão STR_TOOLTIP_STICKY :{BLACK}Fixar esta janela para ela não ser fechada pela tecla 'Fechar Todas as Janelas'. Ctrl+Clique para salvar o estado como padrão @@ -1749,7 +1749,7 @@ STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION :Mostrar caminho STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT :Usar uma cor diferente nos trajetos reservados para auxiliar na solução de problemas com trens que se recusam a entrar em seções controlados por sinais de caminho STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Manter as ferramentas de construção ativas após o uso: {STRING} -STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Manter ativas as ferramentas de construção para pontes, túneis, etc. após o uso +STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Manter as ferramentas de construção de pontes, túneis, etc. abertas após o uso STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Remover automaticamente os sinais durante a construção de ferrovias: {STRING} STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Remover automaticamente os sinais durante a construção de ferrovias se os sinais estiverem no caminho. Isso pode, potencialmente, causar acidentes de trens @@ -1906,7 +1906,7 @@ STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT :Ano em que os j STR_CONFIG_SETTING_STARTING_YEAR :Data de início: {STRING} STR_CONFIG_SETTING_ENDING_YEAR :Pontuação no fim do ano: {STRING} -STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Ano em que o jogo termina para fins de pontuação. No fim desse ano, a pontuação da empresa é registrada e o painel de classificação é exibido, mas os jogadores podem continuar jogando depois disso.{}Se isso for antes do ano de início, o painel de classificação nunca será exibido +STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Ano em que o jogo termina para fins de pontuação. No fim desse ano, a pontuação da empresa é registrada e a tela de pontuação máxima é exibida, mas os jogadores podem continuar jogando depois disso.{}Se isso for antes do ano de início, a tela de pontuação máxima nunca será exibida STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nunca @@ -2140,12 +2140,12 @@ STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Algoritmo usado STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Gerador de rotas para embarcações: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Algoritmo usado para estabelecer as rotas das embarcações STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Reversão automática em sinais: {STRING} -STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam a direção em um sinal, se eles esperaram lá muito tempo +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam o sentido em um sinal, se eles tiverem esperado lá muito tempo ###length 2 STR_CONFIG_SETTING_PATHFINDER_NPF :NPF STR_CONFIG_SETTING_PATHFINDER_YAPF :YAPF {BLUE}(Recomendado) -STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Alterar valor da configuração +STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Alterar o valor # Config errors STR_CONFIG_ERROR :{WHITE}Erro no arquivo de configuração... @@ -3063,7 +3063,7 @@ STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING} STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Cadeia Industrial STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Mostrar indústrias que fornecem e aceitam carga STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Ligar ao minimapa -STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Selecionar também as indústrias mostradas no minimapa +STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Selecionar no minimapa as indústrias mostradas STR_INDUSTRY_CARGOES_SELECT_CARGO :{BLACK}Selecionar carga STR_INDUSTRY_CARGOES_SELECT_CARGO_TOOLTIP :{BLACK}Escolher a carga que você deseja mostrar STR_INDUSTRY_CARGOES_SELECT_INDUSTRY :{BLACK}Selecionar indústria @@ -3663,9 +3663,9 @@ STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Comprar direito STR_LOCAL_AUTHORITY_ACTION_BRIBE :Subornar a autoridade local ###next-name-looks-similar -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma campanha publicitária pequena local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação em um raio pequeno ao redor do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma campanha publicitária média local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação em um raio médio ao redor do centro da cidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma campanha publicitária grande local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação em um raio grande ao redor do centro da localidade{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma pequena campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio pequeno em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma média campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio médio em torno do centro da cidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma grande campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio grande em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MONTHS :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 meses.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MINUTES :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 minutos.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Construir uma estátua em homenagem à sua empresa.{}Produz um aumento permanente na classificação da estação nesta localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} @@ -4644,7 +4644,7 @@ STR_ORDER_REFIT_ORDER :(Adaptar para { STR_ORDER_REFIT_STOP_ORDER :(Adaptar para {STRING} e parar) STR_ORDER_STOP_ORDER :(Parar) -STR_ORDER_WAIT_TO_UNBUNCH :(aguardar para desagrupar) +STR_ORDER_WAIT_TO_UNBUNCH :(Aguardar para desagrupar) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Não pode usar a estação){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 63d2bc12d3..7a041367d2 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Refit to {STRI STR_ORDER_REFIT_STOP_ORDER :(Refit to {STRING} and stop) STR_ORDER_STOP_ORDER :(Stop) -STR_ORDER_WAIT_TO_UNBUNCH :(wait to unbunch) +STR_ORDER_WAIT_TO_UNBUNCH :(Wait to unbunch) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Can't use station){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index fcb8d3e559..13fba7db15 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacity STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Transfer Credits: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Maintenance interval: {LTBLUE}{COMMA}{NBSP}days{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Maintenance interval: {LTBLUE}{COMMA}{NBSP}minutes{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Maintenance interval: {LTBLUE}{COMMA}{NBSP}minute{P "" s}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Maintenance interval: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Last maintenance: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last maintenance: {LTBLUE}{NUM} minutes ago +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Last maintenance: {LTBLUE}{NUM} minute{P "" s} ago STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Increase maintenance interval by 10 days. Ctrl+Click to increase maintenance interval by 5 days STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Increase maintenance interval by 5 minutes. Ctrl+Click to increase maintenance interval by 1 minute STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Increase maintenance interval by 10 percent. Ctrl+Click to increase maintenance interval by 5 percent @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Refit to {STRI STR_ORDER_REFIT_STOP_ORDER :(Refit to {STRING} and stop) STR_ORDER_STOP_ORDER :(Stop) -STR_ORDER_WAIT_TO_UNBUNCH :(wait to unbunch) +STR_ORDER_WAIT_TO_UNBUNCH :(Wait to unbunch) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Can't use station){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 606fe189ce..5775ec7d33 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -4229,6 +4229,12 @@ STR_ENGINE_PREVIEW_SHIP.ka :laivą STR_ENGINE_PREVIEW_SHIP.kuo :laivu STR_ENGINE_PREVIEW_SHIP.kur :laive +STR_ENGINE_PREVIEW_COST_WEIGHT :Kaina: {CURRENCY_LONG} Svoris: {WEIGHT_SHORT} +STR_ENGINE_PREVIEW_COST_MAX_SPEED :Kaina: {CURRENCY_LONG} Maksimalus greitis: {VELOCITY} +STR_ENGINE_PREVIEW_SPEED_POWER :Greitis: {VELOCITY} Galia: {POWER} +STR_ENGINE_PREVIEW_SPEED_POWER_MAX_TE :Greitis: {VELOCITY} Galia: {POWER} Maks. „T.E“.: {FORCE} +STR_ENGINE_PREVIEW_CAPACITY :Talpa: {CARGO_LONG} +STR_ENGINE_PREVIEW_CAPACITY_2 :Talpa: {CARGO_LONG}, {CARGO_LONG} # Autoreplace window STR_REPLACE_VEHICLES_WHITE :{WHITE}Keisti tr. priemones {STRING} - {STRING} diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 07d1eb9841..6654abd5f7 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -4645,7 +4645,7 @@ STR_ORDER_REFIT_ORDER :(Bygg om til {S STR_ORDER_REFIT_STOP_ORDER :(Bygg om til {STRING} og stopp) STR_ORDER_STOP_ORDER :(Stopp) -STR_ORDER_WAIT_TO_UNBUNCH :(vent for å fjerne klumping) +STR_ORDER_WAIT_TO_UNBUNCH :(Vent for å fjerne klumping) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Kan ikke bruke stasjon){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/russian.txt b/src/lang/russian.txt index e517458adf..f4d7f5da4f 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -4571,7 +4571,7 @@ STR_VEHICLE_VIEW_AIRCRAFT_STATUS_START_STOP_TOOLTIP :{BLACK}Теку # Messages in the start stop button in the vehicle view STR_VEHICLE_STATUS_LOADING_UNLOADING :{LTBLUE}Разгрузка/Погрузка STR_VEHICLE_STATUS_LEAVING :{LTBLUE}Отъезжает -STR_VEHICLE_STATUS_WAITING_UNBUNCHING :{LTBLUE}Ожидание развязки +STR_VEHICLE_STATUS_WAITING_UNBUNCHING :{LTBLUE}Ожидание распределения на маршрут STR_VEHICLE_STATUS_CRASHED :{RED}Попал в аварию! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Поломка STR_VEHICLE_STATUS_STOPPED :{RED}Остановлен @@ -4830,7 +4830,7 @@ STR_ORDER_REFIT_ORDER :(Переобо STR_ORDER_REFIT_STOP_ORDER :(Переоборуд. под {STRING.acc} и стоп) STR_ORDER_STOP_ORDER :(Стоп) -STR_ORDER_WAIT_TO_UNBUNCH :(распределить) +STR_ORDER_WAIT_TO_UNBUNCH :(Распределить) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Неверный тип){POP_COLOUR} {STRING} {STATION} {STRING} @@ -5083,7 +5083,7 @@ STR_MESSAGE_ESTIMATED_COST :{WHITE}Пред STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Предполагаемый доход: {CURRENCY_LONG} # Saveload messages -STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Идёт сохранение,{}пожалуйста, дождитесь завершения! +STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Идёт сохранение;{}пожалуйста, дождитесь завершения! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Ошибка автосохранения STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Не удалось прочитать диск STR_ERROR_GAME_SAVE_FAILED :{WHITE}Невозможно сохранить игру{}{STRING} diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index 50a9e83b44..8b127708c1 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -937,6 +937,7 @@ STR_GAME_OPTIONS_TAB_SOCIAL_TT :{BLACK}Seleccio STR_GAME_OPTIONS_CURRENCY_UNITS_FRAME :{BLACK}Divisa STR_GAME_OPTIONS_CURRENCY_UNITS_DROPDOWN_TOOLTIP :{BLACK}Elegir divisa +STR_GAME_OPTIONS_CURRENCY_CODE :{STRING} ({STRING}) ###length 44 STR_GAME_OPTIONS_CURRENCY_GBP :Libra británica @@ -981,6 +982,8 @@ STR_GAME_OPTIONS_CURRENCY_HKD :Dólar hongkon STR_GAME_OPTIONS_CURRENCY_INR :Rupia india STR_GAME_OPTIONS_CURRENCY_IDR :Rupia indonesia STR_GAME_OPTIONS_CURRENCY_MYR :Ringgit malasio +STR_GAME_OPTIONS_CURRENCY_LVL :Lats letón +STR_GAME_OPTIONS_CURRENCY_PTE :Escudo portugués STR_GAME_OPTIONS_AUTOSAVE_FRAME :{BLACK}Guardado automático STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_TOOLTIP :{BLACK}Elegir el intervalo de guardados automáticos @@ -1086,6 +1089,8 @@ STR_CURRENCY_DECREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Reducir STR_CURRENCY_INCREASE_EXCHANGE_RATE_TOOLTIP :{BLACK}Incrementar el valor de la moneda por una libra (£) STR_CURRENCY_SET_EXCHANGE_RATE_TOOLTIP :{BLACK}Ajustar el valor de cambio de la moneda por una Libra (£) +STR_CURRENCY_SEPARATOR :{LTBLUE}Separador: {ORANGE}{STRING} +STR_CURRENCY_SET_CUSTOM_CURRENCY_SEPARATOR_TOOLTIP :{BLACK}Establece el separador para la moneda STR_CURRENCY_PREFIX :{LTBLUE}Prefijo: {ORANGE}{STRING} STR_CURRENCY_SET_CUSTOM_CURRENCY_PREFIX_TOOLTIP :{BLACK}Establecer el prefijo de la moneda @@ -1262,7 +1267,9 @@ STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Establecer cuá STR_CONFIG_SETTING_SUBSIDY_DURATION :Duración de subsidio: {STRING} ###length 2 STR_CONFIG_SETTING_SUBSIDY_DURATION_HELPTEXT :Años que durará un subsidio otorgado +STR_CONFIG_SETTING_SUBSIDY_DURATION_HELPTEXT_PERIODS :Establezca el número de periodos para los que se concederá un subsidio +STR_CONFIG_SETTING_SUBSIDY_DURATION_VALUE :{UNITS_YEARS_OR_PERIODS} ###setting-zero-is-special STR_CONFIG_SETTING_SUBSIDY_DURATION_DISABLED :Sin subsidios @@ -1415,6 +1422,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Ninguno* STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reducida STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal +STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR :Permitir pasos a nivel con carreteras o ferrocarriles propiedad de otras empresas: {STRING} +STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR_HELPTEXT :Permite construir pasos a nivel en carreteras o ferrocarriles que sean propiedad de otras empresas STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Permitir construcción de paradas de paso en localidades: {STRING} STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Se podrán construir paradas de paso en las carreteras que sean propiedad de las localidades @@ -1451,7 +1460,11 @@ STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT :Mostrar un mens STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Vehículos siempre disponibles: {STRING} STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Todos los modelos de vehículos estarán disponibles para siempre tras haber sido introducidos +STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Cronómetro: {STRING} +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Seleccione las unidades de tiempo del juego. Esto no puede cambiarse más tarde.{}{}El modo basado en el calendario es la experiencia clásica de OpenTTD, con un año que consta de 12 meses, y cada mes tiene de 28 a 31 días.{}{}En cambio, en el modo Reloj de pared, la producción de carga y las finanzas se basan en incrementos de un minuto, que es más o menos lo que dura un mes de 30 días en el modo basado en el calendario.{}{}En cualquiera de los dos modos siempre hay un calendario clásico, que se utiliza para las fechas de introducción de vehículos, casas y otras infraestructuras. ###length 2 +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Calendario +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Reloj STR_CONFIG_SETTING_MINUTES_PER_YEAR :Minutos por año: {STRING} STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Selecciona el número de minutos de un año de calendario. Por defecto es 12 minutos. Introduce 0 para evitar que cambie el tiempo del calendario. Este ajuste no afecta a la simulación de la economía del juego y sólo está disponible cuando se usa el modo "Reloj" . @@ -1974,6 +1987,10 @@ STR_CONFIG_SETTING_LARGER_TOWNS_DISABLED :Ninguno STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador inicial de tamaño de ciudad: {STRING} STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamaño medio de las ciudades relativo a las localidades al inicio del juego +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Actualizar gráfico de distribución cada {STRING} +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tiempo entre los recálculos posteriores del gráfico de enlaces. Cada recálculo calcula los planes de un componente del gráfico. Esto significa que un valor X para este ajuste no significa que todo el gráfico se actualizará cada X segundos. Sólo algunos componentes lo harán. Cuanto más corto sea el valor, más tiempo de CPU será necesario para calcularlo. Cuanto más largo sea el valor, más tardará la distribución de la carga en las nuevas rutas. +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Utilizar {STRING} para recalcular el gráfico de distribución +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tiempo que tarda cada recálculo de un componente del gráfico de enlaces. Cuando un recálculo se inicia, un proceso es creado y se le permite ejecutarse durante este número de segundos. Cuanto más corto sea este valor, más probable es que el proceso no termine cuando se supone que deba hacerlo. Entonces el juego se detiene hasta que lo haga ("lag"). Cuanto más largo lo establezcas más tardará en actualizarse la distribución cuando cambien las rutas STR_CONFIG_SETTING_DISTRIBUTION_PAX :Modo de distribución para pasajeros: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :En una distribución "Simétrica", se envía la misma cantidad de pasajeros de la estación A a la B que de la B a la A. En una distribución "Asimétrica" se pueden enviar cantidades arbitrarias de pasajeros en cualquier direccion. "Manual" significa que no se realiza una distribución automática para los pasajeros. @@ -2527,6 +2544,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :recibido paquet STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :revisión incorrecta STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :nombre en uso STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :contraseña incorrecta +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :no está en la lista de permitidos STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :empresa incorrecta en un DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :expulsado por el servidor STR_NETWORK_ERROR_CLIENT_CHEATER :trataste de usar un truco @@ -2662,6 +2680,7 @@ STR_TRANSPARENT_BUILDINGS_TOOLTIP :{BLACK}Transpar STR_TRANSPARENT_BRIDGES_TOOLTIP :{BLACK}Transparencia de puentes. Ctrl+Clic para bloquear STR_TRANSPARENT_STRUCTURES_TOOLTIP :{BLACK}Transparencia de estructuras como faros o antenas. Ctrl+Clic para bloquear STR_TRANSPARENT_CATENARY_TOOLTIP :{BLACK}Transparencia de catenaria. Ctrl+Clic para bloquear +STR_TRANSPARENT_TEXT_TOOLTIP :{BLACK}Ajustar transparencia para el texto que indica la carga, el coste y los ingresos. Ctrl+clic para bloquear STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Ocultar objetos totalmente # Linkgraph legend window @@ -2677,7 +2696,10 @@ STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLA STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}sobrecargado # Linkgraph tooltip +STR_LINKGRAPH_STATS_TOOLTIP_MONTH :{BLACK}{CARGO_LONG} serán transportad{G 0 o a}s cada mes desde {STATION} a {STATION} ({COMMA}% de capacidad){STRING} +STR_LINKGRAPH_STATS_TOOLTIP_MINUTE :{BLACK}{CARGO_LONG} serán transportad{G 0 o a}s cada minuto desde {STATION} a {STATION} ({COMMA}% de capacidad){STRING} STR_LINKGRAPH_STATS_TOOLTIP_RETURN_EXTENSION :{}{CARGO_LONG} a ser transportad{G 0 o a}{P 0 "" s}) de vuelta ({COMMA}% de la capacidad) +STR_LINKGRAPH_STATS_TOOLTIP_TIME_EXTENSION :{}Tiempo de viaje promedio: {UNITS_DAYS_OR_SECONDS} # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Mostrar área de recolección @@ -4508,6 +4530,7 @@ STR_ORDER_REFIT_ORDER :(Reformar a {ST STR_ORDER_REFIT_STOP_ORDER :(Reformar a {STRING} y detenerse) STR_ORDER_STOP_ORDER :(Detenerse) +STR_ORDER_WAIT_TO_UNBUNCH :(Esperar para desenganchar) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(No se puede usar la estación){POP_COLOUR} {STRING} {STATION} {STRING} @@ -4610,7 +4633,10 @@ STR_TIMETABLE_EXPECTED :{BLACK}Esperado STR_TIMETABLE_SCHEDULED :{BLACK}Programado STR_TIMETABLE_EXPECTED_TOOLTIP :{BLACK}Cambiar entre esperado y programado +STR_TIMETABLE_ARRIVAL_DATE :L: {COLOUR}{DATE_TINY} +STR_TIMETABLE_DEPARTURE_DATE :S: {COLOUR}{DATE_TINY} STR_TIMETABLE_ARRIVAL_SECONDS_IN_FUTURE :L: {COLOUR}{COMMA} s +STR_TIMETABLE_DEPARTURE_SECONDS_IN_FUTURE :S: {COLOUR}{COMMA} s # Date window (for timetable) @@ -4698,7 +4724,8 @@ STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura # Script Parameters STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parámetros -STR_AI_SETTINGS_CAPTION_AI :{WHITE}Parámetros de IA +STR_AI_SETTINGS_CAPTION_AI :Parámetros de IA +STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de juego STR_AI_SETTINGS_CLOSE :{BLACK}Cerrar STR_AI_SETTINGS_RESET :{BLACK}Reiniciar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} @@ -5651,6 +5678,10 @@ STR_TOWN_NAME :{TOWN} STR_VEHICLE_NAME :{VEHICLE} STR_WAYPOINT_NAME :{WAYPOINT} +STR_CURRENCY_SHORT_KILO :{NBSP}k +STR_CURRENCY_SHORT_MEGA :{NBSP}M +STR_CURRENCY_SHORT_GIGA :{NBSP}kM +STR_CURRENCY_SHORT_TERA :{NBSP}MM STR_JUST_CARGO :{CARGO_LONG} STR_JUST_CHECKMARK :{CHECKMARK} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 4fad532d45..afcdfbdb64 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -540,7 +540,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Буду STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Будувати порти STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Будувати аеропорти STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Змінити ландшафт -STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Налаштувати звук/музику +STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Налаштування звуків/музики STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Показати останнє повідомлення. Налаштування повідомлень STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Інформація про земельну ділянку, знімки екрану, про гру OpenTTD та інструменти для розробки STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Переключити панелі @@ -1183,7 +1183,7 @@ STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Увім STR_GAME_OPTIONS_VIDEO_DRIVER_INFO :{BLACK}Поточний драйвер: {STRING} STR_GAME_OPTIONS_GUI_SCALE_FRAME :{BLACK}Розмір інтерфейсу -STR_GAME_OPTIONS_GUI_SCALE_TOOLTIP :{BLACK}Перетягніть повзунок для встановлення розміру інтерфейсу. Тримайте Ctrl для закріплення +STR_GAME_OPTIONS_GUI_SCALE_TOOLTIP :{BLACK}Перетягніть повзунок для встановлення розміру інтерфейсу. Ctrl+протягування для точнішого перетягування STR_GAME_OPTIONS_GUI_SCALE_AUTO :{BLACK}Автоматично визначений розмір STR_GAME_OPTIONS_GUI_SCALE_AUTO_TOOLTIP :{BLACK}Увімкнутий прапорець дозволить автоматично визначити розмір інтерфейсу @@ -1406,6 +1406,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT :ліворуч STR_CONFIG_SETTING_HORIZONTAL_POS_CENTER :по центру STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :праворуч +STR_CONFIG_SETTING_SECONDS_VALUE :{COMMA}{NBSP}секунд{P 0 и "" ""} STR_CONFIG_SETTING_INFINITE_MONEY :Нескінченні гроші: {STRING} STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Дозволяє необмежені витрати і вимикає банкрутство компаній @@ -1703,7 +1704,7 @@ STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Рівень с STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Оберіть висоту, вище якої лежить сніг в субарктичному ландшафті. Сніг впливає на генерування підприємств та на умови росту міст. Можливо змінити лише в редакторі сценаріїв, інакше вираховується за параметром "покриття снігом" STR_CONFIG_SETTING_SNOW_COVERAGE :Покриття снігом: {STRING} -STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Контроль приблизної частки снігу в субарктичному ландшафті. Сніг впливає на створення підприємств та умови росту міст. Використовується лише при створенні мапи. Території біля моря завжди безсніжні +STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Оберіть приблизну частку снігу в субарктичному ландшафті. Сніг впливає на створення підприємств та умови зростання міст. Використовується лише при створенні мапи. Моря і узбережжя завжди безсніжні STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_DESERT_COVERAGE :Покриття пустелею: {STRING} @@ -2724,7 +2725,7 @@ STR_NETWORK_ERROR_TIMEOUT_JOIN :{WHITE}Ви д STR_NETWORK_ERROR_INVALID_CLIENT_NAME :{WHITE}Неприпустиме ім'я гравця STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION_CAPTION :{WHITE}Можлива втрата з'єднання -STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}На протязі {NUM} секунд{P и "" ""} не надійшло жодної інформації від сервера +STR_NETWORK_ERROR_CLIENT_GUI_LOST_CONNECTION :{WHITE}Впродовж {NUM} секунд{P и "" ""} не надійшло жодної інформації від сервера ###length 22 STR_NETWORK_ERROR_CLIENT_GENERAL :фатальна помилка @@ -3043,7 +3044,7 @@ STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Вибе STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Орієнтація зупинки STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Виберіть орієнтацію зупинки STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Орієнтація станції -STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Виберіть орієнтацію вантажної станції +STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Оберіть орієнтацію вантажної станції STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Орієнтація пасажирської трамвайної станції STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Виберіть орієнтацію пасажирської трамвайної станції STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Орієнтація вантажної трамвайної станції @@ -3052,12 +3053,12 @@ STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Вибе # Waterways toolbar (last two for SE only) STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Судноплавне будівництво STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Водні шляхи -STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Будувати канали. Утримуйте Shift для показу витрат на будівництво -STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Будувати шлюз. Утримуйте Shift для показу витрат на будівництво -STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Будувати корабельні доки (для будівництва та обслуговування кораблів). Утримуйте Shift для показу витрат на будівництво -STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Будувати док. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво +STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Будування каналів. Утримуйте Shift для показу очікуваних витрат +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Будування шлюзів. Утримуйте Shift для показу очікуваних витрат +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Будування корабельних елінгів (для будівництва та обслуговування кораблів). Утримуйте Shift для показу орієнтовних витрат +STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Будування доку. Ctrl+клац для приєднання додаткових доків. Утримуйте Shift для показу очікуваних витрат STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Розмістити бакен, який можна використовувати як точку маршруту. Утримуйте Shift для показу витрат на розміщення -STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Побудувати акведук. Утримуйте Shift для показу витрат на будівництво +STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Будування акведука. Утримуйте Shift для показу очікуваних витрат STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Будувати канал. Ctrl+клац на рівні моря для затоплення морською водою STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Прокласти річки. Ctrl+клац для вибору діагональних ділянок @@ -3946,7 +3947,7 @@ STR_CARGO_RATING_VERY_GOOD :дуже доб STR_CARGO_RATING_EXCELLENT :відмінно STR_CARGO_RATING_OUTSTANDING :найкраще -STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Показати станцію в центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на станцію +STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Показувати станцію в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на станцію STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Перейменувати станцію STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Показати всі поїзди, які заходять на цю станцію @@ -4259,13 +4260,13 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Купу ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний поїзд. Утримуйте Shift для показу витрат на придбання -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибране авто. Утримуйте Shift для показу витрат на придбання +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Придбати обраний дорожній транспорт. Утримуйте Shift для показу орієнтовних витрат STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Купити обраний корабель. Утримуйте Shift для показу очікуваних витрат -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний літак. Утримуйте Shift для показу витрат на придбання +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Придбати обраний літальний апарат. Утримуйте Shift для показу орієнтовних витрат ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Придбайте та переобладнайте виділений поїзд. Shift+клац показує орієнтовну вартість без покупки -STR_BUY_VEHICLE_ROAD_VEHICLE_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 :{BLACK}Придбайте та переобладнайте виділений повітряний апарат. Утримуйте Shift, щоб побачити тільки орієнтовну вартість @@ -4480,14 +4481,14 @@ STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Пока STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Показати авіатранспорт у центрі головного вікна. Подвійний клац для руху за авіатранспортом у головному вікні. Ctrl+клац мишою для показу авіатранспорту в додатковому вікні ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити поїзд у депо +STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити потяг у депо. Ctrl+клац тільки для техогляду STR_VEHICLE_VIEW_ROAD_VEHICLE_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити авто в депо. Ctrl+клац тільки для техогляду STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити корабель в елінг. Ctrl+клац тільки для техогляду STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити літак в ангар. Ctrl+клац тільки для техогляду ###length VEHICLE_TYPES STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Купити копію поїзда з усіма вагонами. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання -STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Купити копію авто. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Купити копію авто. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Купити копію корабля. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Купити копію літака. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання @@ -4925,7 +4926,7 @@ STR_AI_DEBUG_CONTINUE :{BLACK}Прод STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Зняти з паузи і продовжити ШІ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Відобразити результати зневадження цього ШІ STR_AI_GAME_SCRIPT :{BLACK}Ігровий скрипт -STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Перевірити журнал ігрового скрипту +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Перевірити журнал ігрового скрипту. Ctrl+клац відкриє журнал у новому вікні STR_ERROR_AI_NO_AI_FOUND :Не знайдено підходящих модулів ШІ.{}Це модуль-заглушка, він нічого не робить.{}Ви можете завантажити різноманітні модулі ШІ через 'Додатковий контент' STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Один із запущених скриптів перестав працювати. Будь ласка, повідомте про це автора скрипту, разом зі знімком вікна зневадження ШІ / ігрового скрипту From 433484cda3c1cecc0441dc0080c1cb1a765cf807 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Wed, 27 Mar 2024 20:20:27 +0000 Subject: [PATCH 45/70] Fix #12388: Vehicle::CopyVehicleConfigAndStatistics not releasing unit number (#12389) --- src/train_cmd.cpp | 3 +-- src/vehicle.cpp | 9 +++++++++ src/vehicle_base.h | 3 +++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index 4413a2e777..51353c5281 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -1336,8 +1336,7 @@ CommandCost CmdMoveRailVehicle(DoCommandFlag flags, VehicleID src_veh, VehicleID } /* Remove stuff not valid anymore for non-front engines. */ DeleteVehicleOrders(src); - Company::Get(src->owner)->freeunits[src->type].ReleaseID(src->unitnumber); - src->unitnumber = 0; + src->ReleaseUnitNumber(); src->name.clear(); } diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 044c8013c9..7d6e8489ea 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -2401,6 +2401,15 @@ void Vehicle::ResetRefitCaps() for (Vehicle *v = this; v != nullptr; v = v->Next()) v->refit_cap = v->cargo_cap; } +/** + * Release the vehicle's unit number. + */ +void Vehicle::ReleaseUnitNumber() +{ + Company::Get(this->owner)->freeunits[this->type].ReleaseID(this->unitnumber); + this->unitnumber = 0; +} + /** * Handle the loading of the vehicle; when not it skips through dummy * orders and does nothing in all other cases. diff --git a/src/vehicle_base.h b/src/vehicle_base.h index 3c4e2ea65f..592063323c 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -750,6 +750,8 @@ public: void ResetRefitCaps(); + void ReleaseUnitNumber(); + /** * Copy certain configurations and statistics of a vehicle after successful autoreplace/renew * The function shall copy everything that cannot be copied by a command (like orders / group etc), @@ -760,6 +762,7 @@ public: { this->CopyConsistPropertiesFrom(src); + this->ReleaseUnitNumber(); this->unitnumber = src->unitnumber; this->current_order = src->current_order; From ca53e134be6a63b6f528c5eac0476d15bac81323 Mon Sep 17 00:00:00 2001 From: translators Date: Thu, 28 Mar 2024 04:40:56 +0000 Subject: [PATCH 46/70] Update: Translations from eints swedish: 14 changes by sereneavatar finnish: 2 changes by hpiirai ukrainian: 18 changes by StepanIvasyn latvian: 4 changes by lexuslatvia portuguese (brazilian): 13 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 26 +++++++++++----------- src/lang/finnish.txt | 4 ++-- src/lang/latvian.txt | 8 +++---- src/lang/swedish.txt | 28 ++++++++++++------------ src/lang/ukrainian.txt | 36 +++++++++++++++---------------- 5 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 3b32451592..e43718ba29 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -227,7 +227,7 @@ STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP} STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t -STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/kg +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/t STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg @@ -252,7 +252,7 @@ STR_UNITS_FORCE_IMPERIAL :{DECIMAL}{NBSP} STR_UNITS_FORCE_METRIC :{DECIMAL}{NBSP}kgf STR_UNITS_FORCE_SI :{DECIMAL}{NBSP}kN -STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}pé{P "" s} +STR_UNITS_HEIGHT_IMPERIAL :{DECIMAL}{NBSP}ft STR_UNITS_HEIGHT_METRIC :{DECIMAL}{NBSP}m STR_UNITS_HEIGHT_SI :{DECIMAL}{NBSP}m @@ -269,8 +269,8 @@ STR_UNITS_PERIODS :{NUM}{NBSP}per # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Filtro: -STR_LIST_FILTER_OSKTITLE :{BLACK}Digitar uma ou mais palavras-chave para procurar na lista -STR_LIST_FILTER_TOOLTIP :{BLACK}Digitar uma ou mais palavras-chave para procurar na lista +STR_LIST_FILTER_OSKTITLE :{BLACK}Inserir uma ou mais palavras-chave para filtrar a lista +STR_LIST_FILTER_TOOLTIP :{BLACK}Digite uma ou mais palavras-chave para procurar na lista STR_TOOLTIP_GROUP_ORDER :{BLACK}Escolher a ordem de agrupamento STR_TOOLTIP_SORT_ORDER :{BLACK}Escolher a ordenação (descendente/ascendente) @@ -282,7 +282,7 @@ STR_TOOLTIP_CATCHMENT :{BLACK}Mostrar/ STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Fechar janela STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Título da janela - arraste isto para mover a janela -STR_TOOLTIP_SHADE :{BLACK}Encolher janela - manter visível apenas a barra de título +STR_TOOLTIP_SHADE :{BLACK}Encolher janela - mostrar apenas a barra de título STR_TOOLTIP_DEBUG :{BLACK}Mostrar informação de depuração de NewGRF STR_TOOLTIP_DEFSIZE :{BLACK}Redimensionar a janela para o tamanho padrão. Ctrl+Clique para salvar o tamanho atual como padrão STR_TOOLTIP_STICKY :{BLACK}Fixar esta janela para ela não ser fechada pela tecla 'Fechar Todas as Janelas'. Ctrl+Clique para salvar o estado como padrão @@ -383,7 +383,7 @@ STR_GOTO_ORDER_VIEW_TOOLTIP :{BLACK}Abrir a STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Pausar o jogo STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Avanço rápido do jogo STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Opções e configurações -STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Salvar, abrir ou abandonar jogo, sair do programa +STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Salvar, abrir ou abandonar o jogo, sair do programa STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Abrir mapa, visualização extra, fluxo de cargas ou lista de placas STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Abrir lista de localidades ou encontrar localidade STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Abrir lista de subsídios @@ -703,12 +703,12 @@ STR_MUSIC_TOOLTIP_SKIP_TO_NEXT_TRACK_IN_SELECTION :{BLACK}Passar p STR_MUSIC_TOOLTIP_STOP_PLAYING_MUSIC :{BLACK}Parar a reprodução de música STR_MUSIC_TOOLTIP_START_PLAYING_MUSIC :{BLACK}Iniciar a reprodução de música STR_MUSIC_TOOLTIP_DRAG_SLIDERS_TO_SET_MUSIC :{BLACK}Arraste os controles deslizantes para definir o volume de músicas e efeitos sonoros -STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Selecionar programa 'Todas as faixas' -STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Selecionar músicas 'Estilo Antigo' -STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Selecionar músicas 'Estilo Moderno' -STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Selecionar músicas 'Estilo Ezy Street' -STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Selecionar músicas 'Personalizado 1' (definido pelo usuário) -STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Selecionar músicas 'Personalizado 2' (definido pelo usuário) +STR_MUSIC_TOOLTIP_SELECT_ALL_TRACKS_PROGRAM :{BLACK}Selecionar programa 'todas as faixas' +STR_MUSIC_TOOLTIP_SELECT_OLD_STYLE_MUSIC :{BLACK}Selecionar programa com músicas 'estilo antigo' +STR_MUSIC_TOOLTIP_SELECT_NEW_STYLE_MUSIC :{BLACK}Selecionar programa com músicas 'estilo moderno' +STR_MUSIC_TOOLTIP_SELECT_EZY_STREET_STYLE :{BLACK}Selecionar programa com músicas 'estilo Ezy Street' +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_1_USER_DEFINED :{BLACK}Selecionar programa 'Personalizado 1' (definido pelo usuário) +STR_MUSIC_TOOLTIP_SELECT_CUSTOM_2_USER_DEFINED :{BLACK}Selecionar programa 'Personalizado 2' (definido pelo usuário) STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Ligar/Desligar reprodução aleatória STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Mostrar janela de seleção de faixas de música @@ -758,7 +758,7 @@ STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Mostrar STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Mostrar rotas de transporte no mapa STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Mostrar vegetação no mapa STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Mostrar proprietários dos terrenos no mapa -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique em um tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desativar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para ativar todos os tipos de indústrias +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique em um tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desativar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para ativar todos os tipos de indústria STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clique em uma empresa para mostrar/ocultar suas propriedades. Ctrl+Clique para desativar todas as empresas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as empresas STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clique em uma carga para mostrar/ocultar sua propriedade. Ctrl+Clique para desativar todas as cargas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as cargas diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index ce187a16f2..caff3cc9e7 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -1832,7 +1832,7 @@ STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Lentokoneiden o STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Määritä oletushuoltoväli uusille lentokoneille, mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä STR_CONFIG_SETTING_SERVINT_SHIPS :Laivojen oletushuoltoväli: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Määritä oletushuoltoväli uusille laivoille, mikäli kulkuneuvolle ei ole määritelty erillistä huoltoväliä -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}Päivä{P 0 "" s}/Minuutti{P 0 "" s}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}päivä{P 0 "" ä}/minuutti{P 0 "" a}/% ###setting-zero-is-special STR_CONFIG_SETTING_SERVINT_DISABLED :Pois käytöstä @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Sovita {STRING STR_ORDER_REFIT_STOP_ORDER :(Sovita rahtityypille {STRING} ja pysähdy) STR_ORDER_STOP_ORDER :(Pysähdy) -STR_ORDER_WAIT_TO_UNBUNCH :(odota suman purkamiseksi) +STR_ORDER_WAIT_TO_UNBUNCH :(Odota suman purkamiseksi) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Asema ei käytettävissä){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index 8e550a35e6..04c0579bfe 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -1512,7 +1512,7 @@ STR_CONFIG_SETTING_MINUTES_PER_YEAR_FROZEN :0 (kalendāra l STR_CONFIG_SETTING_TOWN_CARGO_SCALE :Mērogot pilsētas kravu ražošana: {STRING} STR_CONFIG_SETTING_TOWN_CARGO_SCALE_HELPTEXT :Mērogojiet pilsētu kravu ražošanu par šo procentu. STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE :Merogot industrijas kravu ražošanu: {STRING} -STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Mērogojiet nozaru kravu ražošanu par šo procentu. +STR_CONFIG_SETTING_INDUSTRY_CARGO_SCALE_HELPTEXT :Mērogojiet nozaru kravu ražošanu par šo procentu STR_CONFIG_SETTING_CARGO_SCALE_VALUE :{NUM}% STR_CONFIG_SETTING_AUTORENEW_VEHICLE :Automātiski atjaunot transportlīdzekļus, kad tie ir kļuvuši veci: {STRING} @@ -1544,7 +1544,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT :Diagrammu līni STR_CONFIG_SETTING_SHOW_NEWGRF_NAME :Rādīt jauno NewGRF paplašinājumu nosaukumus uzbūvēto transportlīdzekļu logā: {STRING} STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Uzbūvēto transportlīdzekļu loga pievienot rindu, kurā būtu redzams, no kura NewGRF nāk izvēlētais transportlīdzeklis. -STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Rādīt kravas, ko transportlīdzekļi var pārvadāt saraksta logos {STRING} +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Rādīt kravas, ko transportlīdzekļi var pārvadāt saraksta logos: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Ja ieslēgts, transportlīdzekļa transportējamā krava parādīsies virs tās transportlīdzekļu sarakstos STR_CONFIG_SETTING_LANDSCAPE :Ainava: {STRING} @@ -2042,7 +2042,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simetrisks" no STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Pasta izplatīšanas režīms: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :"Simetrisks" nozīmē, ka no stacijas A uz staciju B tiks nosūtīts aptuveni tāds pats pasta daudzums kā no B uz A. "Asimetrisks" nozīmē, ka jebkurā virzienā var nosūtīt patvaļīgu pasta daudzumu. "Manuāli" nozīmē, ka pasta automātiska izplatīšana netiks veikta. STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Izplatīšanas režīms APSARGĀJAMAI preču klasei: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :APSARGĀJAMĀ kravu klasē ir vērtslietas mērenā klimatā, dimanti subtropu klimatā vai zelts subarktiskajā klimatā. NewGRF to var mainīt. "Simetrisks" nozīmē, ka no stacijas A uz staciju B tiks nosūtīts aptuveni tāds pats šīs kravas daudzums kā no B uz A. "Asimetrisks" nozīmē, ka šīs kravas var nosūtīt jebkurā virzienā patvaļīgi. "Manuāli" nozīmē, ka šai kravai automātiskā sadale nenotiks. Spēlējot subarktisko vai subtropu, ieteicams to iestatīt uz asimetrisku vai manuālu, jo bankas saņem kravas tikai šādos klimatiskajos apstākļos. Mērenam klimatam varat izvēlēties arī simetrisko, jo bankas nosūtīs vērtslietas atpakaļ uz izcelsmes banku. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :APSARGĀJAMĀ kravu klasē ir vērtslietas mērenā klimatā, dimanti subtropu klimatā vai zelts subarktiskajā klimatā. NewGRF to var mainīt. "Simetrisks" nozīmē, ka no stacijas A uz staciju B tiks nosūtīts aptuveni tāds pats šīs kravas daudzums kā no B uz A. "Asimetrisks" nozīmē, ka šīs kravas var nosūtīt jebkurā virzienā patvaļīgi. "Manuāli" nozīmē, ka šai kravai automātiskā sadale nenotiks. Spēlējot subarktisko vai subtropu, ieteicams to iestatīt uz asimetrisku vai manuālu, jo bankas saņem kravas tikai šādos klimatiskajos apstākļos. Mērenam klimatam varat izvēlēties arī simetrisko, jo bankas nosūtīs vērtslietas atpakaļ uz izcelsmes banku STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Izplatīšanas modelis citām kravu klasēm: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :"Asimetrisks" nozīmē, ka jebkurā virzienā var nosūtīt patvaļīgu daudzumu kravas. "Manuāli" nozīmē, ka šīm kravām automātiska sadale nenotiks ###length 3 @@ -2054,7 +2054,7 @@ STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Sadales precizi STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Jo lielāku vērtību iestatīsiet, jo vairāk CPU laika aizies saišu grafa aprēķināšanai. Ja tas aizņem pārāk daudz laika, jūs varētu pamanīt spēles iebremzēšanos. Ja iestatīsiet pārāk mazu, izplatīšana būs neprecīza un jūs varētu pamanīt, ka krava tiek nosūtīta uz negaidītām vietām. STR_CONFIG_SETTING_DEMAND_DISTANCE :Attāluma ietekme uz pieprasījumu: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Ja iestatīsiet šo vērtību lielāku kā 0, attālums starp kravas izcelsmes staciju A un iespējamo galastaciju B ietekmēs sūtāmās kravas apjomu. Jo tālāk no stacijas A ir stacija B, jo mazāk kravas tiks nosūtīts. Jo augstāka vērtība, jo mazāk kravas tiks nosūtīts uz tālo staciju un vairāk kravu uz tuvo staciju. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Ja iestatīsiet šo vērtību lielāku kā 0, attālums starp kravas izcelsmes staciju A un iespējamo galastaciju B ietekmēs sūtāmās kravas apjomu. Jo tālāk no stacijas A ir stacija B, jo mazāk kravas tiks nosūtīts. Jo augstāka vērtība, jo mazāk kravas tiks nosūtīts uz tālo staciju un vairāk kravu uz tuvāku staciju. STR_CONFIG_SETTING_DEMAND_SIZE :Atpakaļceļa kravas daudzums simetriskajā režīmā: {STRING} STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Uzstādod šo mazāk par 100% liks simetriskajai sadalei izturēties vairāk kā asimetriskajai. Mazāk kravas ar varu tiks sūtīts atpakaļ ja noteikts daudzums tiks sūtīts uz piestātni. Ja jūs uzstādīsiet to uz 0% simetriskā sadale izturēsies tā pat kā asimetriskā. diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index d35c4d763b..532a9ca307 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -1056,7 +1056,7 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Kryssa i STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Använd traditionellt sprite-typsnitt STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Kryssa i den här rutan om du föredrar att använda det traditionella sprite-typsnittet med fast storlek STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Anti-alias-typsnitt -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Kryssa i den här rutan för anti-aliasing av typsnitt med justerbar storlek. +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Kryssa i den här rutan för anti-aliasing av typsnitt med justerbar storlek STR_GAME_OPTIONS_GUI_SCALE_1X :1x STR_GAME_OPTIONS_GUI_SCALE_2X :2x @@ -1495,13 +1495,13 @@ STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES :Fordon blir ald STR_CONFIG_SETTING_NEVER_EXPIRE_VEHICLES_HELPTEXT :Om det är aktiverat förblir alla fordonstyper tillgängliga i obegränsad tid efter att de introducerats STR_CONFIG_SETTING_TIMEKEEPING_UNITS :Tidhållning: {STRING} -STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Välj enheter för spelets tidhållning. Detta kan inte ändras senare.{}{}Kalenderbaserat spelläge är den klassiska OpenTTD-upplevelsen, där ett år består av 12 månader och varje månad har 28-31 dagar.{}{}I Väggklockbaserat spelläge är godsproduktion och finanser istället baserade på enminutssteg, vilket är ungefär så länge som en 30-dagarsmånad tar i Kalenderbaserat spelläge. Dessa är grupperade i 12-minutersperioder motsvarande ett år i Kalenderbaserat spelläge.{}{}Oavsett spelläge finns det alltid en klassisk kalender som används för introduktionsdatum av fordon, byggnader, och annan infrastruktur. +STR_CONFIG_SETTING_TIMEKEEPING_UNITS_HELPTEXT :Välj enheter för spelets tidhållning. Detta kan inte ändras senare.{}{}Kalenderbaserat spelläge är den klassiska OpenTTD-upplevelsen, där ett år består av 12 månader och varje månad har 28-31 dagar.{}{}I Väggklockbaserat spelläge är godsproduktion och finanser istället baserade på enminutssteg, vilket är ungefär så länge som en 30-dagarsmånad tar i Kalenderbaserat spelläge. Dessa är grupperade i 12-minutersperioder motsvarande ett år i Kalenderbaserat spelläge.{}{}Oavsett spelläge finns det alltid en klassisk kalender som används för introduktionsdatum av fordon, byggnader, och annan infrastruktur ###length 2 STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Kalender STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Väggklocka STR_CONFIG_SETTING_MINUTES_PER_YEAR :Minuter per år: {STRING} -STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Välj antalet minuter som går i ett kalenderår. Standard är 12 minuter. Sätt till 0 för att stoppa kalendertiden från att ändras. Denna inställning påverkar inte spelets ekonomiska simulering, och är endast tillgänglig för tidhållning medelst väggklocka. +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Välj antalet minuter som går i ett kalenderår. Standard är 12 minuter. Sätt till 0 för att stoppa kalendertiden från att ändras. Denna inställning påverkar inte spelets ekonomiska simulering, och är endast tillgänglig för tidhållning medelst väggklocka STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special @@ -1529,7 +1529,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Visningstid fö STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tid som felmeddelanden i ett rött fönster ska visas. Notera att vissa (kritiska) felmeddelanden inte stängs automatiskt efter denna tid, utan måste stängas manuellt STR_CONFIG_SETTING_HOVER_DELAY :Visa tooltips: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Fördröjning innan tooltips visas när muspekaren hålls över ett gränssnittselement. Alternativt kan tooltips bindas till den högra musknappen när detta värde är satt till 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Fördröjning innan tooltips visas när muspekaren hålls över ett gränssnittselement. Alternativt kan tooltips bindas till den högra musknappen när detta värde är satt till 0 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Håll muspekaren i {COMMA} millisekund{P 0 "" er} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Högerklick @@ -1561,7 +1561,7 @@ STR_CONFIG_SETTING_INDUSTRY_DENSITY :Industritäthet STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Ange hur många industrier som ska genereras och vilken nivå som ska bibehållas under spelet STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximalt avstånd mellan oljeindustrier och kartans kant: {STRING} -STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Begränsar hur långt från kartans kant oljeraffinaderier och oljeplattformar kan byggas. På ö-kartor säkerställer detta att de är nära kusten. På kartor större än 256 rutor skalas detta värde upp. +STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Begränsar hur långt från kartans kant oljeraffinaderier och oljeplattformar kan byggas. På ö-kartor säkerställer detta att de är nära kusten. På kartor större än 256 rutor skalas detta värde upp STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Snögränsens höjd: {STRING} STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Välj på vilken höjd snötäcket börjar i det subarktiska landskapet. Snö påverkar även industrigeneration och städers tillväxtkrav. Kan endast modifieras via Scenarioredigeraren eller beräknas via "snötäckning" @@ -1575,7 +1575,7 @@ STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Välj den ungef STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Terrängens svårhetsgrad: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :Välj form och frekvens av kullar. Böljande landskap har färre, mer utbredda kullar, medan landskap med tuff terräng har fler, mer låga kullar. +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :Välj form och frekvens av kullar. Böljande landskap har färre, mer utbredda kullar, medan landskap med tuff terräng har fler, mer låga kullar ###length 4 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Väldigt lätt STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Lätt @@ -1840,7 +1840,7 @@ STR_CONFIG_SETTING_NOSERVICE :Inaktivera serv STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :När det är aktiverat servas inte fordon om de inte kan få motorstopp STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Straff i lastningshastighet för tåg som är längre än stationen: {STRING} -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Om aktiverad, kommer tåg som är för långa för en station att lastas långsammare än tåg som får plats på stationen. Denna inställning påverkar inte vägfinnare. +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Om aktiverad, kommer tåg som är för långa för en station att lastas långsammare än tåg som får plats på stationen. Denna inställning påverkar inte vägfinnare STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Använd hastighetsbegränsningar för tågvagnar: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :När det är aktiverat tas även hänsyn till vagnarnas hastighetsbegränsningar när ett tågs maxhastighet beräknas @@ -2007,7 +2007,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Högsta upplösning som sprites ska använda: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Begränsa den maximala upplösningen för sprites. Begränsning av spritens upplösning hindrar användandet av högre upplösningar även om det finns tillgängligt. Detta kan hjälpa att hålla spelets utseende mer enhetlig vid användandet av flera olika GRF filer med högre och lägre upplösning. +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Begränsa den maximala upplösningen för sprites. Begränsning av spritens upplösning hindrar användandet av högre upplösningar även om det finns tillgängligt. Detta kan hjälpa att hålla spelets utseende mer enhetlig vid användandet av flera olika GRF filer med högre och lägre upplösning ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2031,9 +2031,9 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Initial stadsst STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Storstäders genomsnittliga storlek i relation till vanliga städers vid spelets början STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Uppdatera distributionsdiagram var {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tid mellan efterföljande omräkningar av länkgrafen. Varje omräkning beräknar planerna för en komponent i grafen. Det betyder att ett värde X för den här inställningen inte betyder att hela grafen kommer att uppdateras var X:e sekund. Bara viss komponent kommer att göra det. Ju kortare du ställer in den desto mer CPU-tid kommer att behövas för att beräkna den. Ju längre du ställer in den desto längre tid tar det tills lastdistributionen startar på nya rutter. +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tid mellan efterföljande omräkningar av länkgrafen. Varje omräkning beräknar planerna för en komponent i grafen. Det betyder att ett värde X för den här inställningen inte betyder att hela grafen kommer att uppdateras var X:e sekund. Bara viss komponent kommer att göra det. Ju kortare du ställer in den desto mer CPU-tid kommer att behövas för att beräkna den. Ju längre du ställer in den desto längre tid tar det tills lastdistributionen startar på nya rutter STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Ta {STRING} för omräkning av distributionsdiagrammet -STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tid som det tar för varje omräkning av en länkdiagramkomponent. När en omräkning startas skapas en tråd som tillåts köra i detta antal sekunder. Ju kortare du ställer in detta desto mer sannolikt är det att tråden inte är färdig när den ska. Sedan stannar spelet tills det är ("lag"). Ju längre du ställer in den desto längre tid tar det för distributionen att uppdateras när rutter ändras. +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tid som det tar för varje omräkning av en länkdiagramkomponent. När en omräkning startas skapas en tråd som tillåts köra i detta antal sekunder. Ju kortare du ställer in detta desto mer sannolikt är det att tråden inte är färdig när den ska. Sedan stannar spelet tills det är ("lag"). Ju längre du ställer in den desto längre tid tar det för distributionen att uppdateras när rutter ändras STR_CONFIG_SETTING_DISTRIBUTION_PAX :Distributionssätt för passagerare: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Symmetriskt" innebär att ungefär samma antal passagerare färdas från station A till station B som från B till A. "Asymmetriskt" innebär att en godtycklig mängd passagerare kan färdas i vardera riktningen. "Manuellt" innebär att ingen automatisk distribution av passagerare sker @@ -2049,7 +2049,7 @@ STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :asymmetriskt STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :symmetriskt STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Distributionsnoggrannhet: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Ju högre du sätter denna, desto längre CPU-tid kommer beräkningen av länkgrafen ta. Om det tar för lång tid kan spelet lagga. Om du däremot sätter den till ett lågt värde kommer distributionen att bli inexakt, vilket kan leda till att godset inte skickas dit du förväntar dig. +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Ju högre du sätter denna, desto längre CPU-tid kommer beräkningen av länkgrafen ta. Om det tar för lång tid kan spelet lagga. Om du däremot sätter den till ett lågt värde kommer distributionen att bli inexakt, vilket kan leda till att godset inte skickas dit du förväntar dig STR_CONFIG_SETTING_DEMAND_DISTANCE :Avståndets påverkan på efterfrågan: {STRING} STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Om du sätter denna till ett värde högre än 0 kommer avståndet mellan ursprungsstationen A för en viss last och en möjlig destination B påverka mängden last som skickas från A till B. Ju längre B är ifrån A, desto mindre last kommer att skickas. Ju högre du sätter den, desto mindre last kommer att skickas till avlägsna stationer och desto mer last kommer att skickas till närbelägna stationer @@ -2057,7 +2057,7 @@ STR_CONFIG_SETTING_DEMAND_SIZE :Mängd återsä STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Genom att sätta denna till mindre än 100% får man den symmetriska distributionen att bete sig mer som den asymmetriska. En mindre andel än vanligt av den last som skickas till en station kommer att skickas tillbaka. Sätter du den till 0% beter sig den symmetriska distributionen precis som den asymmetriska STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Belastning av korta rutter innan rutter med hög kapacitet används: {STRING} -STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Ofta finns det flera rutter mellan två givna stationer. Godsdistributionen kommer att fylla upp den första rutten först och därefter den näst kortaste tills den är mättad osv. Mättnadsgraden bestäms utifrån en uppskattning av kapaciteten och planerad användning. När godsdristributionen har belastat samtliga rutter, och om det finns kvarvarande behov, då kommer samtliga rutter att överbelastas med preferens för rutterna med högst kapacitet. Uppskattningen av kapaciteten kommer oftast inte ske med hög noggrannhet. Denna inställning tillåter dig att ställa in hur många procent som en kort rutt ska belastas innan algoritmen ska välja nästa längre rutt. Sätt värdet till under 100 % om du vill undvika överfulla stationer i händelse av överskattad kapacitet. +STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Ofta finns det flera rutter mellan två givna stationer. Godsdistributionen kommer att fylla upp den första rutten först och därefter den näst kortaste tills den är mättad osv. Mättnadsgraden bestäms utifrån en uppskattning av kapaciteten och planerad användning. När godsdristributionen har belastat samtliga rutter, och om det finns kvarvarande behov, då kommer samtliga rutter att överbelastas med preferens för rutterna med högst kapacitet. Uppskattningen av kapaciteten kommer oftast inte ske med hög noggrannhet. Denna inställning tillåter dig att ställa in hur många procent som en kort rutt ska belastas innan algoritmen ska välja nästa längre rutt. Sätt värdet till under 100 % om du vill undvika överfulla stationer i händelse av överskattad kapacitet STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY :Hastighetsenhet (land)t: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_NAUTICAL :Hastighetsenheter (nautical): {STRING} @@ -2981,7 +2981,7 @@ STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Placera STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Slumpmässigt träd STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Plantera träd slumpmässigt över landskapet STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal -STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Plantera träd genom att dra över landskapet. +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Plantera träd genom att dra över landskapet STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Skogsdunge STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Plantera mindre skogar genom att dra över landskapet STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Skog @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Anpassa för { STR_ORDER_REFIT_STOP_ORDER :(Anpassa för {STRING} och stanna) STR_ORDER_STOP_ORDER :(Stanna) -STR_ORDER_WAIT_TO_UNBUNCH :(invänta utglesning) +STR_ORDER_WAIT_TO_UNBUNCH :(Invänta utglesning) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Kan ej använda stationen){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index afcdfbdb64..0fff9c160c 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -518,7 +518,7 @@ STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Прис STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Опції STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Зберегти гру, покинути гру, вихід STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Показує мапу, додаткове вікно, легенду вантажопотоку або список позначок -STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Показати міста +STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Показує перелік міст або заснування міста STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Показує субсидії STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_STATIONS :{BLACK}Показати список станцій компанії STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_FINANCES :{BLACK}Покаже фінансову інформацію про компанію @@ -552,15 +552,15 @@ STR_SCENEDIT_TOOLBAR_SCENARIO_EDITOR :{YELLOW}Ред STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD :{BLACK}Перенести початкову дату на 1 рік назад STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Перенести початкову дату на 1 рік вперед STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Натисніть, щоб ввести рік початку -STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Показати карту, показати міста -STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Створення ландшафту +STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Показати мапу, додаткове вікно, список позначок, або перелік міст чи підприємств +STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Відкрити меню створення ландшафту або нового світу STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Створення міст -STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Створення виробництва -STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Будівництво доріг +STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Створення або будування виробництва +STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Будівництво дорожньої інфраструктури STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Будівництво трамвайних колій -STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Насадження дерев. Утримуйте Shift для показу витрат на висаджування +STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Насадження дерев. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Встановити позначку -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Встановити об'єкт. Утримуйте Ctrl для вибору діагональної ділянки. Утримуйте Shift для показу витрат на розміщення +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Встановити об'єкт. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат # Scenario editor file menu ###length 7 @@ -1708,7 +1708,7 @@ STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Оберіть STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_DESERT_COVERAGE :Покриття пустелею: {STRING} -STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Контроль приблизної частки пустель у тропічному ландшафті. Пустелі впливають на створення підприємств. Використовується лише при створенні мапи +STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Оберіть приблизну частку пустель у тропічному ландшафті. Пустелі впливають на створення підприємств та умови зростання міст. Використовується лише при створенні мапи STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Грубість ландшафту: {STRING} @@ -2042,7 +2042,7 @@ 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_HELPTEXT :Рік закінчення гри для підрахунку очок. У кінці обраного року додаються очки компанії і з'являється загальний результат, але гравці можуть грати далі.{}Якщо встановлено рік раніший від початкового, загальний результат ніколи не зʼявиться. STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} ###setting-zero-is-special STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Ніколи @@ -2189,9 +2189,9 @@ STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Точніст STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Чим більше значення буде встановлено, тим більше часу процесора буде витрачатися на розрахунок графа зв’язків. Якщо це буде тривати довго, ви можете зауважити гальмування. Якщо встановити тут мале значення, розподіл буде неточним і вантаж, можливо, надсилатиметься не в ті місця, куди ви очікуєте. STR_CONFIG_SETTING_DEMAND_DISTANCE :Сила впливу відстані на попит: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Якщо це значення встановити більшим за 0, відстань між відправною станцією A якогось вантажу та приймаючою станцією B впливатиме на кількість вантажу, який надсилатиметься від A до B. Чим більша відстань від A до B, тим менше вантажу надсилатиметься. Чим більшим буде це значення, тим менше вантажу буде надсилатися до дальніх станцій і тим більше — до ближніх. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Якщо це значення встановити більшим за 0, відстань між відправною станцією A якогось вантажу та станцією призначення Б впливатиме на кількість вантажу, який надсилатиметься від A до Б. Що більша відстань від A до Б, то менше вантажу надсилатиметься. Що більшим буде це значення, то менше вантажу буде надсилатися до дальніх станцій і більше — до ближніх STR_CONFIG_SETTING_DEMAND_SIZE :Кількість вантажу, що повертається у симетричному режимі: {STRING} -STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Встановивши це на менше ніж 100% можна зробити симетричну доставку схожою на асиметричну. Менше вантажу буде примусово повертатися назад, якщо певна його кількість надсилається на станцію. При 0% - симетрична доставка поводить себе зовсім як асиметрична. +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Встановивши це значення меншим ніж 100%, можна зробити симетричну доставку схожою на асиметричну. Менше вантажу буде примусово повертатися назад, якщо певна його кількість надсилається на станцію. При 0% симетрична доставка поводить себе зовсім як асиметрична. STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Рівень заповнення коротких маршрутів перед переходом до містких: {STRING} STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Часто між двома заданими станціями є кілька шляхів. Cargodist заповнить спочатку найкоротший маршрут, потім другий після найкоротшого тощо. Рівень заповнення визначається оцінкою місткості та запланованого використання. Якщо всі маршрути буде заповнено, а джерело вантажу не вичерпається, алгоритм почне переповнювати маршрути, починаючи з наймісткіших. Налаштування дозволяє вказати рівень заповнення у відсотках, якого треба досягти на першому маршруті перед заповненням наступного. Встановлення рівня меншим за 100% дозводить уникнути переповнення станцій у випадку переоцінки місткості. @@ -3028,8 +3028,8 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Буду STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Будування трамвайного тунелю. Утримуйте Shift для показу витрат на будівництво STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Будувати/зруйнувати дорогу STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Будувати/демонтувати колію -STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Модернізувати дорогу. Утримуйте Shift для показу витрат на модернізацію -STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Convert/Перетворення / оновлення типу трамваю. Shift перемикає будівництво / показ кошторису витрат +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Переобладнання / оновлення дороги. Утримуйте Shift для показу очікуваних витрат +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Переобладнання / оновлення типу трамваю. Утримуйте Shift для показу очікуваних витрат STR_ROAD_NAME_ROAD :Дорога STR_ROAD_NAME_TRAM :Трамвай @@ -3071,7 +3071,7 @@ STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Порт # Airport toolbar STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Аеропорти -STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Будувати аеропорт. Ctrl дозволяє об'єднувати станції. Утримуйте Shift для показу витрат на будівництво +STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Будування аеропорту. Ctrl+клац для приєднання додаткових станцій. Утримуйте Shift для показу очікуваних витрат # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Вибір аеропорту @@ -3340,9 +3340,9 @@ 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_GAMELOOP_TOOLTIP :{BLACK}Кількість ігрових циклів за секунду. STR_FRAMERATE_RATE_BLITTER :{BLACK}Виведення на екран: {STRING} -STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Кількість кадрів побудованих за секунду +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Кількість кадрів, створених за секунду STR_FRAMERATE_SPEED_FACTOR :{BLACK}Наявна швидкість гри: {DECIMAL}x STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Швидкість перебігу гри в поточний момент, порівняно з очікуваною швидкістю при звичайному перебігу STR_FRAMERATE_CURRENT :{WHITE}Зараз @@ -3458,7 +3458,7 @@ STR_MAPGEN_VARIETY :{BLACK}Розп STR_MAPGEN_GENERATE :{WHITE}Генерувати STR_MAPGEN_GENERATE_TOOLTIP :{BLACK}Створити світ для гри в OpenTTD! STR_MAPGEN_NEWGRF_SETTINGS :{BLACK}Налаштування NewGRF -STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Показати налаштування NewGRF +STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Показує налаштування NewGRF STR_MAPGEN_AI_SETTINGS :{BLACK}Налаштування ШІ STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Показати налаштування ШІ STR_MAPGEN_GS_SETTINGS :{BLACK}Налаштування скрипту гри @@ -4244,7 +4244,7 @@ STR_CARGO_TYPE_FILTER_NONE :нема STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишею вимикає показ типу транспорту STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблів. Клацніть на корабель для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список літальних апаратів. Клацніть на літальному апараті для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список літальних апаратів. Клацніть на літальному апараті для отримання інформації. Ctrl+клац мишею сховає показ цього типу транспорту ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Купити From 71087bb6d39f4f46d7c7cd64086d6c88eedf050b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Guilloux?= Date: Thu, 28 Mar 2024 21:22:20 +0100 Subject: [PATCH 47/70] Change: [CI] Always use latest stable Xcode (#12390) --- .github/workflows/ci-macos.yml | 5 +++++ .github/workflows/release-macos.yml | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/.github/workflows/ci-macos.yml b/.github/workflows/ci-macos.yml index e6f5d623de..f4cabfddf5 100644 --- a/.github/workflows/ci-macos.yml +++ b/.github/workflows/ci-macos.yml @@ -26,6 +26,11 @@ jobs: MACOSX_DEPLOYMENT_TARGET: 10.13 steps: + - name: Setup Xcode version + uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: latest-stable + - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/release-macos.yml b/.github/workflows/release-macos.yml index afaad467a9..e9cefa0813 100644 --- a/.github/workflows/release-macos.yml +++ b/.github/workflows/release-macos.yml @@ -17,6 +17,11 @@ jobs: MACOSX_DEPLOYMENT_TARGET: 10.13 steps: + - name: Setup Xcode version + uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: latest-stable + - name: Download source uses: actions/download-artifact@v4 with: From 69acc132caf1a3d50954860e4c74044fb37ce358 Mon Sep 17 00:00:00 2001 From: Michael Lutz Date: Sun, 24 Mar 2024 16:58:57 +0100 Subject: [PATCH 48/70] Fix #12387, eabb9db: [NewGRF] Wrong tile offset passed to rail station CB 149 (slope check) --- src/station_cmd.cpp | 127 ++++++++++++++++++++++---------------------- 1 file changed, 63 insertions(+), 64 deletions(-) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 75367ce5b6..5e5f7536a4 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -864,8 +864,10 @@ static CommandCost CheckFlatLandAirport(AirportTileTableIterator tile_iter, DoCo } /** - * Checks if a rail station can be built at the given area. - * @param tile_area Area to check. + * Checks if a rail station can be built at the given tile. + * @param tile_cur Tile to check. + * @param north_tile North tile of the area being checked. + * @param allowed_z Height allowed for the tile. If allowed_z is negative, it will be set to the height of this tile. * @param flags Operation to perform. * @param axis Rail station axis. * @param station StationID to be queried and returned if available. @@ -877,75 +879,72 @@ static CommandCost CheckFlatLandAirport(AirportTileTableIterator tile_iter, DoCo * @param numtracks Number of platforms. * @return The cost in case of success, or an error code if it failed. */ -static CommandCost CheckFlatLandRailStation(TileArea tile_area, DoCommandFlag flags, Axis axis, StationID *station, RailType rt, std::vector &affected_vehicles, StationClassID spec_class, uint16_t spec_index, uint8_t plat_len, uint8_t numtracks) +static CommandCost CheckFlatLandRailStation(TileIndex tile_cur, TileIndex north_tile, int &allowed_z, DoCommandFlag flags, Axis axis, StationID *station, RailType rt, std::vector &affected_vehicles, StationClassID spec_class, uint16_t spec_index, uint8_t plat_len, uint8_t numtracks) { CommandCost cost(EXPENSES_CONSTRUCTION); - int allowed_z = -1; uint invalid_dirs = 5 << axis; const StationSpec *statspec = StationClass::Get(spec_class)->GetSpec(spec_index); bool slope_cb = statspec != nullptr && HasBit(statspec->callback_mask, CBM_STATION_SLOPE_CHECK); - for (TileIndex tile_cur : tile_area) { - CommandCost ret = CheckBuildableTile(tile_cur, invalid_dirs, allowed_z, false); + CommandCost ret = CheckBuildableTile(tile_cur, invalid_dirs, allowed_z, false); + if (ret.Failed()) return ret; + cost.AddCost(ret); + + if (slope_cb) { + /* Do slope check if requested. */ + ret = PerformStationTileSlopeCheck(north_tile, tile_cur, statspec, axis, plat_len, numtracks); + if (ret.Failed()) return ret; + } + + /* if station is set, then we have special handling to allow building on top of already existing stations. + * so station points to INVALID_STATION if we can build on any station. + * Or it points to a station if we're only allowed to build on exactly that station. */ + if (station != nullptr && IsTileType(tile_cur, MP_STATION)) { + if (!IsRailStation(tile_cur)) { + return ClearTile_Station(tile_cur, DC_AUTO); // get error message + } else { + StationID st = GetStationIndex(tile_cur); + if (*station == INVALID_STATION) { + *station = st; + } else if (*station != st) { + return_cmd_error(STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING); + } + } + } else { + /* Rail type is only valid when building a railway station; if station to + * build isn't a rail station it's INVALID_RAILTYPE. */ + if (rt != INVALID_RAILTYPE && + IsPlainRailTile(tile_cur) && !HasSignals(tile_cur) && + HasPowerOnRail(GetRailType(tile_cur), rt)) { + /* Allow overbuilding if the tile: + * - has rail, but no signals + * - it has exactly one track + * - the track is in line with the station + * - the current rail type has power on the to-be-built type (e.g. convert normal rail to el rail) + */ + TrackBits tracks = GetTrackBits(tile_cur); + Track track = RemoveFirstTrack(&tracks); + Track expected_track = HasBit(invalid_dirs, DIAGDIR_NE) ? TRACK_X : TRACK_Y; + + if (tracks == TRACK_BIT_NONE && track == expected_track) { + /* Check for trains having a reservation for this tile. */ + if (HasBit(GetRailReservationTrackBits(tile_cur), track)) { + Train *v = GetTrainForReservation(tile_cur, track); + if (v != nullptr) { + affected_vehicles.push_back(v); + } + } + ret = Command::Do(flags, tile_cur, track); + if (ret.Failed()) return ret; + cost.AddCost(ret); + /* With flags & ~DC_EXEC CmdLandscapeClear would fail since the rail still exists */ + return cost; + } + } + ret = Command::Do(flags, tile_cur); if (ret.Failed()) return ret; cost.AddCost(ret); - - if (slope_cb) { - /* Do slope check if requested. */ - ret = PerformStationTileSlopeCheck(tile_area.tile, tile_cur, statspec, axis, plat_len, numtracks); - if (ret.Failed()) return ret; - } - - /* if station is set, then we have special handling to allow building on top of already existing stations. - * so station points to INVALID_STATION if we can build on any station. - * Or it points to a station if we're only allowed to build on exactly that station. */ - if (station != nullptr && IsTileType(tile_cur, MP_STATION)) { - if (!IsRailStation(tile_cur)) { - return ClearTile_Station(tile_cur, DC_AUTO); // get error message - } else { - StationID st = GetStationIndex(tile_cur); - if (*station == INVALID_STATION) { - *station = st; - } else if (*station != st) { - return_cmd_error(STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING); - } - } - } else { - /* Rail type is only valid when building a railway station; if station to - * build isn't a rail station it's INVALID_RAILTYPE. */ - if (rt != INVALID_RAILTYPE && - IsPlainRailTile(tile_cur) && !HasSignals(tile_cur) && - HasPowerOnRail(GetRailType(tile_cur), rt)) { - /* Allow overbuilding if the tile: - * - has rail, but no signals - * - it has exactly one track - * - the track is in line with the station - * - the current rail type has power on the to-be-built type (e.g. convert normal rail to el rail) - */ - TrackBits tracks = GetTrackBits(tile_cur); - Track track = RemoveFirstTrack(&tracks); - Track expected_track = HasBit(invalid_dirs, DIAGDIR_NE) ? TRACK_X : TRACK_Y; - - if (tracks == TRACK_BIT_NONE && track == expected_track) { - /* Check for trains having a reservation for this tile. */ - if (HasBit(GetRailReservationTrackBits(tile_cur), track)) { - Train *v = GetTrainForReservation(tile_cur, track); - if (v != nullptr) { - affected_vehicles.push_back(v); - } - } - ret = Command::Do(flags, tile_cur, track); - if (ret.Failed()) return ret; - cost.AddCost(ret); - /* With flags & ~DC_EXEC CmdLandscapeClear would fail since the rail still exists */ - continue; - } - } - ret = Command::Do(flags, tile_cur); - if (ret.Failed()) return ret; - cost.AddCost(ret); - } } return cost; @@ -1265,9 +1264,10 @@ static CommandCost CalculateRailStationCost(TileArea tile_area, DoCommandFlag fl CommandCost cost(EXPENSES_CONSTRUCTION); bool length_price_ready = true; uint8_t tracknum = 0; + int allowed_z = -1; for (TileIndex cur_tile : tile_area) { /* Clear the land below the station. */ - CommandCost ret = CheckFlatLandRailStation(TileArea(cur_tile, 1, 1), flags, axis, station, rt, affected_vehicles, spec_class, spec_index, plat_len, numtracks); + CommandCost ret = CheckFlatLandRailStation(cur_tile, tile_area.tile, allowed_z, flags, axis, station, rt, affected_vehicles, spec_class, spec_index, plat_len, numtracks); if (ret.Failed()) return ret; /* Only add _price[PR_BUILD_STATION_RAIL_LENGTH] once for each valid plat_len. */ @@ -1280,7 +1280,6 @@ static CommandCost CalculateRailStationCost(TileArea tile_area, DoCommandFlag fl /* AddCost for new or rotated rail stations. */ if (!IsRailStationTile(cur_tile) || (IsRailStationTile(cur_tile) && GetRailStationAxis(cur_tile) != axis)) { - cost.AddCost(ret); cost.AddCost(_price[PR_BUILD_STATION_RAIL]); cost.AddCost(RailBuildCost(rt)); From 8fb7d74dfe7430931f76a7575ed3ab8baa21b1f6 Mon Sep 17 00:00:00 2001 From: Michael Lutz Date: Sun, 24 Mar 2024 17:22:39 +0100 Subject: [PATCH 49/70] Fix eabb9db: Drag building of road stops should not allow mixing z levels. --- src/station_cmd.cpp | 196 ++++++++++++++++++++++---------------------- 1 file changed, 98 insertions(+), 98 deletions(-) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 5e5f7536a4..296df96e50 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -952,7 +952,8 @@ static CommandCost CheckFlatLandRailStation(TileIndex tile_cur, TileIndex north_ /** * Checks if a road stop can be built at the given tile. - * @param tile_area Area to check. + * @param cur_tile Tile to check. + * @param allowed_z Height allowed for the tile. If allowed_z is negative, it will be set to the height of this tile. * @param flags Operation to perform. * @param invalid_dirs Prohibited directions (set of DiagDirections). * @param is_drive_through True if trying to build a drive-through station. @@ -962,108 +963,105 @@ static CommandCost CheckFlatLandRailStation(TileIndex tile_cur, TileIndex north_ * @param rt Road type to build. * @return The cost in case of success, or an error code if it failed. */ -static CommandCost CheckFlatLandRoadStop(TileArea tile_area, DoCommandFlag flags, uint invalid_dirs, bool is_drive_through, bool is_truck_stop, Axis axis, StationID *station, RoadType rt) +static CommandCost CheckFlatLandRoadStop(TileIndex cur_tile, int &allowed_z, DoCommandFlag flags, uint invalid_dirs, bool is_drive_through, bool is_truck_stop, Axis axis, StationID *station, RoadType rt) { CommandCost cost(EXPENSES_CONSTRUCTION); - int allowed_z = -1; - for (TileIndex cur_tile : tile_area) { - CommandCost ret = CheckBuildableTile(cur_tile, invalid_dirs, allowed_z, !is_drive_through); - if (ret.Failed()) return ret; - cost.AddCost(ret); + CommandCost ret = CheckBuildableTile(cur_tile, invalid_dirs, allowed_z, !is_drive_through); + if (ret.Failed()) return ret; + cost.AddCost(ret); - /* If station is set, then we have special handling to allow building on top of already existing stations. - * Station points to INVALID_STATION if we can build on any station. - * Or it points to a station if we're only allowed to build on exactly that station. */ - if (station != nullptr && IsTileType(cur_tile, MP_STATION)) { - if (!IsRoadStop(cur_tile)) { - return ClearTile_Station(cur_tile, DC_AUTO); // Get error message. - } else { - if (is_truck_stop != IsTruckStop(cur_tile) || - is_drive_through != IsDriveThroughStopTile(cur_tile)) { - return ClearTile_Station(cur_tile, DC_AUTO); // Get error message. - } - /* Drive-through station in the wrong direction. */ - if (is_drive_through && IsDriveThroughStopTile(cur_tile) && DiagDirToAxis(GetRoadStopDir(cur_tile)) != axis){ - return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); - } - StationID st = GetStationIndex(cur_tile); - if (*station == INVALID_STATION) { - *station = st; - } else if (*station != st) { - return_cmd_error(STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING); - } - } + /* If station is set, then we have special handling to allow building on top of already existing stations. + * Station points to INVALID_STATION if we can build on any station. + * Or it points to a station if we're only allowed to build on exactly that station. */ + if (station != nullptr && IsTileType(cur_tile, MP_STATION)) { + if (!IsRoadStop(cur_tile)) { + return ClearTile_Station(cur_tile, DC_AUTO); // Get error message. } else { - bool build_over_road = is_drive_through && IsNormalRoadTile(cur_tile); - /* Road bits in the wrong direction. */ - RoadBits rb = IsNormalRoadTile(cur_tile) ? GetAllRoadBits(cur_tile) : ROAD_NONE; - if (build_over_road && (rb & (axis == AXIS_X ? ROAD_Y : ROAD_X)) != 0) { - /* Someone was pedantic and *NEEDED* three fracking different error messages. */ - switch (CountBits(rb)) { - case 1: - return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); - - case 2: - if (rb == ROAD_X || rb == ROAD_Y) return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); - return_cmd_error(STR_ERROR_DRIVE_THROUGH_CORNER); - - default: // 3 or 4 - return_cmd_error(STR_ERROR_DRIVE_THROUGH_JUNCTION); - } + if (is_truck_stop != IsTruckStop(cur_tile) || + is_drive_through != IsDriveThroughStopTile(cur_tile)) { + return ClearTile_Station(cur_tile, DC_AUTO); // Get error message. } + /* Drive-through station in the wrong direction. */ + if (is_drive_through && IsDriveThroughStopTile(cur_tile) && DiagDirToAxis(GetRoadStopDir(cur_tile)) != axis){ + return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); + } + StationID st = GetStationIndex(cur_tile); + if (*station == INVALID_STATION) { + *station = st; + } else if (*station != st) { + return_cmd_error(STR_ERROR_ADJOINS_MORE_THAN_ONE_EXISTING); + } + } + } else { + bool build_over_road = is_drive_through && IsNormalRoadTile(cur_tile); + /* Road bits in the wrong direction. */ + RoadBits rb = IsNormalRoadTile(cur_tile) ? GetAllRoadBits(cur_tile) : ROAD_NONE; + if (build_over_road && (rb & (axis == AXIS_X ? ROAD_Y : ROAD_X)) != 0) { + /* Someone was pedantic and *NEEDED* three fracking different error messages. */ + switch (CountBits(rb)) { + case 1: + return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); - if (build_over_road) { - /* There is a road, check if we can build road+tram stop over it. */ - RoadType road_rt = GetRoadType(cur_tile, RTT_ROAD); - if (road_rt != INVALID_ROADTYPE) { - Owner road_owner = GetRoadOwner(cur_tile, RTT_ROAD); - if (road_owner == OWNER_TOWN) { - if (!_settings_game.construction.road_stop_on_town_road) return_cmd_error(STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD); - } else if (!_settings_game.construction.road_stop_on_competitor_road && road_owner != OWNER_NONE) { - ret = CheckOwnership(road_owner); - if (ret.Failed()) return ret; - } - uint num_pieces = CountBits(GetRoadBits(cur_tile, RTT_ROAD)); + case 2: + if (rb == ROAD_X || rb == ROAD_Y) return_cmd_error(STR_ERROR_DRIVE_THROUGH_DIRECTION); + return_cmd_error(STR_ERROR_DRIVE_THROUGH_CORNER); - if (RoadTypeIsRoad(rt) && !HasPowerOnRoad(rt, road_rt)) return_cmd_error(STR_ERROR_NO_SUITABLE_ROAD); + default: // 3 or 4 + return_cmd_error(STR_ERROR_DRIVE_THROUGH_JUNCTION); + } + } - if (GetDisallowedRoadDirections(cur_tile) != DRD_NONE && road_owner != OWNER_TOWN) { - ret = CheckOwnership(road_owner); - if (ret.Failed()) return ret; - } + if (build_over_road) { + /* There is a road, check if we can build road+tram stop over it. */ + RoadType road_rt = GetRoadType(cur_tile, RTT_ROAD); + if (road_rt != INVALID_ROADTYPE) { + Owner road_owner = GetRoadOwner(cur_tile, RTT_ROAD); + if (road_owner == OWNER_TOWN) { + if (!_settings_game.construction.road_stop_on_town_road) return_cmd_error(STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD); + } else if (!_settings_game.construction.road_stop_on_competitor_road && road_owner != OWNER_NONE) { + ret = CheckOwnership(road_owner); + if (ret.Failed()) return ret; + } + uint num_pieces = CountBits(GetRoadBits(cur_tile, RTT_ROAD)); - cost.AddCost(RoadBuildCost(road_rt) * (2 - num_pieces)); - } else if (RoadTypeIsRoad(rt)) { - cost.AddCost(RoadBuildCost(rt) * 2); + if (RoadTypeIsRoad(rt) && !HasPowerOnRoad(rt, road_rt)) return_cmd_error(STR_ERROR_NO_SUITABLE_ROAD); + + if (GetDisallowedRoadDirections(cur_tile) != DRD_NONE && road_owner != OWNER_TOWN) { + ret = CheckOwnership(road_owner); + if (ret.Failed()) return ret; } - /* There is a tram, check if we can build road+tram stop over it. */ - RoadType tram_rt = GetRoadType(cur_tile, RTT_TRAM); - if (tram_rt != INVALID_ROADTYPE) { - Owner tram_owner = GetRoadOwner(cur_tile, RTT_TRAM); - if (Company::IsValidID(tram_owner) && - (!_settings_game.construction.road_stop_on_competitor_road || - /* Disallow breaking end-of-line of someone else - * so trams can still reverse on this tile. */ - HasExactlyOneBit(GetRoadBits(cur_tile, RTT_TRAM)))) { - ret = CheckOwnership(tram_owner); - if (ret.Failed()) return ret; - } - uint num_pieces = CountBits(GetRoadBits(cur_tile, RTT_TRAM)); - - if (RoadTypeIsTram(rt) && !HasPowerOnRoad(rt, tram_rt)) return_cmd_error(STR_ERROR_NO_SUITABLE_ROAD); - - cost.AddCost(RoadBuildCost(tram_rt) * (2 - num_pieces)); - } else if (RoadTypeIsTram(rt)) { - cost.AddCost(RoadBuildCost(rt) * 2); - } - } else { - ret = Command::Do(flags, cur_tile); - if (ret.Failed()) return ret; - cost.AddCost(ret); + cost.AddCost(RoadBuildCost(road_rt) * (2 - num_pieces)); + } else if (RoadTypeIsRoad(rt)) { cost.AddCost(RoadBuildCost(rt) * 2); } + + /* There is a tram, check if we can build road+tram stop over it. */ + RoadType tram_rt = GetRoadType(cur_tile, RTT_TRAM); + if (tram_rt != INVALID_ROADTYPE) { + Owner tram_owner = GetRoadOwner(cur_tile, RTT_TRAM); + if (Company::IsValidID(tram_owner) && + (!_settings_game.construction.road_stop_on_competitor_road || + /* Disallow breaking end-of-line of someone else + * so trams can still reverse on this tile. */ + HasExactlyOneBit(GetRoadBits(cur_tile, RTT_TRAM)))) { + ret = CheckOwnership(tram_owner); + if (ret.Failed()) return ret; + } + uint num_pieces = CountBits(GetRoadBits(cur_tile, RTT_TRAM)); + + if (RoadTypeIsTram(rt) && !HasPowerOnRoad(rt, tram_rt)) return_cmd_error(STR_ERROR_NO_SUITABLE_ROAD); + + cost.AddCost(RoadBuildCost(tram_rt) * (2 - num_pieces)); + } else if (RoadTypeIsTram(rt)) { + cost.AddCost(RoadBuildCost(rt) * 2); + } + } else { + ret = Command::Do(flags, cur_tile); + if (ret.Failed()) return ret; + cost.AddCost(ret); + cost.AddCost(RoadBuildCost(rt) * 2); } } @@ -1885,17 +1883,19 @@ static CommandCost FindJoiningRoadStop(StationID existing_stop, StationID statio */ static CommandCost CalculateRoadStopCost(TileArea tile_area, DoCommandFlag flags, bool is_drive_through, bool is_truck_stop, Axis axis, DiagDirection ddir, StationID *est, RoadType rt, Money unit_cost) { - CommandCost cost(EXPENSES_CONSTRUCTION); + uint invalid_dirs = 0; + if (is_drive_through) { + SetBit(invalid_dirs, AxisToDiagDir(axis)); + SetBit(invalid_dirs, ReverseDiagDir(AxisToDiagDir(axis))); + } else { + SetBit(invalid_dirs, ddir); + } + /* Check every tile in the area. */ + int allowed_z = -1; + CommandCost cost(EXPENSES_CONSTRUCTION); for (TileIndex cur_tile : tile_area) { - uint invalid_dirs = 0; - if (is_drive_through) { - SetBit(invalid_dirs, AxisToDiagDir(axis)); - SetBit(invalid_dirs, ReverseDiagDir(AxisToDiagDir(axis))); - } else { - SetBit(invalid_dirs, ddir); - } - CommandCost ret = CheckFlatLandRoadStop(TileArea(cur_tile, cur_tile), flags, invalid_dirs, is_drive_through, is_truck_stop, axis, est, rt); + CommandCost ret = CheckFlatLandRoadStop(cur_tile, allowed_z, flags, invalid_dirs, is_drive_through, is_truck_stop, axis, est, rt); if (ret.Failed()) return ret; bool is_preexisting_roadstop = IsTileType(cur_tile, MP_STATION) && IsRoadStop(cur_tile); From 907cb4fc5397f1983555fa7e20cc661876f3469e Mon Sep 17 00:00:00 2001 From: frosch Date: Thu, 28 Mar 2024 23:21:20 +0100 Subject: [PATCH 50/70] Fix: [Script] ScriptSubsidy::GetExpireDate should return an economy-date (#12372) --- src/script/api/script_subsidy.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/script/api/script_subsidy.cpp b/src/script/api/script_subsidy.cpp index 8d80ae4019..02f283d87a 100644 --- a/src/script/api/script_subsidy.cpp +++ b/src/script/api/script_subsidy.cpp @@ -54,15 +54,13 @@ { if (!IsValidSubsidy(subsidy_id)) return ScriptDate::DATE_INVALID; - int year = ScriptDate::GetYear(ScriptDate::GetCurrentDate()); - int month = ScriptDate::GetMonth(ScriptDate::GetCurrentDate()); + TimerGameEconomy::YearMonthDay ymd = TimerGameEconomy::ConvertDateToYMD(TimerGameEconomy::date); + ymd.day = 1; + auto m = ymd.month + ::Subsidy::Get(subsidy_id)->remaining; + ymd.month = (m - 1) % 12 + 1; + ymd.year += (m - 1) / 12; - month += ::Subsidy::Get(subsidy_id)->remaining; - - year += (month - 1) / 12; - month = ((month - 1) % 12) + 1; - - return ScriptDate::GetDate(year, month, 1); + return (ScriptDate::Date)TimerGameEconomy::ConvertYMDToDate(ymd.year, ymd.month, ymd.day).base(); } /* static */ CargoID ScriptSubsidy::GetCargoType(SubsidyID subsidy_id) From 8746be8bf2bc8110fa6478714bfb2bd7f6f2b44d Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Thu, 28 Mar 2024 22:22:37 +0000 Subject: [PATCH 51/70] Codechange: Use FindVehiclesWithOrder when removing a road stop. (#12144) --- src/station_cmd.cpp | 18 ++++++++++++------ src/vehiclelist_func.h | 2 +- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 296df96e50..bee14e7bd4 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -10,6 +10,7 @@ #include "stdafx.h" #include "aircraft.h" #include "bridge_map.h" +#include "vehiclelist_func.h" #include "viewport_func.h" #include "viewport_kdtree.h" #include "command_func.h" @@ -2174,13 +2175,18 @@ static CommandCost RemoveRoadStop(TileIndex tile, DoCommandFlag flags, int repla delete cur_stop; - /* Make sure no vehicle is going to the old roadstop */ - for (RoadVehicle *v : RoadVehicle::Iterate()) { - if (v->First() == v && v->current_order.IsType(OT_GOTO_STATION) && - v->dest_tile == tile) { - v->SetDestTile(v->GetOrderStationLocation(st->index)); + /* Make sure no vehicle is going to the old roadstop. Narrow the search to any road vehicles with an order to + * this station, then look for any currently heading to the tile. */ + StationID station_id = st->index; + FindVehiclesWithOrder( + [](const Vehicle *v) { return v->type == VEH_ROAD; }, + [station_id](const Order *order) { return order->IsType(OT_GOTO_STATION) && order->GetDestination() == station_id; }, + [station_id, tile](Vehicle *v) { + if (v->dest_tile == tile) { + v->SetDestTile(v->GetOrderStationLocation(station_id)); + } } - } + ); st->rect.AfterRemoveTile(st, tile); diff --git a/src/vehiclelist_func.h b/src/vehiclelist_func.h index 464bde2ff7..3e44610164 100644 --- a/src/vehiclelist_func.h +++ b/src/vehiclelist_func.h @@ -26,7 +26,7 @@ void FindVehiclesWithOrder(VehiclePredicate veh_pred, OrderPredicate ord_pred, V for (const OrderList *orderlist : OrderList::Iterate()) { /* We assume all vehicles sharing an order list match the condition. */ - const Vehicle *v = orderlist->GetFirstSharedVehicle(); + Vehicle *v = orderlist->GetFirstSharedVehicle(); if (!veh_pred(v)) continue; /* Vehicle is a candidate, search for a matching order. */ From 3e83dcedfd61aebe9ec8a900bf3b49edddfcc31c Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Tue, 12 Mar 2024 17:28:44 +0000 Subject: [PATCH 52/70] Codechange: Allocate houses dynamically instead of from a fixed array. This uses vectors for HouseSpecs and global/town building counts. --- src/genworld.cpp | 2 + src/house.h | 15 ++------ src/misc.cpp | 1 - src/newgrf_commons.cpp | 6 ++- src/newgrf_house.cpp | 87 ++++++++++++++++++++++++++++++++++-------- src/newgrf_house.h | 1 + src/table/town_land.h | 2 +- src/town.h | 4 +- src/town_cmd.cpp | 15 +------- 9 files changed, 87 insertions(+), 46 deletions(-) diff --git a/src/genworld.cpp b/src/genworld.cpp index d6b8de88ff..d5281a2f81 100644 --- a/src/genworld.cpp +++ b/src/genworld.cpp @@ -26,6 +26,7 @@ #include "void_map.h" #include "town.h" #include "newgrf.h" +#include "newgrf_house.h" #include "core/random_func.hpp" #include "core/backup_type.hpp" #include "progress.h" @@ -311,6 +312,7 @@ void GenerateWorld(GenWorldMode mode, uint size_x, uint size_y, bool reset_setti /* Load the right landscape stuff, and the NewGRFs! */ GfxLoadSprites(); + InitializeBuildingCounts(); LoadStringWidthTable(); /* Re-init the windowing system */ diff --git a/src/house.h b/src/house.h index a463b632ec..65ce03786b 100644 --- a/src/house.h +++ b/src/house.h @@ -31,12 +31,6 @@ static const HouseID INVALID_HOUSE_ID = 0xFFFF; static const uint HOUSE_NUM_ACCEPTS = 16; ///< Max number of cargoes accepted by a tile -/** - * There can only be as many classes as there are new houses, plus one for - * NO_CLASS, as the original houses don't have classes. - */ -static const uint HOUSE_CLASS_MAX = NUM_HOUSES - NEW_HOUSE_OFFSET + 1; - enum BuildingFlags { TILE_NO_FLAG = 0, TILE_SIZE_1x1 = 1U << 0, @@ -123,14 +117,11 @@ struct HouseSpec { uint8_t minimum_life; ///< The minimum number of years this house will survive before the town rebuilds it CargoTypes watched_cargoes; ///< Cargo types watched for acceptance. + HouseID Index() const; Money GetRemovalCost() const; - static inline HouseSpec *Get(size_t house_id) - { - assert(house_id < NUM_HOUSES); - extern HouseSpec _house_specs[]; - return &_house_specs[house_id]; - } + static std::vector &Specs(); + static HouseSpec *Get(size_t house_id); }; /** diff --git a/src/misc.cpp b/src/misc.cpp index d6467a1812..9137c075b6 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -148,7 +148,6 @@ void InitializeGame(uint size_x, uint size_y, bool reset_date, bool reset_settin InitializeTrees(); InitializeIndustries(); InitializeObjects(); - InitializeBuildingCounts(); InitializeNPF(); diff --git a/src/newgrf_commons.cpp b/src/newgrf_commons.cpp index d178920542..9589e31ef4 100644 --- a/src/newgrf_commons.cpp +++ b/src/newgrf_commons.cpp @@ -165,7 +165,11 @@ void HouseOverrideManager::SetEntitySpec(const HouseSpec *hs) return; } - *HouseSpec::Get(house_id) = *hs; + auto &house_specs = HouseSpec::Specs(); + + /* Now that we know we can use the given id, copy the spec to its final destination. */ + if (house_id >= house_specs.size()) house_specs.resize(house_id + 1); + house_specs[house_id] = *hs; /* Now add the overrides. */ for (int i = 0; i < this->max_offset; i++) { diff --git a/src/newgrf_house.cpp b/src/newgrf_house.cpp index 0321ce0fc3..ac18c4fbe2 100644 --- a/src/newgrf_house.cpp +++ b/src/newgrf_house.cpp @@ -24,8 +24,8 @@ #include "safeguards.h" -static BuildingCounts _building_counts; -static std::array _class_mapping; +static BuildingCounts _building_counts{}; +static std::vector _class_mapping{}; HouseOverrideManager _house_mngr(NEW_HOUSE_OFFSET, NUM_HOUSES, INVALID_HOUSE_ID); @@ -40,6 +40,48 @@ static const GRFFile *GetHouseSpecGrf(HouseID house_id) return (hs != nullptr) ? hs->grf_prop.grffile : nullptr; } +extern const HouseSpec _original_house_specs[NEW_HOUSE_OFFSET]; +std::vector _house_specs; + +/** + * Get a reference to all HouseSpecs. + * @return Reference to vector of all HouseSpecs. + */ +std::vector &HouseSpec::Specs() +{ + return _house_specs; +} + +/** + * Get the spec for a house ID. + * @param house_id The ID of the house. + * @return The HouseSpec associated with the ID. + */ +HouseSpec *HouseSpec::Get(size_t house_id) +{ + /* Empty house if index is out of range -- this might happen if NewGRFs are changed. */ + static HouseSpec empty = {}; + + assert(house_id < NUM_HOUSES); + if (house_id >= _house_specs.size()) return ∅ + return &_house_specs[house_id]; +} + +/* Reset and initialise house specs. */ +void ResetHouses() +{ + _house_specs.clear(); + _house_specs.reserve(std::size(_original_house_specs)); + + ResetHouseClassIDs(); + + /* Copy default houses. */ + _house_specs.insert(std::end(_house_specs), std::begin(_original_house_specs), std::end(_original_house_specs)); + + /* Reset any overrides that have been set. */ + _house_mngr.ResetOverride(); +} + /** * Construct a resolver for a house. * @param house_id House to query. @@ -74,32 +116,47 @@ uint32_t HouseResolverObject::GetDebugID() const void ResetHouseClassIDs() { - _class_mapping = {}; + _class_mapping.clear(); + + /* Add initial entry for HOUSE_NO_CLASS. */ + _class_mapping.emplace_back(); } HouseClassID AllocateHouseClassID(uint8_t grf_class_id, uint32_t grfid) { /* Start from 1 because 0 means that no class has been assigned. */ - for (int i = 1; i != lengthof(_class_mapping); i++) { - HouseClassMapping *map = &_class_mapping[i]; + auto it = std::find_if(std::next(std::begin(_class_mapping)), std::end(_class_mapping), [grf_class_id, grfid](const HouseClassMapping &map) { return map.class_id == grf_class_id && map.grfid == grfid; }); - if (map->class_id == grf_class_id && map->grfid == grfid) return (HouseClassID)i; + /* HouseClass not found, allocate a new one. */ + if (it == std::end(_class_mapping)) it = _class_mapping.insert(it, {.grfid = grfid, .class_id = grf_class_id}); - if (map->class_id == 0 && map->grfid == 0) { - map->class_id = grf_class_id; - map->grfid = grfid; - return (HouseClassID)i; - } - } - return HOUSE_NO_CLASS; + return static_cast(std::distance(std::begin(_class_mapping), it)); } +/** + * Initialise building counts for a town. + * @param t Town cache to initialise. + */ +void InitializeBuildingCounts(Town *t) +{ + t->cache.building_counts.id_count.clear(); + t->cache.building_counts.class_count.clear(); + t->cache.building_counts.id_count.resize(HouseSpec::Specs().size()); + t->cache.building_counts.class_count.resize(_class_mapping.size()); +} + +/** + * Initialise global building counts and all town building counts. + */ void InitializeBuildingCounts() { - memset(&_building_counts, 0, sizeof(_building_counts)); + _building_counts.id_count.clear(); + _building_counts.class_count.clear(); + _building_counts.id_count.resize(HouseSpec::Specs().size()); + _building_counts.class_count.resize(_class_mapping.size()); for (Town *t : Town::Iterate()) { - memset(&t->cache.building_counts, 0, sizeof(t->cache.building_counts)); + InitializeBuildingCounts(t); } } diff --git a/src/newgrf_house.h b/src/newgrf_house.h index 868116c7f9..1987406777 100644 --- a/src/newgrf_house.h +++ b/src/newgrf_house.h @@ -91,6 +91,7 @@ void ResetHouseClassIDs(); HouseClassID AllocateHouseClassID(uint8_t grf_class_id, uint32_t grfid); void InitializeBuildingCounts(); +void InitializeBuildingCounts(Town *t); void IncreaseBuildingCount(Town *t, HouseID house_id); void DecreaseBuildingCount(Town *t, HouseID house_id); diff --git a/src/table/town_land.h b/src/table/town_land.h index 2ba1bc173b..586a94b3a8 100644 --- a/src/table/town_land.h +++ b/src/table/town_land.h @@ -1817,7 +1817,7 @@ static_assert(lengthof(_town_draw_tile_data) == (NEW_HOUSE_OFFSET) * 4 * 4); bf, ba, true, GRFFileProps(INVALID_HOUSE_ID), 0, {COLOUR_BEGIN, COLOUR_BEGIN, COLOUR_BEGIN, COLOUR_BEGIN}, \ 16, NO_EXTRA_FLAG, HOUSE_NO_CLASS, {0, 2, 0, 0}, 0, 0, 0} /** House specifications from original data */ -static const HouseSpec _original_house_specs[] = { +extern const HouseSpec _original_house_specs[] = { /** * remove_rating_decrease * | mail_generation diff --git a/src/town.h b/src/town.h index 618093dec4..28ffa5047d 100644 --- a/src/town.h +++ b/src/town.h @@ -19,8 +19,8 @@ template struct BuildingCounts { - T id_count[NUM_HOUSES]; - T class_count[HOUSE_CLASS_MAX]; + std::vector id_count; + std::vector class_count; }; static const uint CUSTOM_TOWN_NUMBER_DIFFICULTY = 4; ///< value for custom town number in difficulty settings diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index 3ebe90087e..b85d077d92 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -1941,6 +1941,7 @@ static void DoCreateTown(Town *t, TileIndex tile, uint32_t townnameparts, TownSi UpdateTownRadius(t); t->flags = 0; t->cache.population = 0; + InitializeBuildingCounts(t); /* Spread growth across ticks so even if there are many * similar towns they're unlikely to grow all in one tick */ t->grow_counter = t->index % Ticks::TOWN_GROWTH_TICKS; @@ -3969,17 +3970,3 @@ extern const TileTypeProcs _tile_type_town_procs = { GetFoundation_Town, // get_foundation_proc TerraformTile_Town, // terraform_tile_proc }; - - -HouseSpec _house_specs[NUM_HOUSES]; - -void ResetHouses() -{ - ResetHouseClassIDs(); - - auto insert = std::copy(std::begin(_original_house_specs), std::end(_original_house_specs), std::begin(_house_specs)); - std::fill(insert, std::end(_house_specs), HouseSpec{}); - - /* Reset any overrides that have been set. */ - _house_mngr.ResetOverride(); -} From e16b982b6abf128a1c9e6dbce9cd6a3adc611236 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Tue, 12 Mar 2024 17:28:45 +0000 Subject: [PATCH 53/70] Codechange: Use iteration when dealing with all HouseSpecs. --- src/industry_gui.cpp | 18 ++++++++---------- src/newgrf.cpp | 20 +++++++++----------- src/newgrf_house.cpp | 9 +++++++++ src/town_cmd.cpp | 38 +++++++++++++++++--------------------- 4 files changed, 43 insertions(+), 42 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index fcb3b247e3..d4bbf88497 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -2504,12 +2504,11 @@ struct CargoesRow { } else { /* Houses only display what is demanded. */ for (uint i = 0; i < cargo_fld->u.cargo.num_cargoes; i++) { - for (uint h = 0; h < NUM_HOUSES; h++) { - HouseSpec *hs = HouseSpec::Get(h); - if (!hs->enabled) continue; + for (const auto &hs : HouseSpec::Specs()) { + if (!hs.enabled) continue; - for (uint j = 0; j < lengthof(hs->accepts_cargo); j++) { - if (hs->cargo_acceptance[j] > 0 && cargo_fld->u.cargo.vertical_cargoes[i] == hs->accepts_cargo[j]) { + for (uint j = 0; j < lengthof(hs.accepts_cargo); j++) { + if (hs.cargo_acceptance[j] > 0 && cargo_fld->u.cargo.vertical_cargoes[i] == hs.accepts_cargo[j]) { cargo_fld->ConnectCargo(cargo_fld->u.cargo.vertical_cargoes[i], false); goto next_cargo; } @@ -2724,12 +2723,11 @@ struct IndustryCargoesWindow : public Window { for (uint i = 0; i < length; i++) { if (!IsValidCargoID(cargoes[i])) continue; - for (uint h = 0; h < NUM_HOUSES; h++) { - HouseSpec *hs = HouseSpec::Get(h); - if (!hs->enabled || !(hs->building_availability & climate_mask)) continue; + for (const auto &hs : HouseSpec::Specs()) { + if (!hs.enabled || !(hs.building_availability & climate_mask)) continue; - for (uint j = 0; j < lengthof(hs->accepts_cargo); j++) { - if (hs->cargo_acceptance[j] > 0 && cargoes[i] == hs->accepts_cargo[j]) return true; + for (uint j = 0; j < lengthof(hs.accepts_cargo); j++) { + if (hs.cargo_acceptance[j] > 0 && cargoes[i] == hs.accepts_cargo[j]) return true; } } } diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 20ac05431a..021608b843 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -9337,20 +9337,18 @@ static void EnsureEarlyHouse(HouseZones bitmask) { TimerGameCalendar::Year min_year = CalendarTime::MAX_YEAR; - for (int i = 0; i < NUM_HOUSES; i++) { - HouseSpec *hs = HouseSpec::Get(i); - if (hs == nullptr || !hs->enabled) continue; - if ((hs->building_availability & bitmask) != bitmask) continue; - if (hs->min_year < min_year) min_year = hs->min_year; + for (const auto &hs : HouseSpec::Specs()) { + if (!hs.enabled) continue; + if ((hs.building_availability & bitmask) != bitmask) continue; + if (hs.min_year < min_year) min_year = hs.min_year; } if (min_year == 0) return; - for (int i = 0; i < NUM_HOUSES; i++) { - HouseSpec *hs = HouseSpec::Get(i); - if (hs == nullptr || !hs->enabled) continue; - if ((hs->building_availability & bitmask) != bitmask) continue; - if (hs->min_year == min_year) hs->min_year = 0; + for (auto &hs : HouseSpec::Specs()) { + if (!hs.enabled) continue; + if ((hs.building_availability & bitmask) != bitmask) continue; + if (hs.min_year == min_year) hs.min_year = 0; } } @@ -9390,7 +9388,7 @@ static void FinaliseHouseArray() } } - for (size_t i = 0; i < NUM_HOUSES; i++) { + for (size_t i = 0; i < HouseSpec::Specs().size(); i++) { HouseSpec *hs = HouseSpec::Get(i); const HouseSpec *next1 = (i + 1 < NUM_HOUSES ? HouseSpec::Get(i + 1) : nullptr); const HouseSpec *next2 = (i + 2 < NUM_HOUSES ? HouseSpec::Get(i + 2) : nullptr); diff --git a/src/newgrf_house.cpp b/src/newgrf_house.cpp index ac18c4fbe2..e31c49964a 100644 --- a/src/newgrf_house.cpp +++ b/src/newgrf_house.cpp @@ -52,6 +52,15 @@ std::vector &HouseSpec::Specs() return _house_specs; } +/** + * Gets the index of this spec. + * @return The index. + */ +HouseID HouseSpec::Index() const +{ + return static_cast(this - _house_specs.data()); +} + /** * Get the spec for a house ID. * @param house_id The ID of the house. diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index b85d077d92..c44cf48b04 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -2658,31 +2658,28 @@ static bool BuildTownHouse(Town *t, TileIndex tile) /* bits 0-4 are used * bits 11-15 are used * bits 5-10 are not used. */ - HouseID houses[NUM_HOUSES]; - uint num = 0; - uint probs[NUM_HOUSES]; + static std::vector> probs; + probs.clear(); + uint probability_max = 0; /* Generate a list of all possible houses that can be built. */ - for (uint i = 0; i < NUM_HOUSES; i++) { - const HouseSpec *hs = HouseSpec::Get(i); - + for (const auto &hs : HouseSpec::Specs()) { /* Verify that the candidate house spec matches the current tile status */ - if ((~hs->building_availability & bitmask) != 0 || !hs->enabled || hs->grf_prop.override != INVALID_HOUSE_ID) continue; + if ((~hs.building_availability & bitmask) != 0 || !hs.enabled || hs.grf_prop.override != INVALID_HOUSE_ID) continue; /* Don't let these counters overflow. Global counters are 32bit, there will never be that many houses. */ - if (hs->class_id != HOUSE_NO_CLASS) { + if (hs.class_id != HOUSE_NO_CLASS) { /* id_count is always <= class_count, so it doesn't need to be checked */ - if (t->cache.building_counts.class_count[hs->class_id] == UINT16_MAX) continue; + if (t->cache.building_counts.class_count[hs.class_id] == UINT16_MAX) continue; } else { /* If the house has no class, check id_count instead */ - if (t->cache.building_counts.id_count[i] == UINT16_MAX) continue; + if (t->cache.building_counts.id_count[hs.Index()] == UINT16_MAX) continue; } - uint cur_prob = hs->probability; + uint cur_prob = hs.probability; probability_max += cur_prob; - probs[num] = cur_prob; - houses[num++] = (HouseID)i; + probs.emplace_back(std::make_pair(hs.Index(), cur_prob)); } TileIndex baseTile = tile; @@ -2697,18 +2694,17 @@ static bool BuildTownHouse(Town *t, TileIndex tile) uint r = RandomRange(probability_max); uint i; - for (i = 0; i < num; i++) { - if (probs[i] > r) break; - r -= probs[i]; + for (i = 0; i < probs.size(); i++) { + if (probs[i].second > r) break; + r -= probs[i].second; } - HouseID house = houses[i]; - probability_max -= probs[i]; + HouseID house = probs[i].first; + probability_max -= probs[i].second; /* remove tested house from the set */ - num--; - houses[i] = houses[num]; - probs[i] = probs[num]; + probs[i] = probs.back(); + probs.pop_back(); const HouseSpec *hs = HouseSpec::Get(house); From e21c12afeb04b5797ccfb9b94effff53d653888f Mon Sep 17 00:00:00 2001 From: translators Date: Fri, 29 Mar 2024 04:41:18 +0000 Subject: [PATCH 54/70] Update: Translations from eints finnish: 39 changes by hpiirai ukrainian: 23 changes by StepanIvasyn danish: 1 change by bscargo french: 1 change by Lishouuu portuguese: 1 change by azulcosta portuguese (brazilian): 100 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 200 +++++++++++++++--------------- src/lang/danish.txt | 2 +- src/lang/finnish.txt | 78 ++++++------ src/lang/french.txt | 2 +- src/lang/portuguese.txt | 2 +- src/lang/ukrainian.txt | 46 +++---- 6 files changed, 165 insertions(+), 165 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index e43718ba29..c755c497a8 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -736,8 +736,8 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mandachuva STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnata do Século STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY} STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA}) -STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} conquista o status de '{STRING}'! -STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} conquista o status de '{STRING}'! +STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} conquista o status de '{STRING}'!! +STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} conquista o status de '{STRING}'!! # Smallmap window STR_SMALLMAP_CAPTION :{WHITE}Mapa - {STRING} @@ -814,7 +814,7 @@ STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Mostrar STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - STR_STATUSBAR_PAUSED :{YELLOW}* * PAUSADO * * STR_STATUSBAR_PAUSED_LINK_GRAPH :{ORANGE}* * PAUSADO (aguardando atualização da rede de conexões) * * -STR_STATUSBAR_AUTOSAVE :{RED}Salvo Automaticamente +STR_STATUSBAR_AUTOSAVE :{RED}SALVAR AUTOMÁTICO STR_STATUSBAR_SAVING_GAME :{RED}* * SALVANDO JOGO * * STR_STATUSBAR_SPECTATOR :{WHITE}(espectador) @@ -848,7 +848,7 @@ STR_NEWS_DISASTER_AIRPLANE_OIL_REFINERY :{BIG_FONT}{BLAC STR_NEWS_DISASTER_HELICOPTER_FACTORY :{BIG_FONT}{BLACK}Fábrica destruída em circunstâncias suspeitas perto de {TOWN}! STR_NEWS_DISASTER_BIG_UFO :{BIG_FONT}{BLACK}OVNI pousa em {TOWN}! STR_NEWS_DISASTER_COAL_MINE_SUBSIDENCE :{BIG_FONT}{BLACK}Afundamento da mina de carvão deixa rastro de destruição perto de {TOWN}! -STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundações!{}Pelo menos {COMMA} desaparecidos, supostamente mortos após terríveis inundações! +STR_NEWS_DISASTER_FLOOD_VEHICLE :{BIG_FONT}{BLACK}Inundações!{}Pelo menos {COMMA} desaparecidos, considerados como mortos após terríveis inundações! STR_NEWS_COMPANY_IN_TROUBLE_TITLE :{BIG_FONT}{BLACK}Empresa de transporte em dificuldades! STR_NEWS_COMPANY_IN_TROUBLE_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} será vendida ou declarada falida se não aumentar o desempenho em breve! @@ -856,7 +856,7 @@ STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi vendida para {STRING} por {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Falência! STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi fechada pelos credores e todos os seus bens foram vendidos! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes!! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} inicia construção perto de {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} foi comprada por {STRING} por um valor não revelado! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Gerente) @@ -892,7 +892,7 @@ STR_NEWS_AIRCRAFT_IS_WAITING :{WHITE}{VEHICLE ###next-name-looks-similar # Order review system / warnings -STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} tem muito poucas ordens no horário +STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE} tem muito poucas ordens na programação STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} tem uma ordem nula STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} tem ordens duplicadas STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} tem uma estação inválida em suas ordens @@ -910,7 +910,7 @@ STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} parou porque uma ordem de adaptação falhou STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Renovação automática falhou para {VEHICLE}{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} disponível! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} disponível!! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nov{G o a} {STRING} disponível! - {ENGINE} @@ -921,7 +921,7 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_LIST :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Oferta de subsídio expirou:{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} agora não será subsidiado STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Subsídio retirado:{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} não é mais subsidiado -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá subsídio da autoridade local durante {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Subsídio de serviço oferecido:{}{}Primeiro transporte de {STRING} d{G e a} {STRING} para {STRING} receberá subsídio da autoridade local durante {UNITS_YEARS_OR_MINUTES}! ###length 4 STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá um adicional de 50% durante {UNITS_YEARS_OR_MINUTES}! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}Subsídio concedido a {STRING}!{}{}Transporte de {STRING} d{G e a} {STRING} para {STRING} receberá o dobro da tarifa durante {UNITS_YEARS_OR_MINUTES}! @@ -1080,17 +1080,17 @@ STR_GAME_OPTIONS_REFRESH_RATE_TOOLTIP :{BLACK}Selecion STR_GAME_OPTIONS_REFRESH_RATE_ITEM :{NUM}Hz STR_GAME_OPTIONS_REFRESH_RATE_WARNING :{WHITE}Taxas de atualização superiores a 60Hz podem interferir no desempenho. -STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos base -STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecione um conjunto de gráficos base para usar (não pode ser alterado no jogo, só a partir do menu principal) -STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre sobre o conjunto de gráficos base +STR_GAME_OPTIONS_BASE_GRF :{BLACK}Conjunto de gráficos básicos +STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Selecione um conjunto de gráficos básicos para usar (não pode ser alterado no jogo, só a partir do menu principal) +STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre sobre o conjunto de gráficos básicos -STR_GAME_OPTIONS_BASE_SFX :{BLACK}Conjunto de sons base -STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Selecione um conjunto de sons base para usar (não pode ser alterado no jogo, só a partir do menu principal) -STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre sobre o conjunto de sons base +STR_GAME_OPTIONS_BASE_SFX :{BLACK}Conjunto de sons básicos +STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Selecione um conjunto de sons básicos para usar (não pode ser alterado no jogo, só a partir do menu principal) +STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre sobre o conjunto de sons básicos -STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Conjunto de músicas base -STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Selecione um conjunto de músicas base para usar -STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre o conjunto de músicas base +STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Conjunto de músicas básicas +STR_GAME_OPTIONS_BASE_MUSIC_TOOLTIP :{BLACK}Selecione um conjunto de músicas básicas para usar +STR_GAME_OPTIONS_BASE_MUSIC_DESCRIPTION_TOOLTIP :{BLACK}Informação adicional sobre o conjunto de músicas básicas STR_GAME_OPTIONS_SOCIAL_PLUGINS_NONE :{LTBLUE}(não existem plugins instalados para integrar com as plataformas sociais) @@ -1176,8 +1176,8 @@ STR_RIVERS_MODERATE :Alguns STR_RIVERS_LOT :Muitos ###length 3 -STR_DISASTER_NONE :Nenhum -STR_DISASTER_REDUCED :Reduzido +STR_DISASTER_NONE :Nenhuma +STR_DISASTER_REDUCED :Reduzida STR_DISASTER_NORMAL :Normal ###length 4 @@ -1251,8 +1251,8 @@ STR_CONFIG_SETTING_TYPE_HIDES :{BLACK}Mostrar STR_CONFIG_SETTING_CATEGORY_AND_TYPE_HIDES :{BLACK}Mostrar todos os resultados da pesquisa por configuração{}{SILVER}Categoria {BLACK}para {WHITE}{STRING} {BLACK}e {SILVER}Tipo {BLACK}para {WHITE}Todos os tipos de configuração ###length 3 -STR_CONFIG_SETTING_OFF :Desativado -STR_CONFIG_SETTING_ON :Ativado +STR_CONFIG_SETTING_OFF :Não +STR_CONFIG_SETTING_ON :Sim STR_CONFIG_SETTING_DISABLED :Desativado ###length 3 @@ -1273,7 +1273,7 @@ STR_CONFIG_SETTING_HORIZONTAL_POS_RIGHT :Direita STR_CONFIG_SETTING_SECONDS_VALUE :{COMMA}{NBSP}segundo{P 0 "" s} STR_CONFIG_SETTING_INFINITE_MONEY :Dinheiro infinito: {STRING} -STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Permitir gastos ilimitados e desabilitar a falência de empresas +STR_CONFIG_SETTING_INFINITE_MONEY_HELPTEXT :Permitir gastos ilimitados e desativar a falência de empresas STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN :Valor máximo do empréstimo inicial: {STRING} STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_HELPTEXT :Valor máximo que uma empresa pode emprestar (sem considerar a inflação). Se definido como "Sem empréstimo", não haverá dinheiro disponível a menos que seja fornecido por um Script de Jogo ou pela configuração "Dinheiro infinito" @@ -1291,7 +1291,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidade de c STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limitar a quantidade ações de construção para IAs STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS :Quebra de veículos: {STRING} -STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controlar a frequência com que veículos sem manutenção adequada podem quebrar +STR_CONFIG_SETTING_VEHICLE_BREAKDOWNS_HELPTEXT :Controlar com que frequência veículos sem manutenção adequada podem quebrar STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER :Multiplicador de subsídios: {STRING} STR_CONFIG_SETTING_SUBSIDY_MULTIPLIER_HELPTEXT :Definir quanto é pago para conexões subsidiadas @@ -1311,7 +1311,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Definir o níve STR_CONFIG_SETTING_RECESSIONS :Recessões: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Se ativado, recessões podem ocorrer periodicamente. Durante uma recessão, toda a produção é significativamente menor (ela retorna ao nível anterior quando a recessão termina) -STR_CONFIG_SETTING_TRAIN_REVERSING :Desabilitar reversão de trens nas estações: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING :Não permitir a reversão de trens nas estações: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Se ativado, os trens não podem inverter a direção em estações não-terminais, mesmo se existir um caminho mais curto para o próximo destino com a inversão STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING} @@ -1330,13 +1330,13 @@ STR_CONFIG_SETTING_TOO_HIGH_MOUNTAIN :{WHITE}Você n STR_CONFIG_SETTING_AUTOSLOPE :Permitir paisagismo sob edifícios, vias, etc.: {STRING} STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Permitir paisagismo sob edifícios e vias sem precisar removê-lo(a)s -STR_CONFIG_SETTING_CATCHMENT :Área de cobertura com dimensões mais realistas: {STRING} +STR_CONFIG_SETTING_CATCHMENT :Permitir áreas de cobertura com dimensões mais realistas: {STRING} STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Usar áreas de cobertura de tamanhos diferentes para diferentes tipos de estações e aeroportos STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Estações de empresas podem servir indústrias com estações neutras próprias: {STRING} STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Quando ativado, indústrias com estações próprias (como as Petrolíferas) podem ser servidas por estações da empresa construídas nas proximidades. Quando desativado, essas indústrias só podem ser servidas pela sua própria estação. Qualquer estação da empresa nas redondezas não poderá servir a indústria e a estação própria não poderá atender outra senão a própria indústria -STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir a remoção de mais estradas, pontes e túneis das cidades: {STRING} +STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir a remoção de mais estradas, pontes e túneis das localidades: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Facilitar a remoção de edifícios e infraestruturas das localidades STR_CONFIG_SETTING_TRAIN_LENGTH :Comprimento máximo de trens: {STRING} @@ -1384,7 +1384,7 @@ STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Nenhum STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Como as outras indústrias STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_PROSPECTING :Prospecção -STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Área plana ao redor de indústrias: {STRING} +STR_CONFIG_SETTING_INDUSTRY_PLATFORM :Área plana em torno de indústrias: {STRING} STR_CONFIG_SETTING_INDUSTRY_PLATFORM_HELPTEXT :Quantidade de terreno plano em volta de uma indústria. Isto garante que um espaço vazio permanecerá disponível em torno da indústria para a construção de linhas, etc. STR_CONFIG_SETTING_MULTIPINDTOWN :Permitir várias indústrias semelhantes por localidade: {STRING} @@ -1452,7 +1452,7 @@ STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA} STR_CONFIG_SETTING_PLANE_CRASHES :Número de acidentes de aeronaves: {STRING} STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Definir a ocorrência aleatória de acidentes aéreos.{}* Aeronaves grandes sempre estão sujeitas a acidentes quando pousam em aeroportos pequenos ###length 3 -STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Nenhum +STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Nenhum* STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Reduzido STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Normal @@ -1502,7 +1502,7 @@ STR_CONFIG_SETTING_TIMEKEEPING_UNITS_CALENDAR :Calendário STR_CONFIG_SETTING_TIMEKEEPING_UNITS_WALLCLOCK :Relógio de parede STR_CONFIG_SETTING_MINUTES_PER_YEAR :Minutos por ano: {STRING} -STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Escolher o número de minutos para o ano do calendário. O padrão é 12 minutos. Defina como 0 para o tempo do calendário não mudar. Essa configuração não afeta a simulação econômica do jogo e só está disponível quando o tempo é baseado em relógio de parede +STR_CONFIG_SETTING_MINUTES_PER_YEAR_HELPTEXT :Escolher o número de minutos em um ano do calendário. O padrão é 12 minutos. Defina como 0 para o tempo do calendário não mudar. Essa configuração não afeta a simulação econômica do jogo e só está disponível quando o tempo é baseado em relógio de parede STR_CONFIG_SETTING_MINUTES_PER_YEAR_VALUE :{NUM} ###setting-zero-is-special @@ -1527,10 +1527,10 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :Quantia mínima STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Quantia mínima de dinheiro que deve existir na conta bancária para a renovação automática de veículos ser considerada STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da mensagem de erro: {STRING} -STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Duração da exibição de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tempo de exibição de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Quando este valor está definido como 0, os textos de ajuda podem ser mostrados com o botão direito do mouse +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Quando este valor é igual a 0 (zero), os textos de ajuda podem ser mostrados com o botão direito do mouse STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Manter o cursor por {COMMA} milissegundo{P 0 "" s} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Botão direito @@ -1546,11 +1546,11 @@ STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Adicionar uma l STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar as cargas que os veículos podem transportar nas janelas de listagem: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Se ativado, a carga que o veículo pode transportar aparecerá acima dele nas listas de veículos -STR_CONFIG_SETTING_LANDSCAPE :Clima: {STRING} -STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Os climas definem a jogabilidade básica dos cenários, com diferentes cargas e requisitos para crescimento das localidades. NewGRFs e Scripts de Jogo permitem um controle mais preciso sobre isso +STR_CONFIG_SETTING_LANDSCAPE :Paisagem: {STRING} +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Os climas definem cenários básicos de jogo, com diferentes cargas e requisitos de crescimento das localidades. NewGRFs e Scripts de Jogo permitem um controle mais preciso sobre isso STR_CONFIG_SETTING_LAND_GENERATOR :Gerador de Terreno: {STRING} -STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :O gerador 'Original' depende do conjunto gráfico base e produz formas de terreno pré-definidas. 'TerraGenesis' é um gerador baseado no algoritmo de ruído de Perlin, que permite configurações mais refinadas +STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :O gerador 'Original' depende do conjunto de gráficos básicos e produz formas de terreno pré-definidas. 'TerraGenesis' é um gerador baseado no algoritmo de ruído de Perlin, que permite configurações mais refinadas ###length 2 STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Original STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis @@ -1571,7 +1571,7 @@ STR_CONFIG_SETTING_SNOW_COVERAGE :Cobertura de ne STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Escolher a quantidade aproximada de neve na paisagem subártica. A neve também afeta a geração de indústrias e os requisitos para crescimento das localidades. Usado somente durante a geração do mapa. O nível do mar e as suas encostas nunca têm neve STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}% -STR_CONFIG_SETTING_DESERT_COVERAGE :Cobertura do deserto: {STRING} +STR_CONFIG_SETTING_DESERT_COVERAGE :Cobertura de deserto: {STRING} STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Escolher a quantidade aproximada de deserto na paisagem tropical. O deserto também afeta a geração de indústrias e os requisitos para crescimento das localidades. Usado somente durante a geração do mapa STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% @@ -1662,8 +1662,8 @@ STR_CONFIG_SETTING_LIVERIES_ALL :Todas as empres STR_CONFIG_SETTING_PREFER_TEAMCHAT :Preferência de chat em equipe com : {STRING} STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT :Trocar o mapeamento entre o chat interno da empresa e o chat público para e , respectivamente -STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Velocidade da roda do mouse no mapa: {STRING} -STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Controlar a sensibilidade do deslocamento com a roda do mouse +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER :Velocidade de rolagem do mapa com a roda do mouse: {STRING} +STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT :Controlar a sensibilidade do deslocamento do mapa com a roda do mouse STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING :Função da roda do mouse: {STRING} STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT :Permitir o deslocamento com rodas de mouse bidimensionais @@ -2032,9 +2032,9 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador d STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamanho médio das cidades em relação às localidades normais no início do jogo STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Atualizar a distribuição a cada {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tempo entre recálculos subsequentes da rede de conexões. Cada recálculo atualiza os planos para um componente da rede. Isso significa que um valor X para esta configuração não significa que toda a rede será atualizada a cada X segundos. Apenas algum componente será atualizado. Quanto menor o tempo definido, mais tempo de CPU será necessário para calculá-lo. Quanto maior o valor definido, mais tempo será necessário até que a distribuição de carga inicie nas novas rotas +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tempo entre recálculos subsequentes da rede de conexões. Cada recálculo atualiza os planos para um componente da rede. Isso significa que um valor X para esta configuração não significa que toda a rede será atualizada a cada X segundos. Apenas algum componente será atualizado. Quanto menor este valor, mais tempo de CPU será necessário para calcular as atualizações. Quanto maior este valor, mais tempo será necessário até que a distribuição de carga inicie nas novas rotas STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Usar {STRING} para recalcular a distribuição -STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tempo gasto em cada recálculo de um componente da rede de conexões. Quando um recálculo é iniciado, uma tarefa é gerada e pode ser executada por esse número de segundos. Quanto menor for esse valor, maior a chance de que a tarefa não seja concluída quando deveria. Então o jogo para até que ela seja completada, causando um atraso. Quanto maior for esse valor, mais tempo será necessário para a distribuição ser atualizada quando as rotas mudam +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tempo gasto em cada recálculo de um componente da rede de conexões. Quando um recálculo é iniciado, uma tarefa é gerada e pode ser executada por esse número de segundos. Quanto menor este valor, maior a chance de que a tarefa não seja concluída quando deveria. Então o jogo para até que ela seja completada, causando um atraso. Quanto maior este valor, mais tempo será necessário para a distribuição ser atualizada quando as rotas mudam STR_CONFIG_SETTING_DISTRIBUTION_PAX :Modo de distribuição para passageiros: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simétrico" significa que aproximadamente o mesmo número de passageiros irá de uma estação A para uma estação B, assim como de B para A. "Assimétrico" significa que um número arbitrário de passageiros pode ir em qualquer direção. "Manual" significa que não haverá distribuição automática dos passageiros @@ -2050,10 +2050,10 @@ STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :assimétrico STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :simétrico STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Precisão da distribuição: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Quanto maior for esse valor, mais tempo de CPU será necessário para calcular a rede de conexões. Se demorar muito, você poderá notar um atraso. Entretanto, se o valor for muito pequeno, a distribuição será imprecisa e você irá perceber que cargas não estão sendo enviadas para os locais esperados +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Quanto maior este valor, mais tempo de CPU será necessário para calcular a rede de conexões. Se demorar muito, você poderá notar um atraso. Entretanto, se o valor for muito pequeno, a distribuição será imprecisa e você irá perceber que cargas não estão sendo enviadas para os locais esperados STR_CONFIG_SETTING_DEMAND_DISTANCE :Efeito da distância na demanda: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Se for definido um valor maior que 0, a distância entre a estação de origem A (de alguma carga) e um possível destino B terá um efeito na quantidade de carga enviada de A até B. Quanto mais distante B estiver de A, menos carga será enviada. Quanto maior o valor definido, menos carga será transportada para estações distantes e mais carga será enviada para estações mais próximas +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Se este valor for maior que 0, a distância entre a estação de origem A (de alguma carga) e um possível destino B terá um efeito na quantidade de carga enviada de A até B. Quanto mais distante B estiver de A, menos carga será enviada. Quanto maior o valor escolhido, menos carga será transportada para estações distantes e mais carga será enviada para estações mais próximas STR_CONFIG_SETTING_DEMAND_SIZE :Quantidade de carga retornada no modo simétrico: {STRING} STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Definir isto para menos de 100% faz com que a distribuição simétrica comporte-se mais como a assimétrica. Menos carga será forçadamente devolvida se uma certa quantidade for enviada a uma estação. Se você definir em 0% a distribuição simétrica se comportará exatamente como a assimétrica @@ -2070,7 +2070,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_GAMEUNITS_DAYS :Unidades do jog STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_GAMEUNITS_SECS :Unidades do jogo (quadrados/s) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_KNOTS :Nós -STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unidade de potência veicular: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unidades de potência de veículos: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Sempre que a potência de um veículo for exibida na interface de usuário, mostrar nessas unidades ###length 3 STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL :Imperial (hp) @@ -2084,14 +2084,14 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL :Imperial (t/ton STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_METRIC :Métrico (t/tonelada) STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_SI :SI (kg) -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unidades volumétricas: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME :Unidades de volume: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT :Sempre que um volume for exibido na interface de usuário, mostrar nessas unidades ###length 3 STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL :Imperial (gal) -STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Métrico (l) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_METRIC :Métrico (L) STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_SI :SI (m³) -STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unidade de força de tração: {STRING} +STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE :Unidades de força de tração: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT :Sempre que o esforço de tração (ou força de tração) for exibido na interface de usuário, mostrar nessas unidades ###length 3 STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL :Imperial (lbf) @@ -2140,7 +2140,7 @@ STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Algoritmo usado STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Gerador de rotas para embarcações: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Algoritmo usado para estabelecer as rotas das embarcações STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Reversão automática em sinais: {STRING} -STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam o sentido em um sinal, se eles tiverem esperado lá muito tempo +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam a direção em um sinal, se eles tiverem esperado lá muito tempo ###length 2 STR_CONFIG_SETTING_PATHFINDER_NPF :NPF STR_CONFIG_SETTING_PATHFINDER_YAPF :YAPF {BLUE}(Recomendado) @@ -2161,16 +2161,16 @@ STR_CONFIG_ERROR_INVALID_GRF_INCOMPATIBLE :incompatível c STR_CONFIG_ERROR_INVALID_GRF_UNKNOWN :desconhecido STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_LEVEL :{WHITE}... nível de compressão '{STRING}' não é válido STR_CONFIG_ERROR_INVALID_SAVEGAME_COMPRESSION_ALGORITHM :{WHITE}... jogo salvo no formato '{STRING}' está indisponível. Revertendo para '{STRING}' -STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorando conjunto de Gráficos Base '{STRING}': não encontrado -STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorando conjunto de Sons Base '{STRING}': não encontrado -STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorando conjunto de Músicas Base '{STRING}': não encontrado +STR_CONFIG_ERROR_INVALID_BASE_GRAPHICS_NOT_FOUND :{WHITE}... ignorando conjunto de Gráficos Básicos '{STRING}': não encontrado +STR_CONFIG_ERROR_INVALID_BASE_SOUNDS_NOT_FOUND :{WHITE}... ignorando conjunto de Sons Básicos '{STRING}': não encontrado +STR_CONFIG_ERROR_INVALID_BASE_MUSIC_NOT_FOUND :{WHITE}... ignorando conjunto de Músicas Básicas '{STRING}': não encontrado STR_CONFIG_ERROR_OUT_OF_MEMORY :{WHITE}Memória insuficiente STR_CONFIG_ERROR_SPRITECACHE_TOO_BIG :{WHITE}Falha ao alocar {BYTES} de memória para sprites. A memória reservada para sprites foi reduzida para {BYTES}. Isto irá reduzir o desempenho do OpenTTD. Para diminuir o uso de memória você pode desabilitar gráficos de 32bpp e/ou diminuir os níveis de ampliação das visualizações # Video initalization errors STR_VIDEO_DRIVER_ERROR :{WHITE}Erro nas configurações de vídeo... STR_VIDEO_DRIVER_ERROR_NO_HARDWARE_ACCELERATION :{WHITE}... nenhuma GPU compatível encontrada. Aceleração por hardware desativada -STR_VIDEO_DRIVER_ERROR_HARDWARE_ACCELERATION_CRASH :{WHITE}... o controlador gráfico (GPU) travou o jogo. Aceleração por hardware desativada +STR_VIDEO_DRIVER_ERROR_HARDWARE_ACCELERATION_CRASH :{WHITE}... controlador gráfico (GPU) travou o jogo. Aceleração por hardware desativada # Intro window STR_INTRO_CAPTION :{WHITE}OpenTTD {REV} @@ -2196,7 +2196,7 @@ STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Iniciar STR_INTRO_TOOLTIP_LOAD_GAME :{BLACK}Abrir um jogo salvo STR_INTRO_TOOLTIP_PLAY_HEIGHTMAP :{BLACK}Iniciar um novo jogo, usando um mapa de altitudes como terreno STR_INTRO_TOOLTIP_PLAY_SCENARIO :{BLACK}Iniciar um novo jogo, usando um cenário personalizado -STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Criar um cenário de jogo personalizado +STR_INTRO_TOOLTIP_SCENARIO_EDITOR :{BLACK}Criar um mundo/cenário de jogo personalizado STR_INTRO_TOOLTIP_MULTIPLAYER :{BLACK}Iniciar um jogo multijogador STR_INTRO_TOOLTIP_TEMPERATE :{BLACK}Selecionar paisagem 'clima temperado' @@ -2212,9 +2212,9 @@ STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Abrir co STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Verificar por conteúdo novo e atualizado para download STR_INTRO_TOOLTIP_AI_SETTINGS :{BLACK}Abrir configurações de IA STR_INTRO_TOOLTIP_GAMESCRIPT_SETTINGS :{BLACK}Abrir configurações de Script de Jogo -STR_INTRO_TOOLTIP_QUIT :{BLACK}Fechar o 'OpenTTD' +STR_INTRO_TOOLTIP_QUIT :{BLACK}Sair do 'OpenTTD' -STR_INTRO_BASESET :{BLACK}Faltam {NUM} sprite{P "" s} no conjunto de gráficos base selecionado. Por favor, verifique se existem atualizações para o conjunto. +STR_INTRO_BASESET :{BLACK}Faltam {NUM} sprite{P "" s} no conjunto de gráficos básicos selecionado. Por favor, verifique se existem atualizações para o conjunto. STR_INTRO_TRANSLATION :{BLACK}Faltam {NUM} string{P "" s} nesta tradução. Por favor, ajude a melhorar o OpenTTD inscrevendo-se como tradutor. Veja o arquivo readme.txt para mais detalhes. # Quit window @@ -2281,14 +2281,14 @@ STR_LIVERY_STEAM :Locomotiva a Va STR_LIVERY_DIESEL :Locomotiva Diesel STR_LIVERY_ELECTRIC :Locomotiva Elétrica STR_LIVERY_MONORAIL :Locomotiva Monotrilho -STR_LIVERY_MAGLEV :Locomotiva MagLev +STR_LIVERY_MAGLEV :Locomotiva Maglev STR_LIVERY_DMU :DMU STR_LIVERY_EMU :EMU STR_LIVERY_PASSENGER_WAGON_STEAM :Vagão de Passageiros (Vapor) STR_LIVERY_PASSENGER_WAGON_DIESEL :Vagão de Passageiros (Diesel) STR_LIVERY_PASSENGER_WAGON_ELECTRIC :Vagão de Passageiros (Elétrico) STR_LIVERY_PASSENGER_WAGON_MONORAIL :Vagão de Passageiros (Monotrilho) -STR_LIVERY_PASSENGER_WAGON_MAGLEV :Vagão de Passageiros (MagLev) +STR_LIVERY_PASSENGER_WAGON_MAGLEV :Vagão de Passageiros (Maglev) STR_LIVERY_FREIGHT_WAGON :Vagão de Carga STR_LIVERY_BUS :Ônibus STR_LIVERY_TRUCK :Caminhão @@ -2373,7 +2373,7 @@ STR_NETWORK_SERVER_LIST_GAME_NAME :{BLACK}Nome STR_NETWORK_SERVER_LIST_GAME_NAME_TOOLTIP :{BLACK}Nome do jogo STR_NETWORK_SERVER_LIST_GENERAL_ONLINE :{BLACK}{COMMA}/{COMMA} - {COMMA}/{COMMA} STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION :{BLACK}Clientes -STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Clientes conectados / máx. clientes{}Empresas conectadas / máx. empresas +STR_NETWORK_SERVER_LIST_CLIENTS_CAPTION_TOOLTIP :{BLACK}Clientes conectados / máx. clientes{}Empresas / máx. empresas STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x{COMMA} STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION :{BLACK}Tamanho do mapa STR_NETWORK_SERVER_LIST_MAP_SIZE_CAPTION_TOOLTIP :{BLACK}Tamanho do mapa do jogo{}Clique para ordenar por área @@ -2408,7 +2408,7 @@ STR_NETWORK_SERVER_LIST_VERSION_MISMATCH :{SILVER}VERSÃO STR_NETWORK_SERVER_LIST_GRF_MISMATCH :{SILVER}NEWGRF INCOMPATÍVEL STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}Entrar no jogo -STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Atualizar informações +STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Atualizar servidor STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Atualizar as informações do servidor STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET :{BLACK}Procurar na internet @@ -2647,7 +2647,7 @@ STR_NETWORK_MESSAGE_KICKED :*** {STRING} fo STR_NETWORK_ERROR_COORDINATOR_REGISTRATION_FAILED :{WHITE}Falha ao registrar o servidor STR_NETWORK_ERROR_COORDINATOR_REUSE_OF_INVITE_CODE :{WHITE}Outro servidor com o mesmo código de convite foi registrado. Mudando para o tipo de jogo "local". -STR_NETWORK_ERROR_COORDINATOR_ISOLATED :{WHITE}Seu servidor não permite conexões remotas +STR_NETWORK_ERROR_COORDINATOR_ISOLATED :{WHITE}O seu servidor não permite conexões remotas STR_NETWORK_ERROR_COORDINATOR_ISOLATED_DETAIL :{WHITE}Outros jogadores não poderão se conectar ao seu servidor # Content downloading window @@ -2689,21 +2689,21 @@ STR_CONTENT_DETAIL_DESCRIPTION :{SILVER}Descri STR_CONTENT_DETAIL_URL :{SILVER}URL: {WHITE}{STRING} STR_CONTENT_DETAIL_TYPE :{SILVER}Tipo: {WHITE}{STRING} STR_CONTENT_DETAIL_FILESIZE :{SILVER}Tamanho: {WHITE}{BYTES} -STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Selecionado devido a: {WHITE}{STRING} +STR_CONTENT_DETAIL_SELECTED_BECAUSE_OF :{SILVER}Selecionado para: {WHITE}{STRING} STR_CONTENT_DETAIL_DEPENDENCIES :{SILVER}Dependências: {WHITE}{STRING} STR_CONTENT_DETAIL_TAGS :{SILVER}Etiquetas: {WHITE}{STRING} STR_CONTENT_NO_ZLIB :{WHITE}OpenTTD foi feito sem suporte a "zlib"... STR_CONTENT_NO_ZLIB_SUB :{WHITE}... não é possível fazer o download do conteúdo! # Order of these is important! -STR_CONTENT_TYPE_BASE_GRAPHICS :Gráficos base +STR_CONTENT_TYPE_BASE_GRAPHICS :Gráficos básicos STR_CONTENT_TYPE_NEWGRF :NewGRF STR_CONTENT_TYPE_AI :IA STR_CONTENT_TYPE_AI_LIBRARY :Biblioteca de IA STR_CONTENT_TYPE_SCENARIO :Cenário STR_CONTENT_TYPE_HEIGHTMAP :Mapa de altitudes -STR_CONTENT_TYPE_BASE_SOUNDS :Sons base -STR_CONTENT_TYPE_BASE_MUSIC :Músicas base +STR_CONTENT_TYPE_BASE_SOUNDS :Sons básicos +STR_CONTENT_TYPE_BASE_MUSIC :Músicas básicas STR_CONTENT_TYPE_GAME_SCRIPT :Script de jogo STR_CONTENT_TYPE_GS_LIBRARY :Biblioteca de SJ @@ -2746,7 +2746,7 @@ STR_TRANSPARENT_INVISIBLE_TOOLTIP :{BLACK}Definir STR_LINKGRAPH_LEGEND_CAPTION :{BLACK}Legenda do Fluxo de Carga STR_LINKGRAPH_LEGEND_ALL :{BLACK}Todas STR_LINKGRAPH_LEGEND_NONE :{BLACK}Nenhuma -STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Selecionar as empresas a serem mostradas +STR_LINKGRAPH_LEGEND_SELECT_COMPANIES :{BLACK}Selecione as empresas a serem mostradas STR_LINKGRAPH_LEGEND_COMPANY_TOOLTIP :{BLACK}{STRING}{}{COMPANY} # Linkgraph legend window and linkgraph legend in smallmap @@ -2761,7 +2761,7 @@ STR_LINKGRAPH_STATS_TOOLTIP_RETURN_EXTENSION :{}{CARGO_LONG} STR_LINKGRAPH_STATS_TOOLTIP_TIME_EXTENSION :{}Tempo médio de viagem: {UNITS_DAYS_OR_SECONDS} # Base for station construction window(s) -STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Mostrar área de cobertura +STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Exibir área de cobertura STR_STATION_BUILD_COVERAGE_OFF :{BLACK}Desativado STR_STATION_BUILD_COVERAGE_ON :{BLACK}Ativado STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}Não mostrar área de cobertura do local proposto @@ -2779,13 +2779,13 @@ STR_JOIN_WAYPOINT_CAPTION :{WHITE}Unir pon STR_JOIN_WAYPOINT_CREATE_SPLITTED_WAYPOINT :{YELLOW}Construir um ponto de controle separado # Generic toolbar -STR_TOOLBAR_DISABLED_NO_VEHICLE_AVAILABLE :{BLACK}Desativado porque não existem, atualmente, veículos disponíveis para esta infraestrutura +STR_TOOLBAR_DISABLED_NO_VEHICLE_AVAILABLE :{BLACK}Desativado porque atualmente não existem veículos disponíveis para esta infraestrutura # Rail construction toolbar STR_RAIL_TOOLBAR_RAILROAD_CONSTRUCTION_CAPTION :Construção de Ferrovia STR_RAIL_TOOLBAR_ELRAIL_CONSTRUCTION_CAPTION :Construção de Ferrovia Eletrificada STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Construção de Monotrilho -STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Construção de MagLev +STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Construção de Maglev STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Construir ferrovia. Ctrl+Clique para remover a ferrovia. Pressione também Shift para só mostrar o custo estimado STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Construir ferrovia usando o modo Autotrilho. Ctrl+Clique para remover seção da ferrovia. Pressione também Shift para só mostrar o custo estimado @@ -2801,7 +2801,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Converte STR_RAIL_NAME_RAILROAD :Ferrovia STR_RAIL_NAME_ELRAIL :Ferrovia eletrificada STR_RAIL_NAME_MONORAIL :Monotrilho -STR_RAIL_NAME_MAGLEV :MagLev +STR_RAIL_NAME_MAGLEV :Maglev # Rail depot construction window STR_BUILD_DEPOT_TRAIN_ORIENTATION_CAPTION :{WHITE}Orientação do Depósito Ferroviário @@ -2870,7 +2870,7 @@ STR_BRIDGE_TUBULAR_SILICON :Tubular, Silíc # Road construction toolbar -STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Construção de Estradas +STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Construção de Estrada STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Construção de Linha de Bonde STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Construir seção de estrada. Ctrl+Clique para remover seção da estrada. Pressione também Shift para só mostrar o custo estimado STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Construir seção de linha de bonde. Ctrl+Clique para remover seção da linha. Pressione também Shift para só mostrar o custo estimado @@ -2990,7 +2990,7 @@ STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Plantar # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Geração de Terreno -STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Colocar áreas rochosas no terreno +STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Colocar áreas rochosas na paisagem STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Definir área de deserto.{}Ctrl+Clique para remover a área de deserto STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Aumentar área do terreno para abaixar/levantar STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Diminuir área do terreno para abaixar/levantar @@ -3148,7 +3148,7 @@ STR_LAI_TREE_NAME_RAINFOREST :Floresta tropic STR_LAI_TREE_NAME_CACTUS_PLANTS :Plantas de cactos STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Estação ferroviária -STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :Hangar +STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :Hangar para aeronaves STR_LAI_STATION_DESCRIPTION_AIRPORT :Aeroporto STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Estação de caminhões STR_LAI_STATION_DESCRIPTION_BUS_STATION :Estação de ônibus @@ -3160,7 +3160,7 @@ STR_LAI_WATER_DESCRIPTION_WATER :Água STR_LAI_WATER_DESCRIPTION_CANAL :Canal STR_LAI_WATER_DESCRIPTION_LOCK :Eclusa STR_LAI_WATER_DESCRIPTION_RIVER :Rio -STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Costa ou margem +STR_LAI_WATER_DESCRIPTION_COAST_OR_RIVERBANK :Litoral ou margem STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Depósito de embarcações # Industries come directly from their industry names @@ -3192,7 +3192,7 @@ STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS :Sede de Empresa STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND :Terreno que pertence a uma empresa # About OpenTTD window -STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD... +STR_ABOUT_OPENTTD :{WHITE}Sobre o OpenTTD STR_ABOUT_ORIGINAL_COPYRIGHT :{BLACK}Direitos autorais originais {COPYRIGHT} 1995 Chris Sawyer, Todos os direitos reservados STR_ABOUT_VERSION :{BLACK}OpenTTD versão {REV} STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} A equipe do OpenTTD @@ -3264,7 +3264,7 @@ STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Abrir ma STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Salvar mapa de altitudes STR_SAVELOAD_HOME_BUTTON :{BLACK}Acessar o diretório padrão atual onde salvar/abrir jogos STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} livres -STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lista de unidades, diretórios e arquivos de jogos gravados +STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lista de unidades, diretórios e arquivos de jogos salvos STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Nome selecionado para salvar o jogo STR_SAVELOAD_DELETE_BUTTON :{BLACK}Apagar STR_SAVELOAD_DELETE_TOOLTIP :{BLACK}Excluir o jogo salvo selecionado @@ -3306,7 +3306,7 @@ STR_MAPGEN_SNOW_COVERAGE :{BLACK}Cobertur STR_MAPGEN_SNOW_COVERAGE_UP :{BLACK}Aumentar a cobertura de neve em dez por cento STR_MAPGEN_SNOW_COVERAGE_DOWN :{BLACK}Diminuir a cobertura de neve em dez por cento STR_MAPGEN_SNOW_COVERAGE_TEXT :{BLACK}{NUM}% -STR_MAPGEN_DESERT_COVERAGE :{BLACK}Cobertura do deserto: +STR_MAPGEN_DESERT_COVERAGE :{BLACK}Cobertura de deserto: STR_MAPGEN_DESERT_COVERAGE_UP :{BLACK}Aumentar a cobertura de deserto em dez por cento STR_MAPGEN_DESERT_COVERAGE_DOWN :{BLACK}Diminuir a cobertura de deserto em dez por cento STR_MAPGEN_DESERT_COVERAGE_TEXT :{BLACK}{NUM}% @@ -3370,8 +3370,8 @@ STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura do pico mais elevado STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais elevado -STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com neve (em %) -STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura com deserto (em %) +STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura de neve (em %) +STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura de deserto (em %) STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Alterar o ano de início # SE Map generation @@ -3441,7 +3441,7 @@ STR_NEWGRF_SETTINGS_FIND_MISSING_CONTENT_TOOLTIP :{BLACK}Verifica STR_NEWGRF_SETTINGS_FILENAME :{BLACK}Nome do arquivo: {SILVER}{STRING} STR_NEWGRF_SETTINGS_GRF_ID :{BLACK}GRF ID: {SILVER}{STRING} STR_NEWGRF_SETTINGS_VERSION :{BLACK}Versão: {SILVER}{NUM} -STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Versão mínima compatível: {SILVER}{NUM} +STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Versão mín. compatível: {SILVER}{NUM} STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}Soma MD5: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paleta: {SILVER}{STRING} STR_NEWGRF_SETTINGS_PALETTE_DEFAULT :Padrão (D) @@ -3460,14 +3460,14 @@ STR_NEWGRF_SETTINGS_INCOMPATIBLE :{RED}Incompatí STR_SAVE_PRESET_CAPTION :{WHITE}Salvar predefinição STR_SAVE_PRESET_LIST_TOOLTIP :{BLACK}Lista de predefinições disponíveis, selecione uma para copiar o nome e usar na gravação abaixo STR_SAVE_PRESET_TITLE :{BLACK}Digitar um nome para a predefinição -STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Nome que está selecionado para a gravação da predefinição +STR_SAVE_PRESET_EDITBOX_TOOLTIP :{BLACK}Nome que está selecionado para salvar a predefinição STR_SAVE_PRESET_CANCEL :{BLACK}Cancelar STR_SAVE_PRESET_CANCEL_TOOLTIP :{BLACK}Não alterar a predefinição STR_SAVE_PRESET_SAVE :{BLACK}Salvar STR_SAVE_PRESET_SAVE_TOOLTIP :{BLACK}Salvar a predefinição com o nome selecionado # NewGRF parameters window -STR_BASEGRF_PARAMETERS_CAPTION :{WHITE}Alterar parâmetros dos gráficos base +STR_BASEGRF_PARAMETERS_CAPTION :{WHITE}Alterar parâmetros dos gráficos básicos STR_NEWGRF_PARAMETERS_CAPTION :{WHITE}Alterar parâmetros de NewGRF STR_NEWGRF_PARAMETERS_CLOSE :{BLACK}Fechar STR_NEWGRF_PARAMETERS_RESET :{BLACK}Restaurar @@ -3879,7 +3879,7 @@ STR_FINANCES_INFRASTRUCTURE_BUTTON :{BLACK}Infraest STR_COMPANY_VIEW_CAPTION :{WHITE}{COMPANY} {BLACK}{COMPANY_NUM} STR_COMPANY_VIEW_PRESIDENT_MANAGER_TITLE :{WHITE}{PRESIDENT_NAME}{}{GOLD}(Presidente) -STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Inauguração: {WHITE}{NUM} +STR_COMPANY_VIEW_INAUGURATED_TITLE :{GOLD}Inaugurada: {WHITE}{NUM} STR_COMPANY_VIEW_COLOUR_SCHEME_TITLE :{GOLD}Esquema de Cores: STR_COMPANY_VIEW_VEHICLES_TITLE :{GOLD}Veículos: STR_COMPANY_VIEW_TRAINS :{WHITE}{COMMA} tre{P m ns} @@ -4056,7 +4056,7 @@ STR_GROUP_OCCUPANCY_VALUE :{NUM}% STR_BUY_VEHICLE_TRAIN_RAIL_CAPTION :Novos Veículos Ferroviários STR_BUY_VEHICLE_TRAIN_ELRAIL_CAPTION :Novos Veículos Ferroviários Elétricos STR_BUY_VEHICLE_TRAIN_MONORAIL_CAPTION :Novos Veículos Monotrilho -STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Novos Veículos MagLev +STR_BUY_VEHICLE_TRAIN_MAGLEV_CAPTION :Novos Veículos Maglev STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :Novos Veículos Rodoviários STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :Novos Bondes @@ -4239,16 +4239,16 @@ STR_DEPOT_VEHICLE_ORDER_LIST_SHIP_TOOLTIP :{BLACK}Obter um STR_DEPOT_VEHICLE_ORDER_LIST_AIRCRAFT_TOOLTIP :{BLACK}Obter uma lista de todas as aeronaves com qualquer hangar deste aeroporto em suas ordens ###length VEHICLE_TYPES -STR_DEPOT_MASS_STOP_DEPOT_TRAIN_TOOLTIP :{BLACK}Clique para todos os trens pararem dentro do depósito -STR_DEPOT_MASS_STOP_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Clique para todos os veículos pararem dentro do depósito -STR_DEPOT_MASS_STOP_DEPOT_SHIP_TOOLTIP :{BLACK}Clique para todos as embarcações pararem dentro do depósito -STR_DEPOT_MASS_STOP_HANGAR_TOOLTIP :{BLACK}Clique para todas as aeronaves pararem dentro do hangar +STR_DEPOT_MASS_STOP_DEPOT_TRAIN_TOOLTIP :{BLACK}Clique para parar todos os trens dentro do depósito +STR_DEPOT_MASS_STOP_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Clique para parar todos os veículos dentro do depósito +STR_DEPOT_MASS_STOP_DEPOT_SHIP_TOOLTIP :{BLACK}Clique para parar todos as embarcações dentro do depósito +STR_DEPOT_MASS_STOP_HANGAR_TOOLTIP :{BLACK}Clique para parar todas as aeronaves dentro do hangar ###length VEHICLE_TYPES -STR_DEPOT_MASS_START_DEPOT_TRAIN_TOOLTIP :{BLACK}Clique para todos os trens saírem do depósito -STR_DEPOT_MASS_START_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Clique para todos os veículos saírem do depósito -STR_DEPOT_MASS_START_DEPOT_SHIP_TOOLTIP :{BLACK}Clique para todas as embarcações saírem do depósito -STR_DEPOT_MASS_START_HANGAR_TOOLTIP :{BLACK}Clique para todas as aeronaves saírem do hangar +STR_DEPOT_MASS_START_DEPOT_TRAIN_TOOLTIP :{BLACK}Clique para iniciar todos os trens do depósito +STR_DEPOT_MASS_START_DEPOT_ROAD_VEHICLE_TOOLTIP :{BLACK}Clique para iniciar todos os veículos do depósito +STR_DEPOT_MASS_START_DEPOT_SHIP_TOOLTIP :{BLACK}Clique para iniciar todas as embarcações do depósito +STR_DEPOT_MASS_START_HANGAR_TOOLTIP :{BLACK}Clique para iniciar todas as aeronaves do hangar STR_DEPOT_DRAG_WHOLE_TRAIN_TO_SELL_TOOLTIP :{BLACK}Arraste a locomotiva até aqui para vender todo o trem STR_DEPOT_SELL_CONFIRMATION_TEXT :{YELLOW}Você está prestes a vender todos os veículos do depósito. Tem certeza? @@ -4273,7 +4273,7 @@ STR_ENGINE_PREVIEW_TEXT4 :{BLACK}{STRING} STR_ENGINE_PREVIEW_COST_WEIGHT :Custo: {CURRENCY_LONG} Peso: {WEIGHT_SHORT} STR_ENGINE_PREVIEW_COST_MAX_SPEED :Custo: {CURRENCY_LONG} Velocidade máx.: {VELOCITY} STR_ENGINE_PREVIEW_SPEED_POWER :Velocidade: {VELOCITY} Potência: {POWER} -STR_ENGINE_PREVIEW_SPEED_POWER_MAX_TE :Velocidade: {VELOCITY} Potência: {POWER} Força de Tração máx.: {FORCE} +STR_ENGINE_PREVIEW_SPEED_POWER_MAX_TE :Velocidade: {VELOCITY} Potência: {POWER} Tração máx.: {FORCE} STR_ENGINE_PREVIEW_TYPE :Tipo de aeronave: {STRING} STR_ENGINE_PREVIEW_TYPE_RANGE :Tipo de aeronave: {STRING} Autonomia: {COMMA} quadrados STR_ENGINE_PREVIEW_RUNCOST_YEAR :Custo de Operação: {CURRENCY_LONG}/ano @@ -4389,7 +4389,7 @@ STR_VEHICLE_STATUS_WAITING_UNBUNCHING :{LTBLUE}Aguarda STR_VEHICLE_STATUS_CRASHED :{RED}Acidentado! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Quebrado STR_VEHICLE_STATUS_STOPPED :{RED}Parado -STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Parando, {VELOCITY} +STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}{VELOCITY} - Parando STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Sem energia STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Aguardando por caminho livre STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Muito distante do próximo destino @@ -4497,7 +4497,7 @@ STR_VEHICLE_DETAILS_TRAIN_TOTAL_CARGO_TOOLTIP :{BLACK}Mostrar STR_VEHICLE_DETAILS_TRAIN_ARTICULATED_RV_CAPACITY :{BLACK}Capacidade: {LTBLUE} # Vehicle refit -STR_REFIT_CAPTION :{WHITE}{VEHICLE} (Adaptar) +STR_REFIT_CAPTION :{WHITE}{VEHICLE} (Adaptação) STR_REFIT_TITLE :{GOLD}Selecionar tipo de carga a ser transportada: STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nova capacidade: {GOLD}{CARGO_LONG}{}{BLACK}Custo de adaptação: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Nova capacidade: {GOLD}{CARGO_LONG}{}{BLACK}Receita com a adaptação: {GREEN}{CURRENCY_LONG} @@ -4900,9 +4900,9 @@ STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Receita STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Gravação ainda sendo executada,{}por favor aguarde até terminar! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Salvamento automático falhou STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Não é possível ler a unidade -STR_ERROR_GAME_SAVE_FAILED :{WHITE}Não foi possível salvar o jogo{}{STRING} +STR_ERROR_GAME_SAVE_FAILED :{WHITE}Salvar Jogo Falhou{}{STRING} STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Não é possível apagar o arquivo -STR_ERROR_GAME_LOAD_FAILED :{WHITE}Não foi possível abrir o jogo{}{STRING} +STR_ERROR_GAME_LOAD_FAILED :{WHITE}Abrir Jogo Falhou{}{STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Erro interno: {STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Jogo salvo está corrompido - {STRING} STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :Jogo salvo foi feito com uma versão mais recente @@ -4946,13 +4946,13 @@ STR_ERROR_MESSAGE_CAPTION :{YELLOW}Mensage STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}Mensagem de {STRING} # Generic construction errors -STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Fora dos limites do mapa +STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Fora do mapa STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP :{WHITE}Muito perto da borda do mapa STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Dinheiro insuficiente - é necessário {CURRENCY_LONG} STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}É necessário terreno plano STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Terreno inclinado na direção errada STR_ERROR_CAN_T_DO_THIS :{WHITE}Não é possível fazer isto... -STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}O imóvel deve ser demolido primeiro +STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}A construção deve ser demolida primeiro STR_ERROR_CAN_T_CLEAR_THIS_AREA :{WHITE}Não é possível limpar esta área... STR_ERROR_SITE_UNSUITABLE :{WHITE}... local inadequado STR_ERROR_ALREADY_BUILT :{WHITE}... já construído @@ -4967,8 +4967,8 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Não é # Local authority errors STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}A autoridade local de {TOWN} recusa-se a permitir isso -STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}A autoridade local de {TOWN} não permite a construção de outro aeroporto nesta localidade -STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}A autoridade local de {TOWN} não autoriza a construção do aeroporto devido à poluição sonora +STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}A autoridade local de {TOWN} recusa-se a permitir que outro aeroporto seja construído nesta localidade +STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}A autoridade local de {TOWN} não concede permissão para aeroporto devido à poluição sonora STR_ERROR_BRIBE_FAILED :{WHITE}A sua tentativa de suborno foi descoberta por um investigador regional # Levelling errors @@ -5025,8 +5025,8 @@ STR_ERROR_CAN_ONLY_BE_BUILT_NEAR_TOWN_CENTER :{WHITE}... só STR_ERROR_CAN_ONLY_BE_BUILT_IN_LOW_AREAS :{WHITE}... só pode ser construído em áreas baixas STR_ERROR_CAN_ONLY_BE_POSITIONED :{WHITE}... só pode ser colocado perto das bordas do mapa STR_ERROR_FOREST_CAN_ONLY_BE_PLANTED :{WHITE}... floresta só pode ser plantada acima da linha de neve -STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só pode ser construído acima da linha da neve -STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só pode ser construído abaixo da linha da neve +STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só pode ser construído acima da linha de neve +STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só pode ser construído abaixo da linha de neve STR_ERROR_PROSPECTING_WAS_UNLUCKY :{WHITE}O financiamento falhou em prospectar devido ao azar; tente novamente STR_ERROR_NO_SUITABLE_PLACES_FOR_PROSPECTING :{WHITE}Não havia locais adequados para prospectar por esta indústria diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 3aa4f20c61..144d89d38b 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Tilpas til {ST STR_ORDER_REFIT_STOP_ORDER :(Tilpas til {STRING} og stop) STR_ORDER_STOP_ORDER :(Stop) -STR_ORDER_WAIT_TO_UNBUNCH :(vent med at pakke ud) +STR_ORDER_WAIT_TO_UNBUNCH :(vent med at afkoble) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Kan ikke bruge station){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index caff3cc9e7..b2c3a9f219 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -289,7 +289,7 @@ STR_TOOLTIP_RESIZE :{BLACK}Napsauta STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Suurenna/pienennä ikkuna STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Vierityspalkki – luettelon vieritys ylös/alas STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Vierityspalkki – luettelon vieritys vasemmalle/oikealle -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Tuhoa rakennuksia jne. ruudulta. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Tuhoa rakennuksia jne. ruudulta. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion # Show engines button ###length VEHICLE_TYPES @@ -397,7 +397,7 @@ STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Avaa teo STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Avaa luettelo yhtiön junista. Ctrl+napsautus näyttää tai piilottaa kulkuneuvoryhmät päinvastoin kuin valitussa asetuksessa. STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Avaa luettelo yhtiön ajoneuvoista. Ctrl+napsautus näyttää tai piilottaa ajoneuvoryhmät päinvastoin kuin valitussa asetuksessa STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Avaa luettelo yhtiön laivoista. Ctrl+napsautus näyttää tai piilottaa kulkuneuvoryhmät, päinvastoin kuin valitussa asetuksessa -STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Näytä luettelo yhtiön ilma-aluksista. Ctrl+napsautus näyttääksesi näyttää tai piilottaa ajoneuvoryhmiä, päinvastoin kuin valitussa asetuksessa +STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_AIRCRAFT :{BLACK}Näytä luettelo yhtiön ilma-aluksista. Ctrl+napsautus näyttää tai piilottaa kulkuneuvoryhmät päinvastoin kuin valitussa asetuksessa STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_IN :{BLACK}Lähennä STR_TOOLBAR_TOOLTIP_ZOOM_THE_VIEW_OUT :{BLACK}Loitonna STR_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Rakenna rautatieinfrastruktuuria @@ -424,9 +424,9 @@ STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Kuntien STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Rakenna tai luo teollisuutta STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Tieinfrastruktuurin rakentaminen STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Raitiotieinfrastruktuurin rakentaminen -STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Istuta puita. Ctrl+napsautus+veto valitaksesi alueen vinottain. Painettaessa Shift näyttää vain kustannusarvion +STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Istuta puita. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Sijoita kyltti -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Sijoita objekti. Ctrl+napsautus+vedä valitsee alueen vinottain. Painettaessa Shit näyttää vain kustannusarvion +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Sijoita objekti. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion # Scenario editor file menu ###length 7 @@ -920,7 +920,7 @@ STR_NEWS_STATION_NOW_ACCEPTS_CARGO_LIST :{WHITE}{STATION STR_NEWS_OFFER_OF_SUBSIDY_EXPIRED :{BIG_FONT}{BLACK}Tukitarjous päättynyt:{}{}{STRING} välillä {STRING} – {STRING} ei enää tulla tukemaan STR_NEWS_SUBSIDY_WITHDRAWN_SERVICE :{BIG_FONT}{BLACK}Tuki vedetty pois:{}{}{STRING} välillä {STRING}-{STRING} ei enää tueta -STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Tuki tarjolla:{}{}Paikallisviranomaiset tukevat ensimmäistä {STRING} välillä {STRING} – {STRING} {UNITS_YEARS_OR_MINUTES}! +STR_NEWS_SERVICE_SUBSIDY_OFFERED :{BIG_FONT}{BLACK}Tuki tarjolla:{}{}{STRING} välillä {STRING} – {STRING} ensimmäisenä kuljettava yhtiö saa kunnalta tuen, jonka kesto on {UNITS_YEARS_OR_MINUTES}! ###length 4 STR_NEWS_SERVICE_SUBSIDY_AWARDED_HALF :{BIG_FONT}{BLACK}{STRING} sai tuen!{}{}{STRING} välillä {STRING} – {STRING} tuottaa puolitoistakertaisesti seuraavat {UNITS_YEARS_OR_MINUTES}! STR_NEWS_SERVICE_SUBSIDY_AWARDED_DOUBLE :{BIG_FONT}{BLACK}{STRING} sai tuen!{}{}{STRING} välillä {STRING} – {STRING} tuottaa kaksinkertaisesti seuraavat {UNITS_YEARS_OR_MINUTES}! @@ -1180,10 +1180,10 @@ STR_DISASTER_REDUCED :Vähennetty STR_DISASTER_NORMAL :Tavallinen ###length 4 -STR_SUBSIDY_X1_5 :x1.5 -STR_SUBSIDY_X2 :x2 -STR_SUBSIDY_X3 :x3 -STR_SUBSIDY_X4 :x4 +STR_SUBSIDY_X1_5 :× 1,5 +STR_SUBSIDY_X2 :× 2 +STR_SUBSIDY_X3 :× 3 +STR_SUBSIDY_X4 :× 4 ###length 4 STR_CLIMATE_TEMPERATE_LANDSCAPE :lauhkea maasto @@ -1677,7 +1677,7 @@ STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT :Valitse tapa, j STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED :Pois käytöstä STR_CONFIG_SETTING_OSK_ACTIVATION_DOUBLE_CLICK :Kaksoisnapsautus STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK_FOCUS :Yksi napsautus (kun kohdistettuna) -STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Yksi napsautus (välitön) +STR_CONFIG_SETTING_OSK_ACTIVATION_SINGLE_CLICK :Yksi napsautus (välittömästi) STR_CONFIG_SETTING_USE_RELAY_SERVICE :Käytä välityspalvelua: {STRING} STR_CONFIG_SETTING_USE_RELAY_SERVICE_HELPTEXT :Jos yhteyden muodostaminen palvelimeen epäonnistuu, yhteys voidaan muodostaa välityspalvelun kautta. ”Ei koskaan” estää tämän, ”kysy” kysyy ensin, ”salli” sallii kysymättä. @@ -2787,15 +2787,15 @@ STR_RAIL_TOOLBAR_MONORAIL_CONSTRUCTION_CAPTION :Yksiraiteisen r STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Maglevin rakentaminen STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Rakenna rautatietä. Ctrl+napsautus poistaa rautatietä. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Rakenna rautatietä automaattisesti valittuun suuntaan. Ctrl+napsautus poistaaksesi rautatietä. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Rakenna rautatietä automaattisesti valittuun suuntaan. Ctrl+napsautus poistaaksesi rautatietä. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Rakenna junavarikko (junien ostamista ja huoltoa varten). Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Rakenna reittipiste rautatielle. Ctrl+napsautus valitsee toisen reittipisteen, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Rakenna rautatieasema. Ctrl+napsautus valitsee toisen aseman, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Rakenna opastin rautatielle. Ctrl+napsautus rakentaa vaihtoehtoista opastintyyliä{}Napsautus+veto täyttää valitun rataosuuden opastimilla määrätyin välein. Ctrl+napsautus+veto täyttää seuraavaan risteykseen, asemaan tai opastimeen asti. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Rakenna rautatiesilta. Painettaessa Shift näyttää vain kustannusarvion +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Rakenna rautatiesilta. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Rakenna rautatietunneli. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Rautatien, opastimien, reittipisteiden ja asemien rakentaminen/poisto päälle/pois. Ctrl+napsautus poistaa myös reittipisteiden ja asemien raiteet -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Muunna/päivitä raidetyyppi. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Muunna tai päivitä raidetyyppi. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_RAIL_NAME_RAILROAD :Rautatie STR_RAIL_NAME_ELRAIL :Sähköistetty rautatie @@ -2871,13 +2871,13 @@ STR_BRIDGE_TUBULAR_SILICON :Putkirakenne, p # Road construction toolbar STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Tien rakentaminen STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Raitiotien rakentaminen -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Rakenna tieosuus. Ctrl+napsautus poistaa tieosuuden. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Rakenna raitiotietä. Ctrl+napsautus poistaa raitiotieosuuden. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion. -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Rakenna tieosuus automaattisesti valittuun suuntaan. Ctrl vaihtaa rakennus-/poistotilan välillä. Shift vaihtaa rakennustilan ja kustannusarvion välillä -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Rakenna raitiotieosuus automaattisesti valittuun suuntaan. Ctrl+napsautus poistaa raitiotieosuuden. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Rakenna ajoneuvovarikko (ajoneuvojen ostamista ja huoltoa varten). Painettaessa Shift näyttää vain kustannusarvion -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Rakenna raitiotievarikko (vaunujen ostamiseen ja korjaamiseen). Painettaessa Shift näyttää vain kustannusarvion -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Rakenna linja-autoasema. Ctrl+napsautus liittää asemat. Painettaessa Shift näyttää vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Rakenna tieosuus. Ctrl+napsautus poistaa tieosuuden. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Rakenna raitiotietä. Ctrl+napsautus poistaa raitiotieosuuden. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Rakenna tieosuus automaattisesti valittuun suuntaan. Ctrl+napsautus poistaa tieosuuden. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Rakenna raitiotieosuus automaattisesti valittuun suuntaan. Ctrl+napsautus poistaa raitiotieosuuden. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Rakenna ajoneuvovarikko (ajoneuvojen ostamista ja huoltoa varten). Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Rakenna raitiovaunuvarikko (vaunujen ostamista ja huoltoa varten). Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Rakenna linja-autoasema. Ctrl+napsautus valitsee toisen aseman, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Rakenna raitiotien matkustaja-asema. Ctrl+napsautus valitsee toisen aseman, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Rakenna lastauslaituri. Ctrl+napsautus valitsee toisen aseman, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Rakenna raitiotien rahtiasema. Ctrl+napsautus valitaksesi toisen aseman, johon haluat tämän liitettävän. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. @@ -2885,11 +2885,11 @@ STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Ota yksi STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Rakenna maantiesilta. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Rakenna raitiotiesilta. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Rakenna maantietunneli. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Rakenna raitiotietunneli. Painettaessa Shift näyttää vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Rakenna raitiotietunneli. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Tien rakentaminen/siirtäminen päälle/pois STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Vaihda raitiotien rakentamisen ja purkamisen välillä STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Muunna tai päivitä tien tyyppi. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. -STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Muunna tai päivitä raitiotien tyyppi. Painettaessa Shift näyttää vain kustannusarvion +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Muunna tai päivitä raitiotien tyyppi. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_ROAD_NAME_ROAD :Tie STR_ROAD_NAME_TRAM :Raitiotie @@ -2958,14 +2958,14 @@ STR_STATION_BUILD_NOISE :{BLACK}Aiheutet # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Maastonmuokkaus -STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Laske maaruudun kulmaa. Napsautus+veto laskee ensimmäisenä valittua kulmaa ja tasaa valitun alueen tämän kulman uudelle korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Nosta maaruudun kulmaa. Napsautus+veto nostaa ensimmäisenä valittua kulmaa ja tasaa valitun alueen tämän kulman uudelle korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Tasoita maata ensimmäisen valitun kulman korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Painettaessa Shift näyttää vain kustannusarvion +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Laske maaruudun kulmaa. Napsautus+veto laskee ensimmäisenä valittua kulmaa ja tasaa valitun alueen tämän kulman uudelle korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Nosta maaruudun kulmaa. Napsautus+veto nostaa ensimmäisenä valittua kulmaa ja tasaa valitun alueen tämän kulman uudelle korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Tasoita maata ensimmäisen valitun kulman korkeudelle. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Osta maata tulevaa käyttöä varten. Ctrl+napsautus+veto valitsee alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Objektin valinta -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Valitse rakennettava objekti. Ctrl+napsautus+veto valitaksesi alueen vinottain. Painettaessa Shift näyttää vain kustannusarvion +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Valitse rakennettava objekti. Ctrl+napsautus+veto valitaksesi alueen vinottain. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Valitse rakennettavan objektin luokka STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Objektin esikatselu STR_OBJECT_BUILD_SIZE :{BLACK}Koko: {GOLD}{NUM}×{NUM} ruutua @@ -3685,7 +3685,7 @@ STR_GOALS_TEXT :{ORANGE}{STRING STR_GOALS_NONE :{ORANGE}- Ei mitään - STR_GOALS_PROGRESS :{ORANGE}{STRING} STR_GOALS_PROGRESS_COMPLETE :{GREEN}{STRING} -STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Keskitä päänäkymä laitokseen/kuntaan/ruutuun napsauttamalla tavoitetta. Ctrl+napsautus avaa uuden näkymäikkunan laitoksen/kunnan/ruudun sijaintiin. +STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Keskitä päänäkymä laitokseen/kuntaan/ruutuun napsauttamalla tavoitetta. Ctrl+napsautus avaa uuden näkymäikkunan laitoksen/kunnan/ruudun sijaintiin # Goal question window STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}Kysymys @@ -3720,8 +3720,8 @@ STR_SUBSIDIES_OFFERED_TITLE :{BLACK}Tarjotut STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING} välille {STRING} – {STRING}{YELLOW} ({STRING}) STR_SUBSIDIES_NONE :{ORANGE}- Ei mitään - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Käytetyt tuet: -STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} kohteesta {STRING} kohteeseen {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Napsauta kuljetusyhteyttä keskittääksesi päänäkymän tuotantolaitokseen tai kuntaan. Ctrl+napsautus avaa uuden näkymäikkunan laitoksen tai kunnan sijaintiin. +STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} välillä {STRING} – {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Napsauta kuljetusyhteyttä keskittääksesi päänäkymän tuotantolaitokseen tai kuntaan. Ctrl+napsautus avaa uuden näkymäikkunan laitoksen tai kunnan sijaintiin STR_SUBSIDIES_OFFERED_EXPIRY_DATE :viimeistään {DATE_SHORT} STR_SUBSIDIES_OFFERED_EXPIRY_TIME :jäljellä {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :{DATE_SHORT} asti @@ -4120,15 +4120,15 @@ STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Osta ja ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu raideliikenneväline. Vaihto+napsautus näyttää vain kustannusarvion -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu ajoneuvo. Painettaessa Shift näyyää vain kustannusarvion. -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu laiva. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu ilma-alus. Painettaessa Shift näyttää vain kustannusarvion +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu ajoneuvo. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu laiva. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Osta valittu ilma-alus. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu raideliikenneväline. Painettaessa Shift näyttää vain kustannusarvion +STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu raideliikenneväline. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu ajoneuvo. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion -STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu laiva. Paina lisäksi vaihtonäppäintä näyttääksesi vain kustannusarvion -STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu ilma-alus. Shift+napsautus näyttää vain kustannusarvion +STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu laiva. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion +STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Osta ja sovita valittu ilma-alus. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Nimeä @@ -4221,7 +4221,7 @@ STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Kloonaa ###length VEHICLE_TYPES STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Osta kopio junasta kaikkine vaunuineen. Napsauta tätä painiketta ja sen jälkeen junaa varikon sisä- tai ulkopuolella. Ctrl+napsautus jakaa käskyt. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Tämä ostaa kopion ajoneuvosta. Napsauta tätä painiketta ja sen jälkeen ajoneuvoa varikon sisä- tai ulkopuolella. Ctrl+napsautus jakaa käskyt. Painettaessa Shift näyttää vain kustannusarvion +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Tämä ostaa kopion ajoneuvosta. Napsauta tätä painiketta ja sen jälkeen ajoneuvoa varikon sisä- tai ulkopuolella. Ctrl+napsautus jakaa käskyt. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Osta laivan kopio. Napsauta tätä painiketta ja sitten laivaa telakan sisä- tai ulkopuolella. Ctrl+napsautus jakaa komennot. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Osta ilma-aluksen kopio. Napsauta tätä painiketta ja sitten ilma-alusta lentokonehallin sisä- tai ulkopuolella. Ctrl+napsautus jakaa komennot. Paina lisäksi vaihtonäppäintä nähdäksesi vain kustannusarvion. @@ -4365,9 +4365,9 @@ STR_VEHICLE_VIEW_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Sovita i ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_ORDERS_TOOLTIP :{BLACK}Näytä junan käskyt. Ctrl+napsautus näyttää junan aikataulun. -STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Näytä ajoneuvon käskyt. Ctrl+napsautus näyttää ajoneuvon aikataulun. -STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Näytä laivan käskyt. Ctrl+Click näyttää laivan aikataulun -STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Näytä ilma-aluksen käskyt. Ctrl+napsautus näyttää ilma-aluksen aikataulun. +STR_VEHICLE_VIEW_ROAD_VEHICLE_ORDERS_TOOLTIP :{BLACK}Näytä ajoneuvon käskyt. Ctrl+napsautus näyttää ajoneuvon aikataulun +STR_VEHICLE_VIEW_SHIP_ORDERS_TOOLTIP :{BLACK}Näytä laivan käskyt. Ctrl+napsautus näyttää laivan aikataulun +STR_VEHICLE_VIEW_AIRCRAFT_ORDERS_TOOLTIP :{BLACK}Näytä ilma-aluksen käskyt. Ctrl+napsautus näyttää ilma-aluksen aikataulun ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_SHOW_DETAILS_TOOLTIP :{BLACK}Näytä junan tiedot diff --git a/src/lang/french.txt b/src/lang/french.txt index 24d5f06f59..88351d273f 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -4644,7 +4644,7 @@ STR_ORDER_REFIT_ORDER :(Réaménager p STR_ORDER_REFIT_STOP_ORDER :(Réaménager pour {STRING} et arrêt) STR_ORDER_STOP_ORDER :(Arrêt) -STR_ORDER_WAIT_TO_UNBUNCH :(attendre la répartition) +STR_ORDER_WAIT_TO_UNBUNCH :(Attendre la répartition) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Station inutilisable){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 6a34cdf651..b9b503ba75 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -4644,7 +4644,7 @@ STR_ORDER_REFIT_ORDER :(Adaptar para { STR_ORDER_REFIT_STOP_ORDER :(Adaptar para {STRING} e parar) STR_ORDER_STOP_ORDER :(Parar) -STR_ORDER_WAIT_TO_UNBUNCH :(esperar por desagrupar) +STR_ORDER_WAIT_TO_UNBUNCH :(Esperar por desagrupar) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Não pode usar a estação){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 0fff9c160c..17a7d092ea 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -527,7 +527,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Пока STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Покаже список завдань STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Показати графіки компаній і тарифи доставки вантажів STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Покаже таблицю компаній -STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Фінансувати будівництво нової промисловості +STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Показує перелік підприємств, ланцюг підприємств або фінансування будівництва нової промисловості STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Показує список поїздів компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Показує список дорожнього транспорту компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Показати список кораблів компанії. Ctrl+клац показує або приховує групи, протилежно до обраного налаштування @@ -554,7 +554,7 @@ STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD :{BLACK}Пере STR_SCENEDIT_TOOLBAR_TOOLTIP_SET_DATE :{BLACK}Натисніть, щоб ввести рік початку STR_SCENEDIT_TOOLBAR_TOOLTIP_DISPLAY_MAP_TOWN_DIRECTORY :{BLACK}Показати мапу, додаткове вікно, список позначок, або перелік міст чи підприємств STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Відкрити меню створення ландшафту або нового світу -STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Створення міст +STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Будування або створення міст STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Створення або будування виробництва STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Будівництво дорожньої інфраструктури STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Будівництво трамвайних колій @@ -1470,7 +1470,7 @@ STR_CONFIG_SETTING_CATCHMENT :Більш ре STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :При включенні розмір зони покриття станції залежить від її типу та розміру STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Підприємства з власними станціями обслуговують станції гравців: {STRING} -STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Якщо увімкнено - підприємства, що мають власні станції завантаження (наприклад, нафтові платформ), зможуть обслуговуватися також і збудованими поруч станціями гравців.{}При відключенні - підприємства будуть виконувати завантаження тільки через свої внутрішні станції, а ці станції будуть обслуговувати лише своє підприємство. +STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Якщо увімкнено підприємства, що мають власні станції завантаження (наприклад, нафтові платформ), зможуть обслуговуватися також і збудованими поруч станціями гравців. При відключенні підприємства будуть виконувати завантаження тільки через свої внутрішні станції, а ці станції будуть обслуговувати лише своє підприємство. STR_CONFIG_SETTING_EXTRADYNAMITE :Дозволити видаляти більше міських будівель: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :При включенні видалення міських будівель та інфраструктури стає біль простішим @@ -1712,7 +1712,7 @@ STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Оберіть STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Грубість ландшафту: {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(Тільки для TerraGenesis) Оберіть частоту пагорбів: Плавний пейзаж має менше пагорбів, вони менш круті. Грубий ландшафт має багато пагорбів, що можуть повторюватись один за одним +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :Оберіть форму і кількість пагорбів. Плавний пейзаж має менше пагорбів, вони менш круті. Грубий ландшафт має багато малих пагорбів ###length 4 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :дуже плавно STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :плавно @@ -1977,7 +1977,7 @@ STR_CONFIG_SETTING_NOSERVICE :Не відпр STR_CONFIG_SETTING_NOSERVICE_HELPTEXT :Включення цієї опції дозволяє не проводити автоматичний техогляд у разі, якщо поломки транспорту вимкнено. STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY :Зменшення швидкості завантаження потягів, які довші за станцію: {STRING} -STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Якщо увімкнуто, потяги довші за станцію завантажуються значно повільніше, ніж потяги які вміщуються на станції. Налаштування не впливає на пошук шляху. +STR_CONFIG_SETTING_STATION_LENGTH_LOADING_PENALTY_HELPTEXT :Якщо увімкнуто, потяги довші за станцію завантажуються значно повільніше, ніж потяги які вміщуються на станції. Налаштування не впливає на пошук шляху STR_CONFIG_SETTING_WAGONSPEEDLIMITS :Враховувати обмеження швидкості вагонів: {STRING} STR_CONFIG_SETTING_WAGONSPEEDLIMITS_HELPTEXT :При включенні максимальна швидкість потяга враховує обмеження швидкості вагонів. @@ -2048,7 +2048,7 @@ STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Ніколи STR_CONFIG_SETTING_ECONOMY_TYPE :Тип економіки: {STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Плавна економіка здійснює часті зміни обсягів виробництва малими порціями. Заморожена економіка не допускає зміни обсягів виробництва і закриття підприємств. Це налаштування може не працювати, якщо використовується підприємства з NewGRF. +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Плавна економіка здійснює часті зміни обсягів виробництва малими порціями. Заморожена економіка не допускає зміни обсягів виробництва і закриття підприємств. Це налаштування може не працювати, якщо використовуються підприємства з NewGRF. ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Оригінальна STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Плавно @@ -2173,13 +2173,13 @@ STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Час між STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Час між перерозрахунками компонента графа зв'язків. На початку перерозрахунку утворюється з'єднання, яке існує обраний час. Чим менше це значення, тим більша вірогідність, що з'єднання розірветься раніше очікуваного, після чого гра зупиниться. Чим більше це значення, тим довше обраховуватиметься розподілення вантажів при зміні маршрутів STR_CONFIG_SETTING_DISTRIBUTION_PAX :Режим розподілу для пасажирів: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :В "симетричному" режимі від станції A до станції B відправлятиметься приблизно стільки ж пасажирів, як від B до A. В "асиметричному" режимі дозволяється відправляти довільну кількість пасажирів в обох напрямках. Ручний режим означає, що розподіл пасажирів не здійснюватиметься автоматично. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :В "симетричному" режимі від станції A до станції Б відправлятиметься приблизно стільки ж пасажирів, як від 0Ю до A. В "асиметричному" режимі дозволяється відправляти довільну кількість пасажирів в обох напрямках. Ручний режим означає, що розподіл пасажирів не здійснюватиметься автоматично STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Режим розподілу для пошти: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж пошти, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість пошти в обох напрямках. Ручний режим означає, що розподіл пошти не здійснюватиметься автоматично. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :В "симетричному" режимі від станції A до станції Б надсилатиметься приблизно стільки ж пошти, як від Б до A. В "асиметричному" режимі дозволяється надсилати довільну кількість пошти в обох напрямках. Ручний режим означає, що розподіл пошти не здійснюватиметься автоматично STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Режим розподілу для броньованого транспорту: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :БРОНЬОВАНИЙ клас вантажу містить: коштовності — в помірному ландшафті, діаманти — в субтропічному чи золото — в субарктичному. NewGRF може змінювати це. В "симетричному" режимі від станції A до станції B надсилатиметься приблизно стільки ж вантажів, як від B до A. В "асиметричному" режимі дозволяється надсилати довільну кількість вантажів в обох напрямках. "Ручний" режим означає, що розподіл цих вантажів не здійснюватиметься автоматично. Рекомендується встановити "асиметричний" або "ручний" режим, якщо гра відбувається в субарктичному ландшафті, тому що банки не надсилають золото назад до шахт. В помірному або субтропічному ландшафті можна також вибрати "симетричний" режим, оскільки банки будуть надсилають коштовності назад до оригінального банку у вигляді вантажу з якимись цінностями. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :БРОНЬОВАНИЙ клас вантажу: коштовності — в помірному ландшафті, діаманти — в субтропічному, золото — в субарктичному. NewGRFи можуть змінювати це налаштування. В "симетричному" режимі від станції A до станції Б надсилатиметься приблизно стільки ж вантажів, як від Б до A. В "асиметричному" режимі дозволяється надсилати довільну кількість вантажів в обох напрямках. "Ручний" режим означає, що розподіл цих вантажів не здійснюватиметься автоматично. Рекомендується встановити "асиметричний" або "ручний" режим, якщо гра відбувається в субарктичному або субтропічному ландшафтах, у яких банки тільки отримують золото. В помірному ландшафті можна також вибрати "симетричний" режим, оскільки банки будуть повертати коштовності до банку-відправника STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Режим розподілу для інших видів вантажу: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :«Асиметричний» означає можливість відправки довільної кількості вантажу в будь-якому напрямку. «Ручний» означає, неавтоматичний розподіл для цих вантажів. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :«Асиметричний» означає можливість відправки довільної кількості вантажу в будь-якому напрямку. «Ручний» означає, неавтоматичний розподіл для цих вантажів ###length 3 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :ручний STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :асиметричний @@ -2934,7 +2934,7 @@ STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Буду STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Будувати колійні сигнали. Ctrl+клац переключає семафори/світлофори{}Ctrl+протяжка будує сигнали вздовж ділянки колії з обраним проміжком. Ctrl+клац+протяжка будує сигнали до наступної стрілки, станції чи сигналу. Утримуйте Shift для показу очікуваних витрат STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Будувати залізничний міст. Утримуйте Shift для показу витрат на будівництво STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Будування тунелю. Утримуйте Shift для показу витрат на будівництво -STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будувати/демонтувати колію, сигнали, точки маршруту і станції. Утримання Ctrl також демонтує колію з точок маршрутів і станцій +STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Будування/демонтування колії, сигналів, точок маршрутів і станцій. Ctrl+клац демонтує колію з точок маршрутів і станцій STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Модернізація колії. Утримуйте Shift для показу очікуваних витрат STR_RAIL_NAME_RAILROAD :Звичайна колія @@ -3130,7 +3130,7 @@ STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Садж # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Створити ландшафт STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Розміщення кам'яних ділянок -STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Позначити територію пустелі.{}Натисніть і утримуйте CTRL, щоб скасувати +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Позначити територію пустелі.{}Ctrl+клац для видалення STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Збільшити область ділянки для підняття/опускання STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Зменшити область ділянки для підняття/опускання STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Створити випадкову ділянку @@ -3199,7 +3199,7 @@ STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Спож STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Будинки STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}Натисніть на підприємство аби побачити його постачальників та покупців STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}Натисніть на вантаж аби побачити його постачальників та покупців -STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Показати ланцюг +STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Ланцюг підпримств STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Показати виробників та споживачів STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Приєднати до мінікарти STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Ви також можете вибирати виробництво на мінікарті @@ -4243,7 +4243,7 @@ STR_CARGO_TYPE_FILTER_NONE :нема ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишею вимикає показ типу транспорту STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблів. Клацніть на корабель для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблів. Клацніть на корабель для отримання інформації. Ctrl+клац сховає показ цього типу кораблів STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список літальних апаратів. Клацніть на літальному апараті для отримання інформації. Ctrl+клац мишею сховає показ цього типу транспорту ###length VEHICLE_TYPES @@ -4265,7 +4265,7 @@ STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Купи STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Придбати обраний літальний апарат. Утримуйте Shift для показу орієнтовних витрат ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_BUY_REFIT_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 :{BLACK}Придбайте та переобладнайте виділений повітряний апарат. Утримуйте Shift, щоб побачити тільки орієнтовну вартість @@ -4361,7 +4361,7 @@ STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Клон ###length VEHICLE_TYPES STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію поїзда, включно з усіма автомобілями. Натисніть на цю кнопку, а потім на поїзд в депо або ззовні. Ctrl+клац мишею дозволить поділитися спільними завданнями. Shift+клац мишею покаже орієнтовні витрати на придбання -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Купити копію авто. Натисніть на цю кнопку і потім на авто в депо або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Купити копію дорожнього транспорту. Натисніть на цю кнопку і потім на транспорт в гаражі або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Купити копію корабля. Натисніть на цю кнопку, і потім на корабель в елінгу або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу витрат на придбання STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купити копію літака. Натисніть на цю кнопку і потім на літак в ангарі або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання @@ -4475,9 +4475,9 @@ STR_REPLACE_REMOVE_WAGON_GROUP_HELP :{STRING}. Ctrl STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_CENTER_TOOLTIP :{BLACK}Показати місце розташування потяга в центрі екрану. Подвійний клац для показу потяга в центрі екрану.Ctrl+клац мишею відкриє нове вікно у місці розташування потяга -STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}Показати транспорт у вікні. Подвійний клац для показу транспорту в центрі екрану. Ctrl+клац мишою для руху за транспортом. -STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Показати місце розташування корабля в центрі екрану. Подвійний клац для показу корабля в центрі екрану.Ctrl+клац мишою відкриє нове вікно у місці розташування корабля +STR_VEHICLE_VIEW_TRAIN_CENTER_TOOLTIP :{BLACK}Показує потяг у центрі екрану. Подвійний клац для руху за потягом у головному вікні. Ctrl+клац мишею відкриє додаткове вікно з потягом у центрі +STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}Показати транспорт у головному вікні. Подвійний клац для руху за транспортом у головному вікні. Ctrl+клац мишею відкриє додаткове вікно з транспортом у центрі +STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Показує корабель у головному вікні. Подвійний клац для руху за кораблем у головному вікні. Ctrl+клац мишею відкриє нове вікно з кораблем у центрі STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Показати авіатранспорт у центрі головного вікна. Подвійний клац для руху за авіатранспортом у головному вікні. Ctrl+клац мишою для показу авіатранспорту в додатковому вікні ###length VEHICLE_TYPES @@ -4487,10 +4487,10 @@ STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Напр STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Направити літак в ангар. Ctrl+клац тільки для техогляду ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Купити копію поїзда з усіма вагонами. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Купити копію потяга з усіма вагонами. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу витрат на придбання STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Купити копію авто. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат -STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Купити копію корабля. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання -STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Купити копію літака. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Купити копію корабля. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Купити копію літака. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Примусити проігнорувати сигнал! STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Розвернути поїзд @@ -4924,7 +4924,7 @@ STR_AI_DEBUG_MATCH_CASE :{BLACK}Регі STR_AI_DEBUG_MATCH_CASE_TOOLTIP :{BLACK}Перемкнути перевірку регістру при порівнянні рядків журналу АІ з сигнальним рядком STR_AI_DEBUG_CONTINUE :{BLACK}Продовжити STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Зняти з паузи і продовжити ШІ -STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Відобразити результати зневадження цього ШІ +STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Відобразити результати зневадження цього ШІ. Ctrl+клац мишею відкриє нове вікно з результатами STR_AI_GAME_SCRIPT :{BLACK}Ігровий скрипт STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Перевірити журнал ігрового скрипту. Ctrl+клац відкриє журнал у новому вікні From 8d312b305bccadcd53cd4c717d274cb76adc4fbf Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Fri, 29 Mar 2024 14:49:48 +0000 Subject: [PATCH 55/70] Codechange: Replace currency macros with functions. (#12396) --- src/company_gui.cpp | 2 +- src/currency.cpp | 6 ++--- src/currency.h | 24 ++++++++++++++---- src/graph_gui.cpp | 2 +- src/settings.cpp | 2 +- src/settings_gui.cpp | 60 ++++++++++++++++++++++---------------------- src/strings.cpp | 6 ++--- src/survey.cpp | 2 +- 8 files changed, 59 insertions(+), 45 deletions(-) diff --git a/src/company_gui.cpp b/src/company_gui.cpp index 253bc187ed..21743d31f9 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -2568,7 +2568,7 @@ struct CompanyWindow : Window default: NOT_REACHED(); case WID_C_GIVE_MONEY: { - Money money = std::strtoull(str, nullptr, 10) / _currency->rate; + Money money = std::strtoull(str, nullptr, 10) / GetCurrency().rate; Command::Post(STR_ERROR_CAN_T_GIVE_MONEY, money, (CompanyID)this->window_number); break; } diff --git a/src/currency.cpp b/src/currency.cpp index 98a89cda6e..afc735d4d4 100644 --- a/src/currency.cpp +++ b/src/currency.cpp @@ -26,7 +26,7 @@ * | | Euro year | | | | name * | | | | | | | | */ /** The original currency specifications. */ -static const CurrencySpec origin_currency_specs[CURRENCY_END] = { +static const std::array origin_currency_specs = {{ { 1, "", CF_NOEURO, "\u00a3", "", "GBP", 0, STR_GAME_OPTIONS_CURRENCY_GBP }, ///< british pound { 2, "", CF_NOEURO, "$", "", "USD", 0, STR_GAME_OPTIONS_CURRENCY_USD }, ///< american dollar { 2, "", CF_ISEURO, "\u20ac", "", "EUR", 0, STR_GAME_OPTIONS_CURRENCY_EUR }, ///< euro @@ -71,10 +71,10 @@ static const CurrencySpec origin_currency_specs[CURRENCY_END] = { { 5, "", CF_NOEURO, "RM", "", "MYR", 0, STR_GAME_OPTIONS_CURRENCY_MYR }, ///< Malaysian Ringgit { 1, "", 2014, "", NBSP "Ls", "LVL", 1, STR_GAME_OPTIONS_CURRENCY_LVL }, ///< latvian lats { 400, "", 2002, "", "$00", "PTE", 1, STR_GAME_OPTIONS_CURRENCY_PTE }, ///< portuguese escudo -}; +}}; /** Array of currencies used by the system */ -CurrencySpec _currency_specs[CURRENCY_END]; +std::array _currency_specs; /** * This array represent the position of OpenTTD's currencies, diff --git a/src/currency.h b/src/currency.h index 1ae229f772..71d1315aca 100644 --- a/src/currency.h +++ b/src/currency.h @@ -11,7 +11,7 @@ #define CURRENCY_H #include "timer/timer_game_calendar.h" -#include "string_func.h" +#include "settings_type.h" #include "strings_type.h" static constexpr TimerGameCalendar::Year CF_NOEURO = 0; ///< Currency never switches to the Euro (as far as known). @@ -99,11 +99,25 @@ struct CurrencySpec { } }; -extern CurrencySpec _currency_specs[CURRENCY_END]; +extern std::array _currency_specs; -/* XXX small hack, but makes the rest of the code a bit nicer to read */ -#define _custom_currency (_currency_specs[CURRENCY_CUSTOM]) -#define _currency ((const CurrencySpec*)&_currency_specs[GetGameSettings().locale.currency]) +/** + * Get the custom currency. + * @return Reference to custom currency. + */ +inline CurrencySpec &GetCustomCurrency() +{ + return _currency_specs[CURRENCY_CUSTOM]; +} + +/** + * Get the currently selected currency. + * @return Read-only reference to the current currency. + */ +inline const CurrencySpec &GetCurrency() +{ + return _currency_specs[GetGameSettings().locale.currency]; +} uint64_t GetMaskOfAllowedCurrencies(); void ResetCurrencies(bool preserve_custom = true); diff --git a/src/graph_gui.cpp b/src/graph_gui.cpp index 743bf8bda8..919474d911 100644 --- a/src/graph_gui.cpp +++ b/src/graph_gui.cpp @@ -1252,7 +1252,7 @@ struct PerformanceRatingDetailWindow : Window { * least 999 999 M which roughly is equally long. Furthermore if the * exchange rate is that high, 999 999 k is usually not enough anymore * to show the different currency numbers. */ - if (_currency->rate < 1000) max /= _currency->rate; + if (GetCurrency().rate < 1000) max /= GetCurrency().rate; SetDParam(0, max); SetDParam(1, max); uint score_detail_width = GetStringBoundingBox(STR_PERFORMANCE_DETAIL_AMOUNT_CURRENCY).width; diff --git a/src/settings.cpp b/src/settings.cpp index 88d96c0b48..6ba8df735e 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1280,7 +1280,7 @@ static void HandleSettingDescs(IniFile &generic_ini, IniFile &private_ini, IniFi proc(secrets_ini, table, "patches", &_settings_newgame, only_startup); } - proc(generic_ini, _currency_settings, "currency", &_custom_currency, only_startup); + proc(generic_ini, _currency_settings, "currency", &GetCustomCurrency(), only_startup); proc(generic_ini, _company_settings, "company", &_settings_client.company, only_startup); if (!only_startup) { diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 29f10e21f6..ba0ce024f7 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -397,7 +397,7 @@ struct GameOptionsWindow : Window { /* Add non-custom currencies; sorted naturally */ for (const CurrencySpec ¤cy : _currency_specs) { - int i = ¤cy - _currency_specs; + int i = ¤cy - _currency_specs.data(); if (i == CURRENCY_CUSTOM) continue; if (currency.code.empty()) { list.push_back(std::make_unique(currency.name, i, HasBit(disabled, i))); @@ -2689,7 +2689,7 @@ struct GameSettingsWindow : Window { if (this->last_clicked == pe && !sd->IsBoolSetting() && !(sd->flags & SF_GUI_DROPDOWN)) { int64_t value64 = value; /* Show the correct currency-translated value */ - if (sd->flags & SF_GUI_CURRENCY) value64 *= _currency->rate; + if (sd->flags & SF_GUI_CURRENCY) value64 *= GetCurrency().rate; CharSetFilter charset_filter = CS_NUMERAL; //default, only numeric input allowed if (sd->min < 0) charset_filter = CS_NUMERAL_SIGNED; // special case, also allow '-' sign for negative input @@ -2725,7 +2725,7 @@ struct GameSettingsWindow : Window { long long llvalue = atoll(str); /* Save the correct currency-translated value */ - if (sd->flags & SF_GUI_CURRENCY) llvalue /= _currency->rate; + if (sd->flags & SF_GUI_CURRENCY) llvalue /= GetCurrency().rate; value = ClampTo(llvalue); } else { @@ -2979,22 +2979,22 @@ struct CustomCurrencyWindow : Window { void SetButtonState() { - this->SetWidgetDisabledState(WID_CC_RATE_DOWN, _custom_currency.rate == 1); - this->SetWidgetDisabledState(WID_CC_RATE_UP, _custom_currency.rate == UINT16_MAX); - this->SetWidgetDisabledState(WID_CC_YEAR_DOWN, _custom_currency.to_euro == CF_NOEURO); - this->SetWidgetDisabledState(WID_CC_YEAR_UP, _custom_currency.to_euro == CalendarTime::MAX_YEAR); + this->SetWidgetDisabledState(WID_CC_RATE_DOWN, GetCustomCurrency().rate == 1); + this->SetWidgetDisabledState(WID_CC_RATE_UP, GetCustomCurrency().rate == UINT16_MAX); + this->SetWidgetDisabledState(WID_CC_YEAR_DOWN, GetCustomCurrency().to_euro == CF_NOEURO); + this->SetWidgetDisabledState(WID_CC_YEAR_UP, GetCustomCurrency().to_euro == CalendarTime::MAX_YEAR); } void SetStringParameters(WidgetID widget) const override { switch (widget) { case WID_CC_RATE: SetDParam(0, 1); SetDParam(1, 1); break; - case WID_CC_SEPARATOR: SetDParamStr(0, _custom_currency.separator); break; - case WID_CC_PREFIX: SetDParamStr(0, _custom_currency.prefix); break; - case WID_CC_SUFFIX: SetDParamStr(0, _custom_currency.suffix); break; + case WID_CC_SEPARATOR: SetDParamStr(0, GetCustomCurrency().separator); break; + case WID_CC_PREFIX: SetDParamStr(0, GetCustomCurrency().prefix); break; + case WID_CC_SUFFIX: SetDParamStr(0, GetCustomCurrency().suffix); break; case WID_CC_YEAR: - SetDParam(0, (_custom_currency.to_euro != CF_NOEURO) ? STR_CURRENCY_SWITCH_TO_EURO : STR_CURRENCY_SWITCH_TO_EURO_NEVER); - SetDParam(1, _custom_currency.to_euro); + SetDParam(0, (GetCustomCurrency().to_euro != CF_NOEURO) ? STR_CURRENCY_SWITCH_TO_EURO : STR_CURRENCY_SWITCH_TO_EURO_NEVER); + SetDParam(1, GetCustomCurrency().to_euro); break; case WID_CC_PREVIEW: @@ -3039,19 +3039,19 @@ struct CustomCurrencyWindow : Window { switch (widget) { case WID_CC_RATE_DOWN: - if (_custom_currency.rate > 1) _custom_currency.rate--; - if (_custom_currency.rate == 1) this->DisableWidget(WID_CC_RATE_DOWN); + if (GetCustomCurrency().rate > 1) GetCustomCurrency().rate--; + if (GetCustomCurrency().rate == 1) this->DisableWidget(WID_CC_RATE_DOWN); this->EnableWidget(WID_CC_RATE_UP); break; case WID_CC_RATE_UP: - if (_custom_currency.rate < UINT16_MAX) _custom_currency.rate++; - if (_custom_currency.rate == UINT16_MAX) this->DisableWidget(WID_CC_RATE_UP); + if (GetCustomCurrency().rate < UINT16_MAX) GetCustomCurrency().rate++; + if (GetCustomCurrency().rate == UINT16_MAX) this->DisableWidget(WID_CC_RATE_UP); this->EnableWidget(WID_CC_RATE_DOWN); break; case WID_CC_RATE: - SetDParam(0, _custom_currency.rate); + SetDParam(0, GetCustomCurrency().rate); str = STR_JUST_INT; len = 5; line = WID_CC_RATE; @@ -3060,7 +3060,7 @@ struct CustomCurrencyWindow : Window { case WID_CC_SEPARATOR_EDIT: case WID_CC_SEPARATOR: - SetDParamStr(0, _custom_currency.separator); + SetDParamStr(0, GetCustomCurrency().separator); str = STR_JUST_RAW_STRING; len = 7; line = WID_CC_SEPARATOR; @@ -3068,7 +3068,7 @@ struct CustomCurrencyWindow : Window { case WID_CC_PREFIX_EDIT: case WID_CC_PREFIX: - SetDParamStr(0, _custom_currency.prefix); + SetDParamStr(0, GetCustomCurrency().prefix); str = STR_JUST_RAW_STRING; len = 15; line = WID_CC_PREFIX; @@ -3076,26 +3076,26 @@ struct CustomCurrencyWindow : Window { case WID_CC_SUFFIX_EDIT: case WID_CC_SUFFIX: - SetDParamStr(0, _custom_currency.suffix); + SetDParamStr(0, GetCustomCurrency().suffix); str = STR_JUST_RAW_STRING; len = 15; line = WID_CC_SUFFIX; break; case WID_CC_YEAR_DOWN: - _custom_currency.to_euro = (_custom_currency.to_euro <= MIN_EURO_YEAR) ? CF_NOEURO : _custom_currency.to_euro - 1; - if (_custom_currency.to_euro == CF_NOEURO) this->DisableWidget(WID_CC_YEAR_DOWN); + GetCustomCurrency().to_euro = (GetCustomCurrency().to_euro <= MIN_EURO_YEAR) ? CF_NOEURO : GetCustomCurrency().to_euro - 1; + if (GetCustomCurrency().to_euro == CF_NOEURO) this->DisableWidget(WID_CC_YEAR_DOWN); this->EnableWidget(WID_CC_YEAR_UP); break; case WID_CC_YEAR_UP: - _custom_currency.to_euro = Clamp(_custom_currency.to_euro + 1, MIN_EURO_YEAR, CalendarTime::MAX_YEAR); - if (_custom_currency.to_euro == CalendarTime::MAX_YEAR) this->DisableWidget(WID_CC_YEAR_UP); + GetCustomCurrency().to_euro = Clamp(GetCustomCurrency().to_euro + 1, MIN_EURO_YEAR, CalendarTime::MAX_YEAR); + if (GetCustomCurrency().to_euro == CalendarTime::MAX_YEAR) this->DisableWidget(WID_CC_YEAR_UP); this->EnableWidget(WID_CC_YEAR_DOWN); break; case WID_CC_YEAR: - SetDParam(0, _custom_currency.to_euro); + SetDParam(0, GetCustomCurrency().to_euro); str = STR_JUST_INT; len = 7; line = WID_CC_YEAR; @@ -3118,25 +3118,25 @@ struct CustomCurrencyWindow : Window { switch (this->query_widget) { case WID_CC_RATE: - _custom_currency.rate = Clamp(atoi(str), 1, UINT16_MAX); + GetCustomCurrency().rate = Clamp(atoi(str), 1, UINT16_MAX); break; case WID_CC_SEPARATOR: // Thousands separator - _custom_currency.separator = str; + GetCustomCurrency().separator = str; break; case WID_CC_PREFIX: - _custom_currency.prefix = str; + GetCustomCurrency().prefix = str; break; case WID_CC_SUFFIX: - _custom_currency.suffix = str; + GetCustomCurrency().suffix = str; break; case WID_CC_YEAR: { // Year to switch to euro TimerGameCalendar::Year val = atoi(str); - _custom_currency.to_euro = (val < MIN_EURO_YEAR ? CF_NOEURO : std::min(val, CalendarTime::MAX_YEAR)); + GetCustomCurrency().to_euro = (val < MIN_EURO_YEAR ? CF_NOEURO : std::min(val, CalendarTime::MAX_YEAR)); break; } } diff --git a/src/strings.cpp b/src/strings.cpp index 0b40014476..e02ae292a4 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -542,7 +542,7 @@ static void FormatGenericCurrency(StringBuilder &builder, const CurrencySpec *sp } const char *separator = _settings_game.locale.digit_group_separator_currency.c_str(); - if (StrEmpty(separator)) separator = _currency->separator.c_str(); + if (StrEmpty(separator)) separator = GetCurrency().separator.c_str(); if (StrEmpty(separator)) separator = _langpack.langpack->digit_group_separator_currency; FormatNumber(builder, number, separator); if (number_str != STR_NULL) { @@ -1324,11 +1324,11 @@ static void FormatString(StringBuilder &builder, const char *str_arg, StringPara } case SCC_CURRENCY_SHORT: // {CURRENCY_SHORT} - FormatGenericCurrency(builder, _currency, args.GetNextParameter(), true); + FormatGenericCurrency(builder, &GetCurrency(), args.GetNextParameter(), true); break; case SCC_CURRENCY_LONG: // {CURRENCY_LONG} - FormatGenericCurrency(builder, _currency, args.GetNextParameter(), false); + FormatGenericCurrency(builder, &GetCurrency(), args.GetNextParameter(), false); break; case SCC_DATE_TINY: // {DATE_TINY} diff --git a/src/survey.cpp b/src/survey.cpp index f9310c976d..89c699ad0d 100644 --- a/src/survey.cpp +++ b/src/survey.cpp @@ -166,7 +166,7 @@ void SurveySettings(nlohmann::json &survey, bool skip_if_default) for (auto &table : GenericSettingTables()) { SurveySettingsTable(survey, table, &_settings_game, skip_if_default); } - SurveySettingsTable(survey, _currency_settings, &_custom_currency, skip_if_default); + SurveySettingsTable(survey, _currency_settings, &GetCustomCurrency(), skip_if_default); SurveySettingsTable(survey, _company_settings, &_settings_client.company, skip_if_default); } From c0308acb030537e555ed9fa5a041f471be4361b4 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Fri, 29 Mar 2024 23:26:24 +0100 Subject: [PATCH 56/70] Fix: "-q" displays NewGRF IDs in the wrong byte-order (#12397) --- src/openttd.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/openttd.cpp b/src/openttd.cpp index 504c8d119f..e4b540c45e 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -246,7 +246,7 @@ static void WriteSavegameInfo(const std::string &name) message += "NewGRFs:\n"; if (_load_check_data.HasNewGrfs()) { for (GRFConfig *c = _load_check_data.grfconfig; c != nullptr; c = c->next) { - fmt::format_to(std::back_inserter(message), "{:08X} {} {}\n", c->ident.grfid, + fmt::format_to(std::back_inserter(message), "{:08X} {} {}\n", BSWAP32(c->ident.grfid), FormatArrayAsHex(HasBit(c->flags, GCF_COMPATIBLE) ? c->original_md5sum : c->ident.md5sum), c->filename); } } From e866ca8adca8ab90cb40d7a4a7a40b5357a1632b Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Fri, 29 Mar 2024 23:26:32 +0100 Subject: [PATCH 57/70] Cleanup 69d5b9d3: actually clean up all remnants of "no-thread" builds (#12398) --- COMPILING.md | 3 --- cmake/Options.cmake | 12 ------------ 2 files changed, 15 deletions(-) diff --git a/COMPILING.md b/COMPILING.md index 578b5e4568..dfdcd4ead5 100644 --- a/COMPILING.md +++ b/COMPILING.md @@ -110,9 +110,6 @@ builds. - `-DOPTION_USE_ASSERTS=OFF`: disable asserts. Use with care, as assert statements capture early signs of trouble. Release builds have them disabled by default. -- `-DOPTION_USE_THREADS=OFF`: disable the use of threads. This will block - the interface in many places, and in general gives a worse experience of - the game. Use with care. - `-DOPTION_TOOLS_ONLY=ON`: only build tools like `strgen`. Does not build the game itself. Useful for cross-compiling. diff --git a/cmake/Options.cmake b/cmake/Options.cmake index 3c8692fe4a..38d708c717 100644 --- a/cmake/Options.cmake +++ b/cmake/Options.cmake @@ -57,13 +57,6 @@ function(set_options) option(OPTION_DEDICATED "Build dedicated server only (no GUI)" OFF) option(OPTION_INSTALL_FHS "Install with Filesystem Hierarchy Standard folders" ${DEFAULT_OPTION_INSTALL_FHS}) option(OPTION_USE_ASSERTS "Use assertions; leave enabled for nightlies, betas, and RCs" ON) - if(EMSCRIPTEN) - # Although pthreads is supported, it is not in a way yet that is - # useful for us. - option(OPTION_USE_THREADS "Use threads" OFF) - else() - option(OPTION_USE_THREADS "Use threads" ON) - endif() option(OPTION_USE_NSIS "Use NSIS to create windows installer; enable only for stable releases" OFF) option(OPTION_TOOLS_ONLY "Build only tools target" OFF) option(OPTION_DOCS_ONLY "Build only docs target" OFF) @@ -85,7 +78,6 @@ function(show_options) message(STATUS "Option Dedicated - ${OPTION_DEDICATED}") message(STATUS "Option Install FHS - ${OPTION_INSTALL_FHS}") message(STATUS "Option Use assert - ${OPTION_USE_ASSERTS}") - message(STATUS "Option Use threads - ${OPTION_USE_THREADS}") message(STATUS "Option Use NSIS - ${OPTION_USE_NSIS}") if(OPTION_SURVEY_KEY) @@ -109,10 +101,6 @@ function(add_definitions_based_on_options) add_definitions(-DDEDICATED) endif() - if(NOT OPTION_USE_THREADS) - add_definitions(-DNO_THREADS) - endif() - if(OPTION_USE_ASSERTS) add_definitions(-DWITH_ASSERT) else() From 340c2802da2f5c46655b83ea9e7626b7f82b3ee6 Mon Sep 17 00:00:00 2001 From: translators Date: Sat, 30 Mar 2024 04:40:28 +0000 Subject: [PATCH 58/70] Update: Translations from eints ukrainian: 14 changes by StepanIvasyn dutch: 3 changes by Afoklala portuguese (brazilian): 34 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 68 +++++++++++++++---------------- src/lang/dutch.txt | 6 +-- src/lang/ukrainian.txt | 28 ++++++------- 3 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index c755c497a8..eae0376662 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -349,13 +349,13 @@ STR_SORT_BY_WAITING_TOTAL :Carga total agu STR_SORT_BY_WAITING_AVAILABLE :Carga disponível aguardando STR_SORT_BY_RATING_MAX :Maior classificação de carga STR_SORT_BY_RATING_MIN :Menor classificação de carga -STR_SORT_BY_ENGINE_ID :Locomotiva ID(ordem clássica) +STR_SORT_BY_ENGINE_ID :Motor ID(ordem clássica) STR_SORT_BY_COST :Custo STR_SORT_BY_POWER :Potência STR_SORT_BY_TRACTIVE_EFFORT :Força de tração STR_SORT_BY_INTRO_DATE :Data de introdução -STR_SORT_BY_RUNNING_COST :Custo de operação -STR_SORT_BY_POWER_VS_RUNNING_COST :Potência/Custo de operação +STR_SORT_BY_RUNNING_COST :Custo operacional +STR_SORT_BY_POWER_VS_RUNNING_COST :Potência/Custo operacional STR_SORT_BY_CARGO_CAPACITY :Capacidade de carga STR_SORT_BY_RANGE :Autonomia STR_SORT_BY_POPULATION :População @@ -1098,10 +1098,10 @@ STR_GAME_OPTIONS_SOCIAL_PLUGIN_TITLE :{BLACK}{STRING} STR_GAME_OPTIONS_SOCIAL_PLUGIN_PLATFORM :{BLACK}Plataforma: STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE :{BLACK}Estado do plugin: -STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_RUNNING :{GREEN}Executando +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_RUNNING :{GREEN}Executando (ativo) STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_FAILED :{RED}Falha ao inicializar -STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_PLATFORM_NOT_RUNNING :{ORANGE}{STRING} não executando -STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNLOADED :{RED}Descarregado +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_PLATFORM_NOT_RUNNING :{ORANGE}{STRING} está parado (inativo) +STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNLOADED :{RED}Não carregado STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_DUPLICATE :{RED}Plugin duplicado STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_UNSUPPORTED_API :{RED}Versão não suportada STR_GAME_OPTIONS_SOCIAL_PLUGIN_STATE_INVALID_SIGNATURE :{RED}Assinatura inválida @@ -1281,10 +1281,10 @@ STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_VALUE :{CURRENCY_LONG} ###setting-zero-is-special STR_CONFIG_SETTING_MAXIMUM_INITIAL_LOAN_DISABLED :Sem empréstimo -STR_CONFIG_SETTING_INTEREST_RATE :Taxa de Juros: {STRING} +STR_CONFIG_SETTING_INTEREST_RATE :Taxa de juros: {STRING} STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Taxa de juros do empréstimo; também controla a inflação, se ativado -STR_CONFIG_SETTING_RUNNING_COSTS :Custos de Operação: {STRING} +STR_CONFIG_SETTING_RUNNING_COSTS :Custos operacionais: {STRING} STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Configurar nível de manutenção e custos operacionais de veículos e infraestrutura STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidade de construção: {STRING} @@ -1311,7 +1311,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Definir o níve STR_CONFIG_SETTING_RECESSIONS :Recessões: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Se ativado, recessões podem ocorrer periodicamente. Durante uma recessão, toda a produção é significativamente menor (ela retorna ao nível anterior quando a recessão termina) -STR_CONFIG_SETTING_TRAIN_REVERSING :Não permitir a reversão de trens nas estações: {STRING} +STR_CONFIG_SETTING_TRAIN_REVERSING :Desativar a reversão de trens nas estações: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Se ativado, os trens não podem inverter a direção em estações não-terminais, mesmo se existir um caminho mais curto para o próximo destino com a inversão STR_CONFIG_SETTING_DISASTERS :Desastres: {STRING} @@ -1530,7 +1530,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da me STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tempo de exibição de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Quando este valor é igual a 0 (zero), os textos de ajuda podem ser mostrados com o botão direito do mouse +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Outro modo de exibir os textos de ajuda é com o botão direito do mouse quando este valor é fixado em 0. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Manter o cursor por {COMMA} milissegundo{P 0 "" s} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Botão direito @@ -1547,7 +1547,7 @@ STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Mostrar as carg STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Se ativado, a carga que o veículo pode transportar aparecerá acima dele nas listas de veículos STR_CONFIG_SETTING_LANDSCAPE :Paisagem: {STRING} -STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Os climas definem cenários básicos de jogo, com diferentes cargas e requisitos de crescimento das localidades. NewGRFs e Scripts de Jogo permitem um controle mais preciso sobre isso +STR_CONFIG_SETTING_LANDSCAPE_HELPTEXT :Os climas definem os cenários básicos de jogo, com diferentes cargas e requisitos de crescimento das localidades. NewGRFs e Scripts de Jogo permitem um controle mais preciso sobre isso STR_CONFIG_SETTING_LAND_GENERATOR :Gerador de Terreno: {STRING} STR_CONFIG_SETTING_LAND_GENERATOR_HELPTEXT :O gerador 'Original' depende do conjunto de gráficos básicos e produz formas de terreno pré-definidas. 'TerraGenesis' é um gerador baseado no algoritmo de ruído de Perlin, que permite configurações mais refinadas @@ -2032,9 +2032,9 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER :Multiplicador d STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Tamanho médio das cidades em relação às localidades normais no início do jogo STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Atualizar a distribuição a cada {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tempo entre recálculos subsequentes da rede de conexões. Cada recálculo atualiza os planos para um componente da rede. Isso significa que um valor X para esta configuração não significa que toda a rede será atualizada a cada X segundos. Apenas algum componente será atualizado. Quanto menor este valor, mais tempo de CPU será necessário para calcular as atualizações. Quanto maior este valor, mais tempo será necessário até que a distribuição de carga inicie nas novas rotas +STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Tempo entre recálculos subsequentes da rede de conexões. Cada recálculo atualiza os planos para um componente da rede. Isso significa que um valor X para esta configuração não significa que toda a rede será atualizada a cada X segundos. Apenas algum componente será atualizado. Quanto menor este valor, mais tempo de CPU será necessário para calcular as atualizações. Quanto maior este valor, mais tempo será necessário até que a distribuição de carga inicie nas rotas novas STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Usar {STRING} para recalcular a distribuição -STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tempo gasto em cada recálculo de um componente da rede de conexões. Quando um recálculo é iniciado, uma tarefa é gerada e pode ser executada por esse número de segundos. Quanto menor este valor, maior a chance de que a tarefa não seja concluída quando deveria. Então o jogo para até que ela seja completada, causando um atraso. Quanto maior este valor, mais tempo será necessário para a distribuição ser atualizada quando as rotas mudam +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Tempo gasto em cada recálculo de um componente da rede de conexões. Quando um recálculo é iniciado, uma tarefa é gerada e pode ser executada durante esse número de segundos. Quanto menor este valor, maior a chance de que a tarefa não seja concluída quando deveria. Neste caso, o jogo para até que ela seja completada, causando um atraso. Quanto maior este valor, mais tempo será necessário para a distribuição ser atualizada quando as rotas mudam STR_CONFIG_SETTING_DISTRIBUTION_PAX :Modo de distribuição para passageiros: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :"Simétrico" significa que aproximadamente o mesmo número de passageiros irá de uma estação A para uma estação B, assim como de B para A. "Assimétrico" significa que um número arbitrário de passageiros pode ir em qualquer direção. "Manual" significa que não haverá distribuição automática dos passageiros @@ -2669,7 +2669,7 @@ STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Você es STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Os termos e condições para download de conteúdo de fontes externas pode variar.{}Você deverá consultar as fontes para obter instruções de como instalar o conteúdo no OpenTTD.{}Você deseja continuar? STR_CONTENT_FILTER_TITLE :{BLACK}Filtrar por etiqueta/nome: STR_CONTENT_OPEN_URL :{BLACK}Página da internet -STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visitar o site desse conteúdo +STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Visitar a página web deste conteúdo STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Fazer download STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Iniciar o download do conteúdo selecionado STR_CONTENT_TOTAL_DOWNLOAD_SIZE :{SILVER}Tamanho total do download: {WHITE}{BYTES} @@ -3663,9 +3663,9 @@ STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Comprar direito STR_LOCAL_AUTHORITY_ACTION_BRIBE :Subornar a autoridade local ###next-name-looks-similar -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma pequena campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio pequeno em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma média campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio médio em torno do centro da cidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma grande campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação num raio grande em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma pequena campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação numa distância pequena em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma média campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação numa distância média em torno do centro da cidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Iniciar uma grande campanha publicitária local, para atrair mais passageiros e cargas para seus serviços de transporte.{}Produz um aumento temporário na classificação da estação numa distância grande em torno do centro da localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MONTHS :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 meses.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MINUTES :{PUSH_COLOUR}{YELLOW}Financiar a reconstrução da rede urbana de estradas.{}Provoca uma perturbação considerável no tráfego por até 6 minutos.{}{POP_COLOUR}Custo: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Construir uma estátua em homenagem à sua empresa.{}Produz um aumento permanente na classificação da estação nesta localidade.{}{POP_COLOUR}Custo: {CURRENCY_LONG} @@ -4074,8 +4074,8 @@ STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Velocida STR_PURCHASE_INFO_SPEED :{BLACK}Velocidade: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Velocidade no oceano: {GOLD}{VELOCITY} STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}Velocidade em canais/rios: {GOLD}{VELOCITY} -STR_PURCHASE_INFO_RUNNINGCOST_YEAR :{BLACK}Custo de Operação: {GOLD}{CURRENCY_LONG}/ano -STR_PURCHASE_INFO_RUNNINGCOST_PERIOD :{BLACK}Custo de Operação: {GOLD}{CURRENCY_LONG}/período +STR_PURCHASE_INFO_RUNNINGCOST_YEAR :{BLACK}Custo Operacional: {GOLD}{CURRENCY_LONG}/ano +STR_PURCHASE_INFO_RUNNINGCOST_PERIOD :{BLACK}Custo Operacional: {GOLD}{CURRENCY_LONG}/período STR_PURCHASE_INFO_CAPACITY :{BLACK}Capacidade: {GOLD}{CARGO_LONG} {STRING} STR_PURCHASE_INFO_REFITTABLE :(adaptável) STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Desenvolvido: {GOLD}{NUM}{BLACK} Vida útil: {GOLD}{COMMA} ano{P "" s} @@ -4276,8 +4276,8 @@ STR_ENGINE_PREVIEW_SPEED_POWER :Velocidade: {VE STR_ENGINE_PREVIEW_SPEED_POWER_MAX_TE :Velocidade: {VELOCITY} Potência: {POWER} Tração máx.: {FORCE} STR_ENGINE_PREVIEW_TYPE :Tipo de aeronave: {STRING} STR_ENGINE_PREVIEW_TYPE_RANGE :Tipo de aeronave: {STRING} Autonomia: {COMMA} quadrados -STR_ENGINE_PREVIEW_RUNCOST_YEAR :Custo de Operação: {CURRENCY_LONG}/ano -STR_ENGINE_PREVIEW_RUNCOST_PERIOD :Custo de Operação: {CURRENCY_LONG}/período +STR_ENGINE_PREVIEW_RUNCOST_YEAR :Custo Operacional: {CURRENCY_LONG}/ano +STR_ENGINE_PREVIEW_RUNCOST_PERIOD :Custo Operacional: {CURRENCY_LONG}/período STR_ENGINE_PREVIEW_CAPACITY :Capacidade: {CARGO_LONG} STR_ENGINE_PREVIEW_CAPACITY_2 :Capacidade: {CARGO_LONG}, {CARGO_LONG} @@ -4426,8 +4426,8 @@ STR_VEHICLE_DETAILS_AIRCRAFT_RENAME :{BLACK}Renomear STR_VEHICLE_INFO_AGE :{COMMA} ano{P "" s} ({COMMA}) STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA} ano{P "" s} ({COMMA}) -STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Idade: {LTBLUE}{STRING}{BLACK} Custo de Operação: {LTBLUE}{CURRENCY_LONG}/ano -STR_VEHICLE_INFO_AGE_RUNNING_COST_PERIOD :{BLACK}Idade: {LTBLUE}{STRING}{BLACK} Custo de Operação: {LTBLUE}{CURRENCY_LONG}/período +STR_VEHICLE_INFO_AGE_RUNNING_COST_YR :{BLACK}Idade: {LTBLUE}{STRING}{BLACK} Custo Operacional: {LTBLUE}{CURRENCY_LONG}/ano +STR_VEHICLE_INFO_AGE_RUNNING_COST_PERIOD :{BLACK}Idade: {LTBLUE}{STRING}{BLACK} Custo Operacional: {LTBLUE}{CURRENCY_LONG}/período STR_VEHICLE_INFO_MAX_SPEED :{BLACK}Velocidade máx.: {LTBLUE}{VELOCITY} STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}Velocidade máx.: {LTBLUE}{VELOCITY} {BLACK}Tipo de aeronave: {LTBLUE}{STRING} @@ -4861,7 +4861,7 @@ STR_TEXTFILE_WRAP_TEXT_TOOLTIP :{BLACK}Ajustar STR_TEXTFILE_VIEW_README :{BLACK}Leia-me STR_TEXTFILE_VIEW_README_TOOLTIP :Ver o arquivo Leia-me para este conteúdo STR_TEXTFILE_VIEW_CHANGELOG :{BLACK}Registro de modificações -STR_TEXTFILE_VIEW_CHANGELOG_TOOLTIP :Ver o registro de modificações para este conteúdo +STR_TEXTFILE_VIEW_CHANGELOG_TOOLTIP :Ver o registro de modificações deste conteúdo STR_TEXTFILE_VIEW_LICENCE :{BLACK}Licença STR_TEXTFILE_VIEW_LICENCE_TOOLTIP :Ver a licença para este conteúdo ###length 5 @@ -5029,7 +5029,7 @@ STR_ERROR_CAN_ONLY_BE_BUILT_ABOVE_SNOW_LINE :{WHITE}... só STR_ERROR_CAN_ONLY_BE_BUILT_BELOW_SNOW_LINE :{WHITE}... só pode ser construído abaixo da linha de neve STR_ERROR_PROSPECTING_WAS_UNLUCKY :{WHITE}O financiamento falhou em prospectar devido ao azar; tente novamente -STR_ERROR_NO_SUITABLE_PLACES_FOR_PROSPECTING :{WHITE}Não havia locais adequados para prospectar por esta indústria +STR_ERROR_NO_SUITABLE_PLACES_FOR_PROSPECTING :{WHITE}Não havia locais adequados para prospectar esta indústria STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES :{WHITE}Não havia locais adequados para indústrias do tipo '{STRING}' STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Modifique os parâmetros de geração do mapa para obter um mapa melhor @@ -5106,10 +5106,10 @@ STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Não é STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... composto por várias unidades STR_ERROR_INCOMPATIBLE_RAIL_TYPES :Tipos de trilhos incompatíveis -STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Não é possível mover veículo... +STR_ERROR_CAN_T_MOVE_VEHICLE :{WHITE}Não é possível mover o veículo... STR_ERROR_REAR_ENGINE_FOLLOW_FRONT :{WHITE}A locomotiva traseira sempre seguirá a sua equivalente dianteira -STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Não é possível encontrar uma rota para depósito local -STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Não é possível encontrar depósito local +STR_ERROR_UNABLE_TO_FIND_ROUTE_TO :{WHITE}Incapaz de encontrar uma rota para depósito local +STR_ERROR_UNABLE_TO_FIND_LOCAL_DEPOT :{WHITE}Incapaz de encontrar um depósito local STR_ERROR_DEPOT_WRONG_DEPOT_TYPE :Tipo de depósito errado @@ -5174,15 +5174,15 @@ STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Não é # Tree related errors STR_ERROR_TREE_ALREADY_HERE :{WHITE}... árvore já plantada aqui STR_ERROR_TREE_WRONG_TERRAIN_FOR_TREE_TYPE :{WHITE}... terreno errado para esse tipo de árvore -STR_ERROR_CAN_T_PLANT_TREE_HERE :{WHITE}Não é possível plantar árvores aqui... +STR_ERROR_CAN_T_PLANT_TREE_HERE :{WHITE}Não é possível plantar árvore aqui... # Bridge related errors STR_ERROR_CAN_T_BUILD_BRIDGE_HERE :{WHITE}Não é possível construir ponte aqui... STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}É necessário demolir a ponte primeiro STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Não é possível iniciar e terminar no mesmo ponto STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}As extremidades da ponte não estão no mesmo nível -STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}A ponte é muito baixa para este terreno -STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}A ponte é muito alta para este terreno +STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}A ponte é muito baixa para o terreno. +STR_ERROR_BRIDGE_TOO_HIGH_FOR_TERRAIN :{WHITE}A ponte é muito alta para este terreno. STR_ERROR_START_AND_END_MUST_BE_IN :{WHITE}Início e final devem estar alinhados STR_ERROR_ENDS_OF_BRIDGE_MUST_BOTH :{WHITE}... os extremos da ponte devem estar sobre a terra STR_ERROR_BRIDGE_TOO_LONG :{WHITE}... ponte muito longa @@ -5294,7 +5294,7 @@ STR_ERROR_CAN_T_MAKE_ROAD_VEHICLE_TURN :{WHITE}Não é STR_ERROR_AIRCRAFT_IS_IN_FLIGHT :{WHITE}Aeronave está em voo # Order related errors -STR_ERROR_NO_MORE_SPACE_FOR_ORDERS :{WHITE}Não há espaço para mais ordens +STR_ERROR_NO_MORE_SPACE_FOR_ORDERS :{WHITE}Não há mais espaço para ordens STR_ERROR_TOO_MANY_ORDERS :{WHITE}Há ordens demais STR_ERROR_CAN_T_INSERT_NEW_ORDER :{WHITE}Não é possível inserir nova ordem... STR_ERROR_CAN_T_DELETE_THIS_ORDER :{WHITE}Não é possível remover esta ordem... @@ -5332,8 +5332,8 @@ STR_ERROR_NO_BUOY :{WHITE}Não exi STR_ERROR_CAN_T_TIMETABLE_VEHICLE :{WHITE}Não é possível programar o veículo... STR_ERROR_TIMETABLE_ONLY_WAIT_AT_STATIONS :{WHITE}Veículos só podem aguardar em estações STR_ERROR_TIMETABLE_NOT_STOPPING_HERE :{WHITE}Este veículo não para nesta estação -STR_ERROR_TIMETABLE_INCOMPLETE :{WHITE}... horário incompleto -STR_ERROR_TIMETABLE_NOT_STARTED :{WHITE}... o horário ainda não começou +STR_ERROR_TIMETABLE_INCOMPLETE :{WHITE}... horário está incompleto +STR_ERROR_TIMETABLE_NOT_STARTED :{WHITE}... horário ainda não começou # Sign related errors STR_ERROR_TOO_MANY_SIGNS :{WHITE}... há placas demais diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index 15636e70d3..ec62376bf9 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -4449,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacite STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Geldoverdracht: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Onderhoudstermijn: {LTBLUE}{COMMA}{NBSP}dagen{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Onderhoudstermijn: {LTBLUE}{COMMA}{NBSP}minuten{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Onderhoudstermijn: {LTBLUE}{COMMA}{NBSP}minu{P ut ten}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Onderhoudstermijn: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Laatste onderhoud: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Laatste onderhoud: {LTBLUE}{NUM} minuten geleden +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Laatste onderhoud: {LTBLUE}{NUM} minu{P ut ten} geleden STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Vergroot de onderhoudstermijn met 10 dagen. Ctrl+klik voor een verhoging met 5 dagen STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Vergroot de onderhoudstermijng met 5 minuten. Ctrl+klik voor een verhoging met 1 minuut STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Vergroot de onderhoudstermijn met 10 procent. Ctrl+klik voor een verhoging met 5 procent @@ -4643,7 +4643,7 @@ STR_ORDER_REFIT_ORDER :(Ombouwen naar STR_ORDER_REFIT_STOP_ORDER :(Ombouwen naar {STRING} en stop) STR_ORDER_STOP_ORDER :(Stop) -STR_ORDER_WAIT_TO_UNBUNCH :(wacht op ontkreukelen) +STR_ORDER_WAIT_TO_UNBUNCH :(Wacht op ontkreukelen) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(Kan station niet gebruiken){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 17a7d092ea..54ad0fdda2 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -515,8 +515,8 @@ STR_GOTO_ORDER_VIEW_TOOLTIP :{BLACK}Відк ###length 31 STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Пауза STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Прискорити гру -STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Опції -STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Зберегти гру, покинути гру, вихід +STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Опції і налаштування +STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Зберегти гру, завантажити гру, покинути гру, вихід STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Показує мапу, додаткове вікно, легенду вантажопотоку або список позначок STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Показує перелік міст або заснування міста STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Показує субсидії @@ -539,7 +539,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Буду STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Будувати трамвайну колію STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Будувати порти STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Будувати аеропорти -STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Змінити ландшафт +STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Покаже меню створення ландшафту, посадки дерев, створення позначки STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Налаштування звуків/музики STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Показати останнє повідомлення. Налаштування повідомлень STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Інформація про земельну ділянку, знімки екрану, про гру OpenTTD та інструменти для розробки @@ -746,7 +746,7 @@ STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Граф STR_GRAPH_INCOME_CAPTION :{WHITE}Графік доходів STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Кількість перевезеного вантажу STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Рейтинг продуктивності компанії (найбільший рейтинг=1000) -STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Вартість компанії +STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Графік вартості компанії STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Останні 72 хвилини @@ -1666,7 +1666,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Тривалі STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Тривалість відображення повідомлень про помилки (червоне вікно повідомлень). Деякі (критичні) повідомлення необхідно закривати власноруч. STR_CONFIG_SETTING_HOVER_DELAY :Відображати підказки: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затримка перед відображенням підказок при наведенні курсором на елементи інтерфейса. Окрім того, відображення підказок можна призначити на праву кнопку миші, якщо це значення поставити на 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Затримка перед відображенням підказок при наведенні курсором на елементи інтерфейсу. Окрім того, відображення підказок можна призначити на праву кнопку миші, якщо це значення поставити на 0. STR_CONFIG_SETTING_HOVER_DELAY_VALUE :При наведенні, через {COMMA} мілісекунд{P у и ""} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :По правому клацу миші @@ -3098,10 +3098,10 @@ STR_STATION_BUILD_NOISE :{BLACK}Ріве # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Ландшафт -STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Опустити край ділянки землі. Протягування мишею опускає вибраний край і вирівнює вибрану ділянку до його нової висоти. Утримуйте Ctrl для виділення клітинок по діагоналі, або Shift - для показу очікуваних витрат +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Опустити край ділянки землі. Клац+протягування опускає обраний край і вирівнює обрану ділянку до його нової висоти. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Підняти край ділянки землі. Протягування мишею піднімає вибраний край і вирівнює вибрану ділянку до його нової висоти. Ctrl+клац+протягування для виділення клітинок по діагоналі. Утримуйте Shift для показу очікуваних витрат STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Вирівнювання ділянки землі до висоти першого обраного краю. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат -STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Купити ділянку для використання у майбутньому. Утримуйте Ctrl для виділення діагональної ділянки. Утримуйте Shift для показу вартості ділянки +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Купити ділянку для використання у майбутньому. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Вибір об'єкта @@ -3117,7 +3117,7 @@ STR_OBJECT_CLASS_TRNS :Ретранс STR_PLANT_TREE_CAPTION :{WHITE}Дерева STR_PLANT_TREE_TOOLTIP :{BLACK}Оберіть тип дерева для посадки. Клітинки, які вже містять дерева, доповнюються новими деревами різного типу незалежно від обраного. STR_TREES_RANDOM_TYPE :{BLACK}Дерева випадкового типу -STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Садити дерева випадкового типу. Утримуйте Shift для показу витрат на висаджування +STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Саджати дерева випадкового типу. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Випадкові дерева STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Випадкове насадження дерев по всьому ландшафту STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Нормальна @@ -3176,7 +3176,7 @@ STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}Сітк STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Випадковий # Fund new industry window -STR_FUND_INDUSTRY_CAPTION :{WHITE}Нове підприємство +STR_FUND_INDUSTRY_CAPTION :{WHITE}Створити підприємство STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Виберіть необхідне підприємство STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Створити різні підприємства STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Випадково розташувати підприємства по карті @@ -3873,7 +3873,7 @@ 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}Перейти до сторінки, вибраної в цьому списку. +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Перейти до сторінки, вибраної в цьому випадному списку. STR_STORY_BOOK_PREV_PAGE :{BLACK}Попередня сторінка STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}На попередню сторінку STR_STORY_BOOK_NEXT_PAGE :{BLACK}Далі @@ -3964,7 +3964,7 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Забо STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Показати точку маршруту в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на точку маршруту STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Перейменувати точку маршруту -STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Показати буй в центрі екрану. Ctrl+клац мишею відкриє нове вікно у місці розташування буя +STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Показати буй в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на розташування буя STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Перейменувати буй STR_EDIT_WAYPOINT_NAME :{WHITE}Перейменуйте точку маршруту @@ -4241,8 +4241,8 @@ STR_CARGO_TYPE_FILTER_FREIGHT :Вантаж STR_CARGO_TYPE_FILTER_NONE :нема ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишею вимикає показ типу транспорту -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишею вимикає показ типу транспорту +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список потягів. Клацніть на потяг для інформації. Ctrl+клац мишею показує або приховує цей тип транспорту +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список дорожнього транспорту. Клацніть на трансопорт для отримання інформації. Ctrl+клац мишею показує або приховує цей тип транспорту STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Список кораблів. Клацніть на корабель для отримання інформації. Ctrl+клац сховає показ цього типу кораблів STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Список літальних апаратів. Клацніть на літальному апараті для отримання інформації. Ctrl+клац мишею сховає показ цього типу транспорту @@ -4259,7 +4259,7 @@ STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Купі STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Купуйте та переобладнайте повітряні апарати ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Купити вибраний поїзд. Утримуйте Shift для показу витрат на придбання +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Купити обраний потяг. Утримуйте Shift для показу орієнтовних витрат STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Придбати обраний дорожній транспорт. Утримуйте Shift для показу орієнтовних витрат STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Купити обраний корабель. Утримуйте Shift для показу очікуваних витрат STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Придбати обраний літальний апарат. Утримуйте Shift для показу орієнтовних витрат From 77f02faf15948b8842d707e2984ce8ce506fbda1 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Sat, 30 Mar 2024 13:29:51 +0100 Subject: [PATCH 59/70] Codefix 977aba73be: also update comment about removal of is_random (#12400) --- src/script/script_config.hpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/script/script_config.hpp b/src/script/script_config.hpp index ef74f08c38..4f171621de 100644 --- a/src/script/script_config.hpp +++ b/src/script/script_config.hpp @@ -73,7 +73,6 @@ public: * @param version The version of the Script to load, or -1 of latest. * @param force_exact_match If true try to find the exact same version * as specified. If false any compatible version is ok. - * @param is_random Is the Script chosen randomly? */ void Change(std::optional name, int version = -1, bool force_exact_match = false); From 9954187680e53739a64e89fdb5b88648b78bb94e Mon Sep 17 00:00:00 2001 From: translators Date: Sun, 31 Mar 2024 04:41:01 +0000 Subject: [PATCH 60/70] Update: Translations from eints greek: 172 changes by gh658804 ukrainian: 18 changes by StepanIvasyn portuguese (brazilian): 9 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 18 +- src/lang/greek.txt | 344 +++++++++++++++--------------- src/lang/ukrainian.txt | 36 ++-- 3 files changed, 199 insertions(+), 199 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index eae0376662..fa95b1a4a2 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -736,8 +736,8 @@ STR_HIGHSCORE_PERFORMANCE_TITLE_MOGUL :Mandachuva STR_HIGHSCORE_PERFORMANCE_TITLE_TYCOON_OF_THE_CENTURY :Magnata do Século STR_HIGHSCORE_NAME :{PRESIDENT_NAME}, {COMPANY} STR_HIGHSCORE_STATS :{BIG_FONT}'{STRING}' ({COMMA}) -STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} conquista o status de '{STRING}'!! -STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} conquista o status de '{STRING}'!! +STR_HIGHSCORE_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{BLACK}{COMPANY} conquista o status de '{STRING}'! +STR_HIGHSCORE_PRESIDENT_OF_COMPANY_ACHIEVES_STATUS :{BIG_FONT}{WHITE}{PRESIDENT_NAME} de {COMPANY} conquista o status de '{STRING}'! # Smallmap window STR_SMALLMAP_CAPTION :{WHITE}Mapa - {STRING} @@ -856,7 +856,7 @@ STR_NEWS_COMPANY_MERGER_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_MERGER_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi vendida para {STRING} por {CURRENCY_LONG}! STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLACK}Falência! STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} foi fechada pelos credores e todos os seus bens foram vendidos! -STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes!! +STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Nova empresa de transportes! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} inicia construção perto de {TOWN}! STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} foi comprada por {STRING} por um valor não revelado! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Gerente) @@ -910,7 +910,7 @@ STR_NEWS_AIRCRAFT_DEST_TOO_FAR :{WHITE}{VEHICLE STR_NEWS_ORDER_REFIT_FAILED :{WHITE}{VEHICLE} parou porque uma ordem de adaptação falhou STR_NEWS_VEHICLE_AUTORENEW_FAILED :{WHITE}Renovação automática falhou para {VEHICLE}{}{STRING} -STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} disponível!! +STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE :{BIG_FONT}{BLACK}Nov{G o a} {STRING} disponível! STR_NEWS_NEW_VEHICLE_TYPE :{BIG_FONT}{BLACK}{ENGINE} STR_NEWS_NEW_VEHICLE_NOW_AVAILABLE_WITH_TYPE :{BLACK}Nov{G o a} {STRING} disponível! - {ENGINE} @@ -3262,7 +3262,7 @@ STR_SAVELOAD_SAVE_SCENARIO :{WHITE}Salvar C STR_SAVELOAD_LOAD_SCENARIO :{WHITE}Abrir Cenário STR_SAVELOAD_LOAD_HEIGHTMAP :{WHITE}Abrir mapa de altitudes STR_SAVELOAD_SAVE_HEIGHTMAP :{WHITE}Salvar mapa de altitudes -STR_SAVELOAD_HOME_BUTTON :{BLACK}Acessar o diretório padrão atual onde salvar/abrir jogos +STR_SAVELOAD_HOME_BUTTON :{BLACK}Clique aqui para acessar o diretório padrão para salvar/abrir um jogo STR_SAVELOAD_BYTES_FREE :{BLACK}{BYTES} livres STR_SAVELOAD_LIST_TOOLTIP :{BLACK}Lista de unidades, diretórios e arquivos de jogos salvos STR_SAVELOAD_EDITBOX_TOOLTIP :{BLACK}Nome selecionado para salvar o jogo @@ -3369,7 +3369,7 @@ STR_MAPGEN_HEIGHTMAP_SIZE_LABEL_TOOLTIP :{BLACK}O tamanh STR_MAPGEN_HEIGHTMAP_SIZE :{ORANGE}{NUM} x {NUM} STR_MAPGEN_TERRAIN_TYPE_QUERY_CAPT :{WHITE}Altura do pico mais elevado -STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais elevado +STR_MAPGEN_HEIGHTMAP_HEIGHT_QUERY_CAPT :{WHITE}Pico mais alto STR_MAPGEN_SNOW_COVERAGE_QUERY_CAPT :{WHITE}Cobertura de neve (em %) STR_MAPGEN_DESERT_COVERAGE_QUERY_CAPT :{WHITE}Cobertura de deserto (em %) STR_MAPGEN_START_DATE_QUERY_CAPT :{WHITE}Alterar o ano de início @@ -3379,12 +3379,12 @@ STR_SE_MAPGEN_CAPTION :{WHITE}Tipo de STR_SE_MAPGEN_FLAT_WORLD :{WHITE}Terreno plano STR_SE_MAPGEN_FLAT_WORLD_TOOLTIP :{BLACK}Gerar um terreno plano STR_SE_MAPGEN_RANDOM_LAND :{WHITE}Terreno aleatório -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altitude do terreno plano: +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT :{BLACK}Altura do terreno plano: STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_TOOLTIP :{BLACK}Escolher a elevação do terreno acima do nível do mar STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_DOWN :{BLACK}Mover altura do terreno plano um nível abaixo STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_UP :{BLACK}Mover altura do terreno plano um nível acima -STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Modificar a altitude do terreno plano +STR_SE_MAPGEN_FLAT_WORLD_HEIGHT_QUERY_CAPT :{WHITE}Modificar a altura do terreno plano # Map generation progress STR_GENERATION_WORLD :{WHITE}Gerando Mundo... @@ -4526,7 +4526,7 @@ STR_REFIT_AIRCRAFT_REFIT_TOOLTIP :{BLACK}Adaptar # Order view STR_ORDERS_CAPTION :{WHITE}{VEHICLE} (Ordens) STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horários -STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visuallização de horários +STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de horários STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - clique em uma ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem STR_ORDER_INDEX :{COMMA}:{NBSP} diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 0c423ab12c..e03ed82e41 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -329,8 +329,8 @@ STR_UNITS_PERIODS :{NUM}{NBSP}πε # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Φιλτράρισμα λίστας: -STR_LIST_FILTER_OSKTITLE :{BLACK}Εισαγώγη κειμένου για φιλτράρισμα -STR_LIST_FILTER_TOOLTIP :{BLACK}Εισάγετε μια λέξη για φιλτράρισμα της λίστας +STR_LIST_FILTER_OSKTITLE :{BLACK}Εισαγώγη μιας ή περισσότερων λέξεων για φιλτράρισμα +STR_LIST_FILTER_TOOLTIP :{BLACK}Εισαγώγη μιας ή περισσότερων λέξεων για φιλτράρισμα της λίστας STR_TOOLTIP_GROUP_ORDER :{BLACK}Επιλέξτε κατάταξη ομαδοποίησης STR_TOOLTIP_SORT_ORDER :{BLACK}Επιλογή σειράς ταξινόμησης (καθοδικά/ανοδικά) @@ -350,7 +350,7 @@ STR_TOOLTIP_RESIZE :{BLACK}Κάντ STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Εναλλαγή μεγάλου/μικρού παραθύρου STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Μπάρα Κύλισης - μετακινεί την λίστα πάνω/κάτω STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Μπάρα κίνησης - κινεί τη λίστα αριστερά/δεξιά -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Κατεδάφιση κτιρίων κλπ. σε συγκεκριμένο τετράγωνο. Με Ctrl επιλέγεται μια επιφάνεια διαγώνια. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Κατεδάφιση κτιρίων κλπ. σε συγκεκριμένο τετράγωνο. Ctrl+Κλικ για διαγώνια επιλογή. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο # Show engines button ###length VEHICLE_TYPES @@ -442,8 +442,8 @@ STR_GOTO_ORDER_VIEW_TOOLTIP :{BLACK}Ανοί ###length 31 STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Παύση παιχνιδιού STR_TOOLBAR_TOOLTIP_FORWARD :{BLACK}Γρήγορη ταχύτητα παιχνιδιού -STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Επιλογές -STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Αποθήκευση, εγκατάλειψη, έξοδος +STR_TOOLBAR_TOOLTIP_OPTIONS :{BLACK}Επιλογές και ρυθμίσεις +STR_TOOLBAR_TOOLTIP_SAVE_GAME_ABANDON_GAME :{BLACK}Αποθήκευση, φόρτωση ή εγκατάλειψη παιχνιδιού, έξοδος από το πρόγραμμα STR_TOOLBAR_TOOLTIP_DISPLAY_MAP :{BLACK}Εμφάνιση χάρτη, επιπλέον παραθύρου προβολής, ροής εμπορευμάτων ή λίστας πινακίδων STR_TOOLBAR_TOOLTIP_DISPLAY_TOWN_DIRECTORY :{BLACK}Εμφάνιση καταλόγου πόλεων ή ίδρυση πόλης STR_TOOLBAR_TOOLTIP_DISPLAY_SUBSIDIES :{BLACK}Εμφάνιση λίστας χρηματοδοτήσεων @@ -454,7 +454,7 @@ STR_TOOLBAR_TOOLTIP_DISPLAY_STORY_BOOK :{BLACK}Εμφά STR_TOOLBAR_TOOLTIP_DISPLAY_GOALS_LIST :{BLACK}Εμφάνιση λίστας στόχων STR_TOOLBAR_TOOLTIP_DISPLAY_GRAPHS :{BLACK}Εμφάνιση εταιρικών γραφημάτων και ποσοστών πληρωμής φορτίου STR_TOOLBAR_TOOLTIP_DISPLAY_COMPANY_LEAGUE :{BLACK}Εμφάνιση πίνακα κατάταξης των εταιριών -STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Χρηματοδοτήστε την κατασκευή νέας βιομηχανίας +STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Εμφάνιση λίστας βιομηχανιών ή χρηματοδότηση κατασκευής νέας βιομηχανίας STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_TRAINS :{BLACK}Εμφάνιση λίστας με τα τραίνα της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_ROAD_VEHICLES :{BLACK}Εμφάνιση λίστας με τα οχήματα δρόμου της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων STR_TOOLBAR_TOOLTIP_DISPLAY_LIST_OF_COMPANY_SHIPS :{BLACK}Εμφάνιση λίστας με τα πλοία της εταιρίας. Με Ctrl+Κλικ εναλλάσσεται η εμφάνιση/απόκρυψη των ομάδων οχημάτων @@ -466,10 +466,10 @@ STR_TOOLBAR_TOOLTIP_BUILD_ROADS :{BLACK}Κατα STR_TOOLBAR_TOOLTIP_BUILD_TRAMWAYS :{BLACK}Κατασκευή τροχιοδρόμων STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Κατασκευή υδάτινης διαδρομής STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Κατασκευάστε αεροδρόμια -STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Ανοίξτε την μπάρα εργαλείων μορφοποίησης εδάφους για ανύψωση/βύθιση γης, δενδροφύτευση, κλπ. +STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Ανοίξτε την μπάρα εργαλείων μορφοποίησης εδάφους, δενδροφύτευσης ή τοποθέτησης σήματος STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Εμφάνιση παραθύρου ήχου/μουσικής -STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος/αναφοράς ειδήσεων, επιλογές μηνυμάτων -STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Πληροφορίες περιοχής, κονσόλα, αποσφαλμάτωση δέσμης ενεργειών, φωτογραφίες οθόνης, περί του OpenTTD +STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Εμφάνιση τελευταίου μηνύματος/αναφοράς ειδήσεων, ιστορικό μηνυμάτων ή διαγραφή όλων των μηνυμάτων +STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Πληροφορίες περιοχής, μενού φωτογραφίιών οθόνης, περί του OpenTTD ή εργαλεία προγραμματιστή STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Εναλλάγη μπαρών εργασίας # Extra tooltips for the scenario editor toolbar @@ -701,7 +701,7 @@ STR_GRAPH_OPERATING_PROFIT_CAPTION :{WHITE}Γράφ STR_GRAPH_INCOME_CAPTION :{WHITE}Γράφημα Εισοδήματος STR_GRAPH_CARGO_DELIVERED_CAPTION :{WHITE}Μονάδες φορτίου που παραδόθηκαν STR_GRAPH_COMPANY_PERFORMANCE_RATINGS_CAPTION :{WHITE}Ποσοστά απόδοσης εταιρίας (μέγιστη τιμή=1000) -STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Αξία εταιρίας +STR_GRAPH_COMPANY_VALUES_CAPTION :{WHITE}Γράφημα αξίας εταιρίας STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLACK}Τελευταία 72 λεπτά @@ -865,7 +865,7 @@ STR_SMALLMAP_LEGENDA_AIRCRAFT :{TINY_FONT}{BLA STR_SMALLMAP_LEGENDA_TRANSPORT_ROUTES :{TINY_FONT}{BLACK}Διαδρομές Μεταφορών STR_SMALLMAP_LEGENDA_FOREST :{TINY_FONT}{BLACK}Δάσος STR_SMALLMAP_LEGENDA_RAILROAD_STATION :{TINY_FONT}{BLACK}Σιδηροδρομικός Σταθμός -STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Περιοχή Φόρτωσης Φορτηγών +STR_SMALLMAP_LEGENDA_TRUCK_LOADING_BAY :{TINY_FONT}{BLACK}Σταθμός Φορτηγών STR_SMALLMAP_LEGENDA_BUS_STATION :{TINY_FONT}{BLACK}Στάση Λεωφορείου STR_SMALLMAP_LEGENDA_AIRPORT_HELIPORT :{TINY_FONT}{BLACK}Αεροδρόμιο/Ελικοδρόμιο STR_SMALLMAP_LEGENDA_DOCK :{TINY_FONT}{BLACK}Λιμάνι @@ -949,7 +949,7 @@ STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}Η {STRING} κλείστηκε από τους πιστωτές της και όλα τα περιουσιακά στοιχεία της εκποιήθηκαν! STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Ίδρυση νέας εταιρίας μεταφορών! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}Η {STRING} ξεκινά τις κατασκευές κοντά στην πόλη {TOWN}! -STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}Η {STRING} εξαγοράστηκε από την {STRING}! +STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}Η {STRING} εξαγοράστηκε από την {STRING} για ένα μη ανακοινώσιμο ποσό! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}({G 0 Διευθυντής Διευθύντρια ""}) STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}Η {STRING} χορήγεισε την κατασκεύη της νέας πόλης {TOWN}! @@ -1138,7 +1138,7 @@ STR_GAME_OPTIONS_VIDEO_VSYNC_TOOLTIP :{BLACK}Τσεκ STR_GAME_OPTIONS_VIDEO_DRIVER_INFO :{BLACK}Τρέχον οδηγός: {STRING} STR_GAME_OPTIONS_GUI_SCALE_FRAME :{BLACK}Μέγεθος διεπαφής -STR_GAME_OPTIONS_GUI_SCALE_TOOLTIP :{BLACK}Σύρετε το κουμπί για να θέσετε μέγεθος διεπαφής. Κρατήστε πατημένο το Ctrl για συνεχής αλλαγή +STR_GAME_OPTIONS_GUI_SCALE_TOOLTIP :{BLACK}Σύρετε το κουμπί για να ορίσετε το μέγεθος του περιβάλλοντος διεπαφής. Ctrl+Σύρσιμο για συνεχή προσαρμογή STR_GAME_OPTIONS_GUI_SCALE_AUTO :{BLACK}Αυτόματη εντόπιση μεγέθους STR_GAME_OPTIONS_GUI_SCALE_AUTO_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτάκι για να ανιχνεύεται το μέγεθος της διεπαφής αυτόματα @@ -1146,9 +1146,9 @@ STR_GAME_OPTIONS_GUI_SCALE_BEVELS :{BLACK}Κλίσ STR_GAME_OPTIONS_GUI_SCALE_BEVELS_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτί για να αλλάζει μέγεθος το περίγραμμα με βάση το μέγεθος της διεπαφής STR_GAME_OPTIONS_GUI_FONT_SPRITE :{BLACK}Χρήση παραδοσιακής γραμματοσειράς -STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Επιλέξτε αυτό το κουτάκι εάν προτιμάτε να χρησιμοποιήσετε την παραδοσιακή γραμματοσειρά σταθερού μεγέθους. -STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Γραμματοσειρά με εξομάλυνση εμφάνισης -STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτάκι για γραμματοσειρά με εξομάλυνση εμφάνισης. +STR_GAME_OPTIONS_GUI_FONT_SPRITE_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτάκι εάν προτιμάτε να χρησιμοποιήσετε την παραδοσιακή γραμματοσειρά σταθερού μεγέθους +STR_GAME_OPTIONS_GUI_FONT_AA :{BLACK}Εξομάλυνση εμφάνισης γραμματοσειράς +STR_GAME_OPTIONS_GUI_FONT_AA_TOOLTIP :{BLACK}Τσεκάρετε αυτό το κουτάκι για εξομάλυνση εμφάνισης γραμματοσειράς STR_GAME_OPTIONS_GUI_SCALE_1X :1x STR_GAME_OPTIONS_GUI_SCALE_2X :2x @@ -1172,11 +1172,11 @@ STR_GAME_OPTIONS_REFRESH_RATE_ITEM :{NUM}Hz STR_GAME_OPTIONS_REFRESH_RATE_WARNING :{WHITE}Ρυθμοί ανανέωσης μεγαλύτεροι από 60Hz μπορεί να μειώσουν την απόδοση. STR_GAME_OPTIONS_BASE_GRF :{BLACK}Βασικό σετ γραφικών -STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Επιλογή του βασικού σετ γραφικών που θα χρησιμοποιηθεί +STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Επιλογή του βασικού σετ γραφικών που θα χρησιμοποιηθεί (δεν αλλάζει μέσα από ένα παιχνίδι, μόνο από το κεντρικό μενού) STR_GAME_OPTIONS_BASE_GRF_DESCRIPTION_TOOLTIP :{BLACK}Επιπλέον πληροφορίες σχετικά με το βασικό σετ γραφικών STR_GAME_OPTIONS_BASE_SFX :{BLACK}Σετ βασικών ήχων -STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Επιλέξτε τους βασικούς ήχους που θα χρησιμοποιήσετε +STR_GAME_OPTIONS_BASE_SFX_TOOLTIP :{BLACK}Επιλογή των βασικών ήχων που θα χρησιμοποιηθούν (δεν αλλάζει μέσα από ένα παιχνίδι, μόνο από το κεντρικό μενού) STR_GAME_OPTIONS_BASE_SFX_DESCRIPTION_TOOLTIP :{BLACK}Επιπλέον πληροφορίες σχετικά με τους βασικούς ήχους STR_GAME_OPTIONS_BASE_MUSIC :{BLACK}Βασικό σετ μουσικής @@ -1296,7 +1296,7 @@ STR_TERRAIN_TYPE_CUSTOM_VALUE :Προσαρμ STR_CITY_APPROVAL_LENIENT :Ήπειο STR_CITY_APPROVAL_TOLERANT :Υπομονετική STR_CITY_APPROVAL_HOSTILE :Εχθρική -STR_CITY_APPROVAL_PERMISSIVE :Ανεκτική +STR_CITY_APPROVAL_PERMISSIVE :Ανεκτική (χωρίς επίδραση σε ενέργειες της εταιρίας) STR_WARNING_NO_SUITABLE_AI :{WHITE}Δεν είναι διαθέσιμο κανένα κατάλληλο Al...{}Μπορείτε να κατεβάσετε AIs μέσω του συστήματος «Διαδικτυακού Περιεχομένου» @@ -1400,7 +1400,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Κόστη οι STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Θέτει το επίπεδο κόστους για αγορές και οικοδομές STR_CONFIG_SETTING_RECESSIONS :Υφέσεις: {STRING} -STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Όταν είναι ενεργοποιημένο, μπορεί να υπάρξουν υφέσεις κάθε λίγα χρόνια. Κατά τη διάρκεια μιας ύφεσης, όλη η παραγωγή είναι πολύ χαμηλότερη (επιστρέφει στο προηγούμενο επίπεδο όταν τελειώσει η ύφεση) +STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Όταν είναι ενεργοποιημένο, ενδέχεται περιοδικά να υπάρχουν υφέσεις. Κατά τη διάρκεια μιας ύφεσης, όλη η παραγωγή είναι πολύ χαμηλότερη (επιστρέφει στο προηγούμενο επίπεδο όταν τελειώσει η ύφεση) STR_CONFIG_SETTING_TRAIN_REVERSING :Απαγορεύεται η αντιστροφή τρένων στους σταθμούς: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Όταν είναι ενεργοποιημένο, τα τρένα δεν θα κάνουν όπισθεν σε μη-τελικούς σταθμούς, ακόμα και εάν υπάρχει κοντινότερη διαδρομή προς τον επόμενή τους προορισμό όταν κάνουν όπισθεν @@ -1425,7 +1425,7 @@ STR_CONFIG_SETTING_CATCHMENT :Επιτρέπ STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Διαφορετικοί σταθμοί και αεροδρόμια έχουν περιοχές κάλυψης διαφορετικού μεγέθους STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Οι σταθμοί της εταιρίας μπορούν να εξυπηρετήσεουν βιομηχανίες με κοντινούς ουδέτερους σταθμούς: {STRING} -STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Όταν είναι ενεργοποιημένο, βιομηχανίες με ενσωματωμένους σταθμούς (όπως Πλατφόρμες Πετρελαίου) μπορούν να εξυπηρετούνται από κοντινούς σταθμούς της εταιρίας. Όταν είναι απενεργοποιημένο, οι βιομηχανίες αυτές μπορούν να εξυπηρετούνται μόνο από τους ενσωματωμένους σταθμούς τους. Κοντινοί σταθμοί της εταιρίας δεν θα μπορούν να τους εξυπηρετούν, ούτε και ο ενσωματωμένος σταθμός θα μπορεί να εξυπηρετήσει οτιδήποτε άλλο εκτός από τη βιομηχανία. +STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Όταν είναι ενεργοποιημένο, βιομηχανίες με ενσωματωμένους σταθμούς (όπως Πλατφόρμες Πετρελαίου) μπορούν να εξυπηρετούνται από κοντινούς σταθμούς της εταιρίας. Όταν είναι απενεργοποιημένο, οι βιομηχανίες αυτές μπορούν να εξυπηρετούνται μόνο από τους ενσωματωμένους σταθμούς τους. Κοντινοί σταθμοί της εταιρίας δεν θα μπορούν να τους εξυπηρετούν, ούτε και ο ενσωματωμένος σταθμός θα μπορεί να εξυπηρετήσει οτιδήποτε άλλο εκτός από τη βιομηχανία STR_CONFIG_SETTING_EXTRADYNAMITE :Επιτρέπεται η αφαίρεση περισσότερων ιδιοκτησιών των πολέων: {STRING} STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Είναι ευκολότερη η αφαίρεση υποδομών και κτιρίων που κατέχονται από την πόλη @@ -1451,10 +1451,10 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Κλίση εδ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Η κλίση ενός κεκλιμένου τετραγωνίδιου για τα οδικά οχήματα. Μεγαλύτερες τιμές καθιστούν δυσκολότερο το ανέβασμα λόφων STR_CONFIG_SETTING_FORBID_90_DEG :Απαγόρευση στα τρένα να κάνουν στροφές 90°: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Στροφές 90 μοιρών προκύπτουν όταν μια οριζόντια σιδηροτροχιά ακολουθείται από μια κάθετη στο επόμενο τετραγωνίδιο, κάνοντας το τρένο να στρίψει κατά 90 μοίρες όταν αλλάζει τετραγωνίδιο, αντί για τις συνηθισμένες 45 μοίρες σε άλλους συνδυασμούς σιδηροτροχιών. Αυτό έχει επίσης εφαρμογή στην ακτίνα στροφής των πλοίων +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Στροφές 90 μοιρών προκύπτουν όταν μια οριζόντια σιδηροτροχιά ακολουθείται από μια κάθετη στο επόμενο τετραγωνίδιο, κάνοντας το τρένο να στρίψει κατά 90 μοίρες όταν αλλάζει τετραγωνίδιο, αντί για τις συνηθισμένες 45 μοίρες σε άλλους συνδυασμούς σιδηροτροχιών STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Να επιτρέπεται η συνένωση μη παρακείμενων σταθμών: {STRING} -STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Επιτρέπεται η προσθήκη τμημάτων σε σταθμό χωρίς αυτά να αγγίζουν τα ήδη υπάρχοντα τμήματα. Χρειάζεται Ctrl+Κλικ κατά την τοποθέτηση των νέων τμημάτων +STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Επιτρέπεται η προσθήκη τμημάτων σε σταθμό χωρίς αυτά να αγγίζουν τα ήδη υπάρχοντα τμήματα, με Ctrl+Κλικ κατά την τοποθέτηση των νέων τμημάτων STR_CONFIG_SETTING_INFLATION :Πληθωρισμός: {STRING} STR_CONFIG_SETTING_INFLATION_HELPTEXT :Ενεργοποίηση του πληθωρισμού στην οικονομία, όπου τα κόστη αυξάνονται ελάχιστα ταχύτερα από τις πληρωμές @@ -1500,7 +1500,7 @@ STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Οι νέες STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Κανονικά, τα οχήματα σταματούν σε κάθε σταθμό που περνούν. Ενεργοποιώντας αυτήν τη ρύθμιση, δεν θα σταματούν σε κανένα σταθμό που θα βρει στη διαδρομή τους προς τον τελικό προορισμό. Σημείωστε πως αυτή η ρύθμιση ορίζει μόνο μια καθορισμένη τιμή για νέες εντολές. Ειδικές εντολές μπορούν να δοθούν για οποιαδήποτε συμπεριφορά, άσχετα από την προκαθορισμένη STR_CONFIG_SETTING_STOP_LOCATION :Οι εντόλες νέων τρένων διορίζουν ότι σταματάνε εξ ορισμού στο {STRING} της πλατφόρμας -STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Το προεπιλεγμένο σημείο όπου θα σταματούν τα τρένα στην πλατφόρμα . Το «κοντινό άκρο» σημαίνει κοντά στο σημείο εισόδου, «Μέση» σημαίνει στο μέσο της πλατφόρμας και «μακρινό άκρο» σημαίνει στο άλλο άκρο από το σημείο εισόδου. Σημειώστε ότι αυτή η ρύθμιση ορίζει μόνο την προκαθορισμένη τιμή για νέες εντολές. Παρ' όλα αυτά, είναι δυνατό να δοθούν διαφορετικές εντολές για οποιαδήποτε συμπεριφορά. +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Ορισμός προεπιλεγμένου σημείου που θα σταματούν τα τρένα στην πλατφόρμα. Το «κοντινό άκρο» σημαίνει κοντά στο σημείο εισόδου, «μέση» σημαίνει στο μέσο της πλατφόρμας και «μακρινό άκρο» σημαίνει στο άλλο άκρο από το σημείο εισόδου. Σημειώστε ότι αυτή η ρύθμιση ορίζει μόνο την προεπιλεγμένη τιμή για νέες εντολές. Οι μεμονωμένες εντολές μπορούν να έχουν τη δική τους θέση στάσης κάνοντας κλικ πάνω στο κείμενο της εντολής ###length 3 STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :κοντινό άκρο STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :στη μέση @@ -1550,8 +1550,8 @@ STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Κανονικ STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR :Επιτρέπονται ισόπεδες διαβάσεις με δρόμους που ανήκουν σε ανταγωνιστές: {STRING} STR_CONFIG_SETTING_CROSSING_WITH_COMPETITOR_HELPTEXT :Επιτρέπεται η κατασκευή ισόπεδων διαβάσεων με δρόμους ή σιδηροτροχιές που ανήκουν σε ανταγωνιστές -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Επιτρέπονται οι στάσεις σε δρόμους που είναι ιδιοκτησία των πόλεων : {STRING} -STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Επιτρέπεται η κατασκευή στάσεων πάνω σε δρόμους που είναι ιδιοκτησία των πόλεων +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Επιτρέπονται οι στάσεις διέλευσης σε δρόμους που είναι ιδιοκτησία πόλεων: {STRING} +STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD_HELPTEXT :Επιτρέπεται η κατασκευή στάσεων διέλευσης σε δρόμους που είναι ιδιοκτησία πόλεων STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD :Επιτρέπονται οι στάσεις σε δρόμους που ανήκουν σε ανταγωνιστές: {STRING} STR_CONFIG_SETTING_STOP_ON_COMPETITOR_ROAD_HELPTEXT :Επιτρέπεται η κατασκευή στάσεων πάνω σε δρόμους που ανοίκουν σε ανταγωνιστές STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Δεν είναι δυνατή η αλλαγή αυτής της ρύθμισης όταν υπάρχουν οχήματα. @@ -1621,7 +1621,7 @@ STR_CONFIG_SETTING_ERRMSG_DURATION :Διάρκει STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Διάρκεια εμφάνισης μηνύματων σφάλματος σε κόκκινο παράθυρο. Σημειώστε ότι μερικά (κρίσιμα) μηνύματα σφάλματος δεν κλείνουν αυτόματα μετά από αυτόν τον χρόνο, αλλά πρέπει να κλείσουν χειροκίνητα STR_CONFIG_SETTING_HOVER_DELAY :Εμφάνιση αναδυόμενων μηνυμάτων: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Καθυστέρηση πριν την εμφάνιση των επεξηγήσεων όταν ο δείκτης του ποντικιού βρίσκεται πάνω από κάποιο στοιχείο της διεπαφής. Εναλλακτικά, οι επεξηγήσεις συνδέονται με το δεξί κουμπί του ποντικιού όταν η τιμή αυτού του πεδίου είναι 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Καθυστέρηση πριν την εμφάνιση των επεξηγήσεων όταν ο δείκτης του ποντικιού βρίσκεται πάνω από κάποιο στοιχείο της διεπαφής. Εναλλακτικά, οι επεξηγήσεις συνδέονται με το δεξί κουμπί του ποντικιού όταν η τιμή αυτού του πεδίου είναι 0 STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Ο δείκτης του ποντικιού να βρίσκεται από πάνω για {COMMA} δευτερόλεπτ{P 0 ο α} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Δεξί κουμπί @@ -1633,8 +1633,8 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Πάχος γρ 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_SHOW_CARGO_IN_LISTS :Εμφάνιση όλων των αποδεκτών φορτίων οχημάτων στις λίστες εικονίδιων {STRING} +STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT :Προσθήκη μιας γραμμής στο παράθυρο κατασκευής οχήματος, στην οποία εμφανίζεται το NewGRF από το οποίο προέρχεται το επιλεγμένο όχημα +STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Εμφάνιση των αποδεκτών φορτίων των οχημάτων στα παράθυρα της λίστας: {STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :Όταν είναι ενεργοποιημένο, το μεταφέρσημο φορτίο του οχήματος θα εμφανίζεται από πάνω του στις λίστες οχημάτων STR_CONFIG_SETTING_LANDSCAPE :Τοπίο: {STRING} @@ -1647,27 +1647,27 @@ STR_CONFIG_SETTING_LAND_GENERATOR_ORIGINAL :Αυθεντι STR_CONFIG_SETTING_LAND_GENERATOR_TERRA_GENESIS :TerraGenesis STR_CONFIG_SETTING_TERRAIN_TYPE :Σχηματισμός εδάφους: {STRING} -STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(TerraGenesis μόνο) Λοφώδησ χαρακτήρας του εδάφους +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_HELPTEXT :Όριο για το πόσο μακριά από τα σύνορα του χάρτη μπορούν να κατασκευαστούν διυλιστήρια και εξέδρες πετρελαίου. Στους χάρτες νησιών, αυτό διασφαλίζει ότι βρίσκονται κοντά στην ακτή. Σε χάρτες μεγαλύτερους από 256 πλακίδια, αυτή η τιμή κλιμακώνεται προς τα πάνω STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Κορυφογραμμή χιονιού: {STRING} -STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Έλεγχος του ύψους στο οποίο ξεκινά το χιόνι στο υπαρκτικό τοπίο. Το χιόνι επηρεάζει επίσης τη δημιουργία βιομηχανιών και τις προυποθέσεις επέκτασης πόλης. Μπορεί να μεταβληθεί μόνο μέσω του Συντάκτη Σεναρίων ή αλλιώς υπολογίζεται μέσω της "κάλυψης χιονιού" +STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Έλεγχος του ύψους στο οποίο ξεκινά το χιόνι στο υποαρκτικό τοπίο. Το χιόνι επηρεάζει επίσης τη δημιουργία βιομηχανιών και τις προυποθέσεις επέκτασης πόλης. Μπορεί να μεταβληθεί μόνο μέσω του Διαχειριστή Σεναρίων ή αλλιώς υπολογίζεται μέσω της "κάλυψης χιονιού" STR_CONFIG_SETTING_SNOW_COVERAGE :Κάλυψη χιονιού: {STRING} -STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Ελέγχει την κατα προσέγγιση ποσότητα χιονιού στα υπο-αρκτικά τοπία. Το χιόνι επιρρεάζει επίσης τις απαιτήσεις παραγωγής βιομηχανιών και ανάπτυξης πόλεων. Χρησιμοποιήται μόνο κατά τη διάρκεια της παραγωγής του χάρτη. Το έδαφος που βρίσκεται κοντά στο επίπεδο της θάλασσας είναι πάντα χωρίς χιόνι +STR_CONFIG_SETTING_SNOW_COVERAGE_HELPTEXT :Ορισμός της κατα προσέγγιση ποσότητας χιονιού στα υποαρκτικά τοπία. Το χιόνι επηρεάζει επίσης τη δημιουργία βιομηχανιών και τα προαπαιτούμενα για την εξέλιξη πόλεων. Χρησιμοποιήται μόνο κατά τη διάρκεια της παραγωγής του χάρτη. Το έδαφος που βρίσκεται στο επίπεδο της θάλασσας και οι ακτές, δεν έχουν ποτέ χιόνι STR_CONFIG_SETTING_SNOW_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_DESERT_COVERAGE :Κάλυψη ερήμου: {STRING} -STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Ελέγχει την κατά προσέγγιση ποσότητα ερήμου στα τροπικά τοπία. Η έρημος επιρρεάζει επίσης την παραγωγή βιομηχανιών. Χρησιμοποιείται μόνο κατά τη διάρκεια δημιουργίας του χάρτη +STR_CONFIG_SETTING_DESERT_COVERAGE_HELPTEXT :Επιλογή της κατά προσέγγιση ποσότητας ερήμου στα τροπικά τοπία. Η έρημος επηρεάζει επίσης τη δημιουργία βιομηχανιών και τα προαπαιτούμενα για την εξέλιξη πόλεων. Χρησιμοποιείται μόνο κατά τη διάρκεια δημιουργίας του χάρτη STR_CONFIG_SETTING_DESERT_COVERAGE_VALUE :{NUM}% STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Ανωμαλία επιφάνειας (μόνο με TerraGenesis) : {STRING} -STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :(TerraGenesis μόνο) Επιλογή της συψνότητας των λόφων: Τα λεία τοπία έχουν λιγότερους, πιο πλατείς λόφους. Τα τραχιά τοπία έχουν πολλούς λόφους που μπορεί να δείχνει μονότονο +STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_HELPTEXT :Επιλογή του σχήματος και του αριθμού των λόφων: Τα λεία τοπία έχουν λιγότερους, πιο πλατείς λόφους, ενώ τα τραχιά τοπία έχουν πολλούς και μικρούς λόφους ###length 4 STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_SMOOTH :Πολύ Απαλή STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_SMOOTH :Απαλή @@ -1675,7 +1675,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :Ανώμαλη STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :Πολύ Ανώμαλη STR_CONFIG_SETTING_VARIETY :Διανομή ποικιλομορφίας: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :(TerraGenesis μόνο) Ελέγξτε εάν ο χάρτης θα περιέχει και ορεινές και πεδινές εκτάσεις. Μιας και αυτό μονάχα κάνει το χάρτη πιο επίπεδο, οι άλλες ρυθμίσιες θα πρεπει να τεθούν στο ορεινό +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Επιλέξτε αν ο χάρτης περιέχει και βουνά και επίπεδες περιοχές. Όσο μεγαλύτερη είναι η ποικιλία, τόσο περισσότερες οι υψομετρικές διαφορές μεταξύ ορεινών και επίπεδων περιοχών STR_CONFIG_SETTING_RIVER_AMOUNT :Πλήθος ποταμών: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Επιλέξτε πόσα ποτάμια να δημιουργηθούν @@ -1722,7 +1722,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :Σκούρο π STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :Βιολετί STR_CONFIG_SETTING_LINKGRAPH_COLOURS :Χρώμα επίστρωσης ροής φορτίου: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Θέσημο της παλέτας χρωμάτων που θα χρησιμοποιηθούν για την επίστρωση ροής φορτίου +STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Ορισμός της παλέτας χρωμάτων που θα χρησιμοποιηθούν για την επίστρωση ροής φορτίου ###length 4 STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED :Πράσινο σε κόκκινο (Αρχικό) STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_BLUE :Πράσινο σε μπλέ @@ -1730,7 +1730,7 @@ STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREY_TO_RED :Γκρι σε STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREYSCALE :Ασπρόμαυρο STR_CONFIG_SETTING_SCROLLMODE :Συμπεριφορά κύλισης του παραθύρου εμφάνισης: {STRING} -STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Συμπεριφορά κατά την κύλιση του χάρτη +STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Συμπεριφορά κατά την κύλιση του χάρτη. Οι επιλογές "κλειδωμένης θέσης ποντικιού" δεν λειτουργούν σε όλα τα συστήματα, όπως εκδόσεις που βασίζονται στον ιστό, οθόνες αφής, Linux με Wayland και άλλα ###length 4 STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :Μετακίνηση μικρού χάρτη με ΔΠΠ, θέση ποντικιού κλειδωμένη STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :Μετακίνηση χάρτη με ΔΠΠ, θέση ποντικιού κλειδωμένη @@ -1846,7 +1846,7 @@ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Αυτόματ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Αυτόματη αφαίρεση σηματοδοτών κατά τη διάρκεια κατασκευής σιδηροτροχιών εάν οι σηματοδότες είναι στη διαδρομή. Σημειώστε ότι αυτό μπορεί δυνητικά να οδηγήσει σε συγκρούσεις τρένων STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Όριο ταχύτητας γρήγορης κίνησης: {STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Όριο ταχύτητας του παιχνιδιού όταν είναι ενεργοποιημένη η γρήγορη ταχύτητα. 0 = κανένα όριο (όσο γρήγορα επιτρέπει ο υπολογιστής σας). Τιμές κάτω του 100% επιβραδύνουν το παιχνίδι. Το ανώτατο όριο εξαρτάται από τις προδιαγραφές του υπολογιστή σας και μπορεί να μεταβάλλεται ανάλογα με το παιχνίδι. +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Όριο ταχύτητας του παιχνιδιού όταν είναι ενεργοποιημένη η γρήγορη ταχύτητα. 0 = κανένα όριο (όσο γρήγορα επιτρέπει ο υπολογιστής σας). Τιμές κάτω του 100% επιβραδύνουν το παιχνίδι. Το ανώτατο όριο εξαρτάται από τις προδιαγραφές του υπολογιστή σας και μπορεί να μεταβάλλεται ανάλογα με το παιχνίδι STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% της κανονικής ταχύτητας παιχνιδιού ###setting-zero-is-special STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Χωρίς όριο (όσο γρήγορα επιτρέπει ο υπολογιστής σας) @@ -1910,11 +1910,11 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Επιτρέπ STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#εντολών πριν την παύση δεσμών ενεργειών: {STRING} STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Μέγιστος αριθμός βημάτων υπολογισμού που κάνει κάποιο σενάριο σε κάθε σειρά STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Μέγιστη χρήση μνήμης ανά script: {STRING} -STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Πόση μνήμη μπορεί να καταναλώσει ένα script προτού τερματιστεί αναγκαστικά. Μπορεί να χρειαστεί να αυξηθεί για μεγαλύτερους χάρτες. +STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Πόση μνήμη μπορεί να καταναλώσει ένα script προτού τερματιστεί αναγκαστικά. Μπορεί να χρειαστεί να αυξηθεί για μεγαλύτερους χάρτες STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB STR_CONFIG_SETTING_SERVINT_ISPERCENT :Τα διαστήματα μεταξύ συντήρησης είναι σε ποσοστά: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Επιλέξτε εάν η επισκευή των οχημάτων εξαρτάται από τον χρόνο που πέρασε από την τελευταία επισκευή ή από την μείωση της αξιοπιστίας κατά ένα συγκεκριμένο ποσοστό της μέγιστης αξιοπιστίας +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Όταν είναι ενεργοποιημένο, τα οχήματα προσπαθούν να κάνουν σέρβις όταν η αξιοπιστία τους πέσει κατά ένα συγκεκριμένο ποσοστό της μέγιστης αξιοπιστίας.{}{}Για παράδειγμα, εάν η μέγιστη αξιοπιστία ενός οχήματος είναι 90% και το διάστημα σέρβις είναι 20%, το όχημα θα προσπαθήσει να κάνει σέρβις όταν φτάσει το 72% αξιοπιστίας STR_CONFIG_SETTING_SERVINT_TRAINS :Προκαθορισμένο διάστημα μεταξύ επισκευών για τα τρένα: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα οχήματα τρένων, όταν δεν δίνεται άλλο διάστημα για το όχημα @@ -1924,7 +1924,7 @@ STR_CONFIG_SETTING_SERVINT_AIRCRAFT :Προκαθο STR_CONFIG_SETTING_SERVINT_AIRCRAFT_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα αεροσκάφη, όταν δεν δίνεται άλλο διάστημα για το αεροσκάφος STR_CONFIG_SETTING_SERVINT_SHIPS :Προκαθορισμένο διάστημα μεταξύ επισκευών για τα πλοία: {STRING} STR_CONFIG_SETTING_SERVINT_SHIPS_HELPTEXT :Ορίστε το προκαθορισμένο διάστημα μεταξύ συντηρήσεων για τα νέα πλοία, όταν δεν δίνεται άλλο διάστημα για το πλοίο -STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}ημέρ{P 0 α ες}/% +STR_CONFIG_SETTING_SERVINT_VALUE :{COMMA}{NBSP}Ημέρ{P 0 α ες}/Λεπτ{P ό ά}/% ###setting-zero-is-special STR_CONFIG_SETTING_SERVINT_DISABLED :Απενεργοποιημένο @@ -2003,7 +2003,7 @@ STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Ποτέ STR_CONFIG_SETTING_ECONOMY_TYPE :Τύπος οικονομίας: {STRING} -STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Η ομαλή οικονομία κάνει διαφοροποιήσεις στην παραγωγή πιο συχνά, και σε μικρότερα βήματα. Η παγωμένη οικονομία σταματά τις διαφοροποιήσεις στην παραγωγή και το κλείσιμο των βιομηχανιών. Αυτή η ρύθμιση μπορεί να μην έχει καμία αλλαγή εάν οι τύποι βιομηχανιών προσφέρονται από ένα NewGRF. +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :Η ομαλή οικονομία κάνει διαφοροποιήσεις στην παραγωγή πιο συχνά και σε μικρότερα βήματα. Η παγωμένη οικονομία σταματά τις διαφοροποιήσεις στην παραγωγή και το κλείσιμο των βιομηχανιών. Αυτή η ρύθμιση μπορεί να μην έχει καμία αλλαγή εάν οι τύποι βιομηχανιών ορίσονται από ένα NewGRF ###length 3 STR_CONFIG_SETTING_ECONOMY_TYPE_ORIGINAL :Αρχικό STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Ομαλή @@ -2047,8 +2047,8 @@ STR_CONFIG_SETTING_ALLOW_TOWN_ROADS_HELPTEXT :Επιτρέπ STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Οι πόλεις επιτρέπουν το κτίσιμο ισόπεδων διασταυρώσεων: {STRING} STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Ενεργοποιώντας αυτήν τη ρύθμιση επιτρέπει στις πόλεις να κατασκευάζουν επίπεδες διαβάσεις -STR_CONFIG_SETTING_NOISE_LEVEL :Επιτρέπεται η πόλη να ελέγχει το επίπεδο θορύβου των αεροδρομίων: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Με αυτήν τη ρύθμιση απενεργοποιημένη, γίνεται να υπάρχουν δύο αεροδρόμια σε κάθε πόλη. Με αυτήν τη ρύθμιση ενεργοποιημένη, ο αριθμός των αεροδρομίων σε μια πόλη περιορίζεται από την αποδοχή του θορύβου από την πόλη, η οποία εξαρτάται από τον πληθυσμό, το μέγεθος του αεροδρομίου και την απόστασή του από την πόλη +STR_CONFIG_SETTING_NOISE_LEVEL :Περιορισμός τοποθέτησης αεροδρομίων ανάλογα με το επίπεδο θορύβου: {STRING} +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :Επιτρέπεται στις πόλεις να μπλοκάρουν την κατασκευή αεροδρομίων με βάση το επίπεδο αποδοχής θορύβου, το οποίο βασίζεται στον πληθυσμό της πόλης και στο μέγεθος και την απόσταση του αεροδρομίου. Εάν αυτή η ρύθμιση είναι απενεργοποιημένη, οι πόλεις επιτρέπουν μόνο δύο αεροδρόμια, εκτός εάν η στάση της τοπικής αρχής έχει οριστεί σε "Επιτρεπτή" STR_CONFIG_SETTING_TOWN_FOUNDING :Ίδρυση πόλεων στο παιχνίδι: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Ενεργοποιώντας αυτήν τη ρύθμιση επιτρέπει στους παίκτες να ιδρύσουν νέες πόλεις στο παιχνίδι @@ -2099,7 +2099,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Η μεγαλύτερη ανάλυση που χρησιμοποιούν τα sprites: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Περιορίστε την μέγιστη ανάλυση για τα sprites. Περιορίζοντας την ανάλυση θα αποφύγετε την χρήση γραφικών υψηλής ανάλυσης ακόμα και όταν είναι διαθέσιμα. Αυτό μπορεί να βοηθήσει να κρατήσετε την εμφάνιση του παιχνιδιού ενιαία όταν χρησιμοποιείτε μία μίξη από GRF αρχεία με και χωρίς γραφικά υψηλής ανάλυσης. +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Περιορίστε την μέγιστη ανάλυση για τα sprites. Περιορίζοντας την ανάλυση των sprites, θα αποφύγετε την χρήση γραφικών υψηλής ανάλυσης ακόμα και όταν αυτά είναι διαθέσιμα. Αυτό μπορεί να βοηθήσει να κρατήσετε την εμφάνιση του παιχνιδιού ενιαία όταν χρησιμοποιείτε μία μίξη από GRF αρχεία με και χωρίς γραφικά υψηλής ανάλυσης ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2128,25 +2128,25 @@ STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Χρήση το STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Χρόνος που απαιτείται για κάθε επανυπολογισμό ενός στοιχείου γραφήματος συνδέσμου. Όταν ξεκινά ένας επανυπολογισμός, δημιουργείται ένα νήμα στο οποίο επιτρέπεται να τρέξει για αυτόν τον αριθμό δευτερολέπτων. Σε όσο πιο μικρή τιμή το ορίσετε, τόσο πιο πιθανό είναι να μην έχει τελειώσει το νήμα στον χρόνο που έχει προβλεφθεί. Στη συνέχεια, το παιχνίδι σταματά μέχρι να είναι σε "καθυστέρηση" ("lag"). Σε όσο πιο μεγάλη τιμή το ορίσετε, τόσο περισσότερος χρόνος θα χρειαστεί για να ενημερωθεί η διανομή όταν αλλάζουν οι διαδρομές STR_CONFIG_SETTING_DISTRIBUTION_PAX :Τρόπος διανομής επιβατών: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου ο ίδιος αριθμός επιβατών θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετος αριθμός επιβατών μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για τους επιβάτες. +STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου ο ίδιος αριθμός επιβατών θα σταλεί από έναν σταθμό Α σε ένα σταθμό Β όσο και από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετος αριθμός επιβατών μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για τους επιβάτες STR_CONFIG_SETTING_DISTRIBUTION_MAIL :Τρόπος διανομής αλληλογραφίας: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου η ίδια ποσότητα αλληλογραφίας θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αλληλογραφίας μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για την αλληλογραφία. +STR_CONFIG_SETTING_DISTRIBUTION_MAIL_HELPTEXT :Το «συμμετρικό» σημαίνει ότι περίπου η ίδια ποσότητα αλληλογραφίας θα σταλεί από έναν σταθμό Α σε ένα σταθμό Β όσο και από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αλληλογραφίας μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για την αλληλογραφία STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED :Τρόπος διανομής για το ΘΩΡΑΚΙΣΜΕΝΟ είδος φορτίου: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Ο ΘΩΡΑΚΙΣΜΕΝΟΣ τύπος φορτίου περιέχει πολύτιμα στο εύκρατο, διαμάντια στο υποτροπικό ή χρυσό στο υποαρκτικό κλίμα. Τα NewGRF μπορούν να το αλλάξουν αυτό. Το «συμμετρικό» σημαίνει ότι περίπου η ίδια ποσότητα φορτίου θα σταλέι από έναν σταθμό Α σε ένα σταθμό Β όσο από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αυτού του φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για το συκγεκριμένο τύπο φορτίου. Συνιστάται η χρήση του ασυμμετρικού ή χειροκίνητου μοντέλου ο΄ταν παίζετε στο υποαρκτικό κλίμα, καθώς οι τράπεζες δε θα στέλνουν χρυσό πίσω στα χρυσωρυχεία. Για το εύκρατο ή υποτροπικό κλίμα μπορείτε επίσης να χρησιμοιήσετε το συμμετρικό καθώς οι τράπεζες θα στέλνουν πολύτιμα πίσω στην τράπεζα προέλευσης. +STR_CONFIG_SETTING_DISTRIBUTION_ARMOURED_HELPTEXT :Ο ΘΩΡΑΚΙΣΜΕΝΟΣ τύπος φορτίου περιέχει πολύτιμα στο εύκρατο, διαμάντια στο υποτροπικό ή χρυσό στο υποαρκτικό κλίμα. Τα NewGRF ενδέχεται να το αλλάξουν αυτό. Το «συμμετρικό» σημαίνει ότι θα σταλεί περίπου η ίδια ποσότητα φορτίου από έναν σταθμό Α σε ένα σταθμό Β όσο και από τον Β στον Α. Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αυτού του φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για το συγκεκριμένο τύπο φορτίου. Συνιστάται η χρήση του «ασυμμετρικού» ή «χειροκίνητου» μοντέλου όταν παίζετε στο υποαρκτικό ή υποτροπικό κλίμα, καθώς οι τράπεζες δέχονται μόνο εμπρόρευμα σε αυτά τα κλίματα. Για το εύκρατο κλίμα μπορείτε επίσης να χρησιμοιήσετε το «συμμετρικό» καθώς οι τράπεζες θα στέλνουν πολύτιμα πίσω στην τράπεζα προέλευσης. STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT :Τρόπος διανομής άλλων ειδών φορτίου: {STRING} -STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες αυτού του φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για αυτά τα φορτία. +STR_CONFIG_SETTING_DISTRIBUTION_DEFAULT_HELPTEXT :Το «ασυμμετρικό» σημαίνει ότι αυθαίρετες ποσότητες φορτίου μπορεί να σταλούν σε οποιαδήποτε εκ των δύο κατευθύνσεων. Το «χειροκίνητο» σημαίνει ότι καμία αυτόματη διανομή δε θα γίνεται για αυτά τα φορτία ###length 3 STR_CONFIG_SETTING_DISTRIBUTION_MANUAL :χειροκίνητη STR_CONFIG_SETTING_DISTRIBUTION_ASYMMETRIC :μη συμμετρική STR_CONFIG_SETTING_DISTRIBUTION_SYMMETRIC :συμμετρική STR_CONFIG_SETTING_LINKGRAPH_ACCURACY :Ακρίβεια διανομής: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Όσο μεγαλύτερη ή τιμή τόσο περισσότερος χρόνος επεξεργαστή χρειάζεται για τον υπολογσιμό του γραφήματος συνδέσμου. Εάν όμως θέσετε χαμηλή τιμή, η διανομή θα είναι ανακριβής και μπορεί να παρατηρήσετε φορτία να μην στέλνονται στοθς προορισμούς που θα έπρεπε να πηγαίνουν. +STR_CONFIG_SETTING_LINKGRAPH_ACCURACY_HELPTEXT :Όσο μεγαλύτερη ή τιμή αυτή, τόσο περισσότερος χρόνος επεξεργαστή θα χρειάζεται για τον υπολογισμό του γραφήματος συνδέσμου. Αν το ορίσετε πολύ ψηλά, ενδέχεται να παρατηρήσετε καθυστερήσεις. Εάν όμως θέσετε χαμηλή τιμή, η διανομή θα είναι ανακριβής και μπορεί να παρατηρήσετε φορτία να μην στέλνονται στους προορισμούς που θα έπρεπε να πηγαίνουν STR_CONFIG_SETTING_DEMAND_DISTANCE :Επίδραση της απόστασης στη ζήτηση προϊόντων: {STRING} -STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Αν ορίσετε αυτό σε μια τιμή μεγαλύτερη από 0, η απόσταση μεταξύ ενός αρχικού σταθμού Α ενός φορτίου και ενός πιθανού προορισμού Β θα επηρεάσει το ποσό του φορτίου που θα αποσταλεί από τον Α στον Β. Όσο πιο μακριά βρίσκεται ο Β από τον Α, τόσο λιγότερο φορτίο θα αποσταλεί. Όσο πιο μεγάλη τιμή ορίσετε, θα αποστέλλεται λιγότερο φορτίο σε μακρινούς προορισμούς και περισσότερο σε κοντινούς. +STR_CONFIG_SETTING_DEMAND_DISTANCE_HELPTEXT :Αν το ορίσετε σε μια τιμή μεγαλύτερη από 0, η απόσταση μεταξύ ενός αρχικού σταθμού Α ενός φορτίου και ενός πιθανού προορισμού Β θα επηρεάσει το ποσό του φορτίου που θα αποσταλεί από τον Α στον Β. Όσο πιο μακριά βρίσκεται ο Β από τον Α, τόσο λιγότερο φορτίο θα αποσταλεί. Όσο πιο μεγάλη τιμή ορίσετε, θα αποστέλλεται λιγότερο φορτίο σε μακρινούς προορισμούς και περισσότερο σε κοντινούς STR_CONFIG_SETTING_DEMAND_SIZE :Ποσότητα επιστρεφόμενου φορτίου στη συμμετρική ρύθμιση: {STRING} -STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Θέτοντας αυτή τη ρύθμιση σε τιμή λιγότερη του 100% κάνετε τη συμμετρική διανομή να συμπεριφέρεται πιο πολύ σαν την ασυμμετρική. Λιγότερο φορτίο θα στέλνεται πίσω εαν μια συγκεκριμένη ποσότητα έχει σταλεί σε έναν σταθμό. Αν τεθεί στο 0% η συμμετρική διανομή συμπεριφέρεται ακριβώς όπως η ασυμμετρική. +STR_CONFIG_SETTING_DEMAND_SIZE_HELPTEXT :Θέτοντας αυτή τη ρύθμιση σε τιμή λιγότερη του 100% κάνετε τη συμμετρική διανομή να συμπεριφέρεται πιο πολύ σαν την ασυμμετρική. Λιγότερο φορτίο θα στέλνεται πίσω εαν μια συγκεκριμένη ποσότητα έχει σταλεί σε έναν σταθμό. Αν τεθεί στο 0% η συμμετρική διανομή συμπεριφέρεται ακριβώς όπως η ασυμμετρική STR_CONFIG_SETTING_SHORT_PATH_SATURATION :Κορεσμός σύντομων οδών πριν τη χρήση οδών μεγάλης χωρητικότητας: {STRING} STR_CONFIG_SETTING_SHORT_PATH_SATURATION_HELPTEXT :Συχνά υπάρχουν πολλαπλές οδοί μεταξύ δύο σταθμών. Η διανομή φορτίων θα κορέσει την πιο σύντομη οδό πρώτα, και μετέπειτα θα χρησιμοποιήσει τη δεύτερη συντομότερη οδό μέχρι αυτή να κορεστεί και τα λοιπά. Ο κορεσμός εξαρτάται από μια εκτίμηση της χωρητικότητας και ενδεχόμενης χρήσης. Όταν έχουν κορεστεί όλες οι οδοί, αν εξακολουθεί και υπάρχει ζήτηση, θα υπερφορτώσει όλες τις οδούς, προτιμώντας αυτές με μεγάλη χωρητικότητα. Τις περισσότερες φορές όμως, ο αλγόριθμος δεν εκτιμά σωστά την χωρητικότητα. Αυτή η ρύθμιση σάς επιτρέπει να καθορίσετε μέχρι ποιο ποσοστό πρέπει να κορεσθεί μια μικρότερη διαδρομή στο πρώτο πέρασμα πριν επιλεγεί η επόμενη μεγαλύτερη. Ρυθμίστε τη σε λιγότερο από 100% για να αποφύγετε υπερπληθυσμένους σταθμούς σε περίπτωση υπερεκτιμημένης χωρητικότητας @@ -2358,8 +2358,8 @@ STR_LIVERY_TRAIN_GROUP_TOOLTIP :{BLACK}Εμφά STR_LIVERY_ROAD_VEHICLE_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων οχημάτων δρόμου STR_LIVERY_SHIP_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων πλοίων STR_LIVERY_AIRCRAFT_GROUP_TOOLTIP :{BLACK}Εμφάνιση χρωμάτων ομάδων αεροσκαφών -STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Επιλογή του βασικού χρώματος για το επιλεγμένο θέμα. Με Ctrl+Κλικ ορίζεται το χρώμα σε κάθε θέμα -STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Επιλογή του δευτερεύοντος χρώματος για το επιλεγμένο μοτίβο. Με Ctrl+Κλικ ορίζεται το χρώμα για κάθε θέμα +STR_LIVERY_PRIMARY_TOOLTIP :{BLACK}Επιλογή του βασικού χρώματος για το επιλεγμένο θέμα. Ctrl+Κλικ για ορισμό αυτού του χρώματος για κάθε θέμα +STR_LIVERY_SECONDARY_TOOLTIP :{BLACK}Επιλογή του δευτερεύοντος χρώματος για το επιλεγμένο θέμα. Ctrl+Κλικ για ορισμό αυτού του χρώματος για κάθε θέμα STR_LIVERY_PANEL_TOOLTIP :{BLACK}Επιλέξτε το χρωματικό μοτίβο για αλλαγή ή πολλαπλά μοτίβα με Ctrl+Κλικ. Πατήστε στο κουτάκι για να επιλέξετε τη χρήση του μοτίβου STR_LIVERY_TRAIN_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες τραίνων STR_LIVERY_ROAD_VEHICLE_GROUP_EMPTY :Δεν έχουν οριστεί ομάδες οχημάτων δρόμου @@ -2522,7 +2522,7 @@ 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_VISIBILITY_LABEL :{BLACK}Ορατότητα +STR_NETWORK_START_SERVER_VISIBILITY_LABEL :{BLACK}Ορατότητα: STR_NETWORK_START_SERVER_VISIBILITY_TOOLTIP :{BLACK}Ορίζει εάν άλλοι άνθρωποι μπορούν να δουν τον server σας στην δημόσια STR_NETWORK_START_SERVER_CLIENTS_SELECT :{BLACK}{NUM} συμπαίκτ{P ης ες} STR_NETWORK_START_SERVER_NUMBER_OF_CLIENTS :{BLACK}Μέγιστος αριθμός συμμετεχόντων: @@ -2759,7 +2759,7 @@ STR_CONTENT_SEARCH_EXTERNAL_TOOLTIP :{BLACK}Ψάξτ STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER_CAPTION :{WHITE}Φεύγετε από το OpenTTD! STR_CONTENT_SEARCH_EXTERNAL_DISCLAIMER :{WHITE}Οι όροι και προϋποθέσεις για τη λήψη περιεχομένου από εξωτερικές ιστοσελίδες διαφέρουν.{}Θα πρέπει να αναφερθείτε στις εξωτερικές ιστοσελίδες για οδηγίες περί της εγκατάστασης του περιεχομένου στο OpenTTD.{}Θέλετε να συνεχίσετε; STR_CONTENT_FILTER_TITLE :{BLACK}Ετικέτα/όνομα φίλτρου: -STR_CONTENT_OPEN_URL :{BLACK}Επισκεφθείτε την ιστοσελίδα +STR_CONTENT_OPEN_URL :{BLACK}Ιστοσελίδα STR_CONTENT_OPEN_URL_TOOLTIP :{BLACK}Επισκεφθείτε την ιστοσελίδα αυτού του περιεχομένου STR_CONTENT_DOWNLOAD_CAPTION :{BLACK}Λήψη STR_CONTENT_DOWNLOAD_CAPTION_TOOLTIP :{BLACK}Έναρξη κατεβάσματος του επιλεγμένου περιεχόμενου @@ -2881,13 +2881,13 @@ STR_RAIL_TOOLBAR_MAGLEV_CONSTRUCTION_CAPTION :Κατασκε STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TRACK :{BLACK}Κατασκευή σιδηροτροχιάς. Ctrl+Κλικ για αφαίρεση σιδηροτροχιάς. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_BUILD_AUTORAIL :{BLACK}Κατασκευή σιδηροτροχιάς με χρήση της Αυτόματης Σιδηροτροχιάς. Ctrl+Κλικ για αφαίρεση σιδηροτροχιάς. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_BUILD_TRAIN_DEPOT_FOR_BUILDING :{BLACK}Κατασκευή αμαξοστάσιου (για αγορά και επισκευή τρένων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Μετατροπή σιδηροτροχιάς σε σημείο καθοδήγησης. Με Ctrl ενεργοποιείται η συνένωση σημείων καθοδήγησης. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Κατασκευή σταθμού τρένων. Ctrl+Κλικ για επιλογή άλλου σταθμού προς συνένωση. Με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL_TO_WAYPOINT :{BLACK}Μετατροπή σιδηροτροχιάς σε σημείο καθοδήγησης. Ctrl+Κλικ για επιλογή πρόσθετου σημείου καθοδήγησης για συνένωση. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_STATION :{BLACK}Κατασκευή σταθμού τρένων. Ctrl+Κλικ για επιλογή πρόσθετου σταθμού για συνένωση. Με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_SIGNALS :{BLACK}Κατασκευή σηματοδοτών. Ctrl+Κλικ για κατασκευή του εναλλακτικού στυλ σηματοδότη{}Με Κλικ+σύρσιμο κατασκευάζονται σηματοδότες κατά μήκος μιας σιδηροτροχιάς ανά το ορισμένο διάστημα. Ctrl+Κλικ+σύρσιμο για κατασκευή σηματοδοτών μέχρι την επομένη διασταύρωση, σταθμό ή σηματοδότη{}Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας σιδηρόδρομου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο STR_RAIL_TOOLBAR_TOOLTIP_BUILD_RAILROAD_TUNNEL :{BLACK}Κατασκευή τούνελ σιδηρόδρομου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης για σιδηρόδρομους, σηματοδότες, σημείων καθοδήγησης και σταθμών. Κρατώντας πατημένο το Ctrl αφαιρεί και τον σιδηρόδρομο από τα σημεία καθοδήγησης και σταθμούς -STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Μετατροπή/Αναβάθμιση του τύπου γραμμής. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_RAIL_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης σιδηροτροχιών, σηματοδοτών, σημείων καθοδήγησης και σταθμών. Ctrl+Κλικ για αφαίρεση και της σιδηροτροχιάς από σημεία καθοδήγησης και σταθμούς +STR_RAIL_TOOLBAR_TOOLTIP_CONVERT_RAIL :{BLACK}Μετατροπή/Αναβάθμιση του τύπου γραμμής. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_RAIL_NAME_RAILROAD :Σιδηρόδρομος STR_RAIL_NAME_ELRAIL :Ηλεκτροδοτημένη σιδηροτροχιά @@ -2937,7 +2937,7 @@ STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Σημα STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Συνδυαστικός Σηματοδότης (ηλεκτρικός){}Ο συνδυαστικός σηματοδότης δουλεύει απλά ως σηματοδότης εισόδου και εξόδου ταυτόχρονα. Αυτό σας επιτρέπει το κτίσιμο μεγάλων «δέντρων» με προ-σηματοδότες STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Σηματοδότης Τροχιάς (ηλεκτρικός){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Κανονικοί σηματοδότες τροχιάς μπορούν να περαστούν από την πίσω πλευρά STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Μονόδρομος Σηματοδότης Τροχιάς (ηλεκτρικός){}Ένας σηματοδότης τροχιάς επιτρέπει σε περισσότερα από ένα τρένο να είναι σε ένα κομμάτι ελέγχου την ίδια στιγμή, εάν το τρένο μπορεί να δεσμεύσει τροχιά σε ασφαλές σημείο στάσης. Μονόδρομοι σηματοδότες τροχιάς δεν μπορούν να περαστούν από την πίσω πλευρά -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Μετατροπέας Σηματοδότη{}Όταν επιλέγεται, πατώντας σε έναν υπάρχωντα σηματοδότη θα τον μετατρέψει στον επιλεγμένο τύπο και παραλλαγή σηματοδότη. Με Ctrl+Κλικ εναλλάσσεται με την υπάρχουσα παραλλαγή. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος μετατροπής +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Μετατροπή σήματος{}Κάντε κλικ σε ένα υπάρχον σήμα για να το μετατρέψετε στον επιλεγμένο τύπο και παραλλαγή. Ctrl+Click για εναλλαγή της υπάρχουσας παραλλαγής. Το Shift+Click εμφανίζει το εκτιμώμενο κόστος μετατροπής STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Απόσταση μεταξύ σηματοδοτών με σύρσιμο STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Μείωση απόστασης μεταξύ σηματοδοτών με σύρσιμο STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Αύξηση απόστασης μεταξύ σηματοδοτών με σύρσιμο @@ -2964,24 +2964,24 @@ STR_BRIDGE_TUBULAR_SILICON :Σιλικόν STR_ROAD_TOOLBAR_ROAD_CONSTRUCTION_CAPTION :{WHITE}Κατασκευή Δρόμου STR_ROAD_TOOLBAR_TRAM_CONSTRUCTION_CAPTION :{WHITE}Κατασκευή Τροχιόδρομου STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_SECTION :{BLACK}Κατασκευή τμήματος δρόμου. Ctrl+Κλικ για αφαίρεση τμήματος δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Κατασκευή κομματιού τροχιοδρόμου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση τροχιόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Κατασκευή οδικού δικτύου με χρήση της λειτουργίας Αυτόματου Δρόμου. Με Ctrl εναλλάσσεται η κατασκευή/αφαίρεση δρόμου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Κατασκευή τροχιοδρόμου με χρήση της λειτουργίας Αυτόματης Γραμμής. Το Ctrl εναλλάσσει την κατασκευή/αφαίρεση τροχιόδρομου. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_SECTION :{BLACK}Κατασκευή κομματιού τροχιοδρόμου. Ctrl+Κλικ για αφαίρεση τροχιόδρομου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOROAD :{BLACK}Κατασκευή οδικού δικτύου με χρήση της λειτουργίας Αυτόματου Δρόμου. Ctrl+Κλικ για αφαίρεση δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_AUTOTRAM :{BLACK}Κατασκευή τροχιοδρόμου με χρήση της λειτουργίας Αυτόματης Γραμμής. Ctrl+Κλικ για αφαίρεση τροχιόδρομου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων δρόμου (για αγορά και επισκευή οχημάτων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων τραμ (για αγορά και επισκευή οχημάτων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Κατασκευή σταθμού λεωφορείων. Με Ctrl ενεργοποιείται η συνένωση σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Κατασκευή επιβατικού σταθμού τραμ. Με Ctrl ενεργοποιείται η συνένωση επιβατικών σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Κατασκευή σταθμού φόρτωσης φορτηγών. Με Ctrl ενεργοποιείται η συνένωση σταθμών φόρτωσης. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Κατασκευή εμπορευματικού σταθμού τραμ. Με Ctrl ενεργοποιείται συνένωση εμπορευματικών σταθμών. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAM_VEHICLE_DEPOT :{BLACK}Κατασκευή αμαξοστασίου οχημάτων τραμ (για αγορά και συντήρηση οχημάτων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_BUS_STATION :{BLACK}Κατασκευή σταθμού λεωφορείων. Ctrl+Κλικ για επιλογή πρόσθετου σταθμού για συνένωση. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_PASSENGER_TRAM_STATION :{BLACK}Κατασκευή επιβατικού σταθμού τραμ. Ctrl+Κλικ για επιλογή πρόσθετου επιβατικού σταθμού για συνένωση. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRUCK_LOADING_BAY :{BLACK}Κατασκευή σταθμού φορτηγών. Ctrl+Κλικ για επιλογή πρόσθετου σταθμού για συνένωση. Με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_CARGO_TRAM_STATION :{BLACK}Κατασκευή εμπορευματικού σταθμού τραμ. Ctrl+Κλικ για επιλογή πρόσθετου εμπορευματικού σταθμού για συνένωση. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_ONE_WAY_ROAD :{BLACK}Ενεργοποίηση/Απενεργοποίηση μονόδρομων STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_BRIDGE :{BLACK}Κατασκευή γέφυρας δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Κατασκευή γέφυρας τροχιοδρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_BRIDGE :{BLACK}Κατασκευή γέφυρας τροχιοδρόμου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_BUILD_ROAD_TUNNEL :{BLACK}Κατασκευή τούνελ δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Κατασκευή τούνελ τροχιοδρόμου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Κατασκευή τούνελ τροχιοδρόμου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Εναλλαγή κατασκευής/αφαίρεσης για αυτοκινητόδρομους STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Εναλλαγή κτισίματος/αφαίρεσης της κατασκευής τροχιόδρομου -STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Μετατρέψτε/Αναβαθμίστε τον τύπο του δρόμου. To Shift ανοιγοκλέινει το κατασκευαστική/εμφανισιακή εκτίμηση κόστους -STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Μετατρέψτε/Αναβαθμίστε τον τύπο του τραμ. Το Shift εναλλάσει την κατασκευαστική/εμφανισιακή εκτίμηση κόστους +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Μετατρέψτε/Αναβαθμίστε τον τύπο του δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Μετατρέψτε/Αναβαθμίστε τον τύπο του τραμ. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_ROAD_NAME_ROAD :Δρόμος STR_ROAD_NAME_TRAM :Τροχιόδρομος @@ -2996,7 +2996,7 @@ STR_BUILD_DEPOT_TRAM_ORIENTATION_SELECT_TOOLTIP :{BLACK}Επιλ STR_STATION_BUILD_BUS_ORIENTATION :{WHITE}Προσανατολισμός Στάσης Λεωφορείου STR_STATION_BUILD_BUS_ORIENTATION_TOOLTIP :{BLACK}Επιλέξτε τον προσανατολισμό της στάσης των λεωφορείων STR_STATION_BUILD_TRUCK_ORIENTATION :{WHITE}Προσανατολισμός Σταθμού Φόρτωσης Φορτηγών -STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Επιλέξτε τον προσανατολισμό του σταθμού φόρτωσης φορτηγών +STR_STATION_BUILD_TRUCK_ORIENTATION_TOOLTIP :{BLACK}Επιλέξτε τον προσανατολισμό του σταθμού φορτηγών STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION :{WHITE}Προσανατολισμός Επιβατικού Σταθμού Τραμ STR_STATION_BUILD_PASSENGER_TRAM_ORIENTATION_TOOLTIP :{BLACK}Επιλέξτε τον προσανατολισμό του επιβατικού σταθμού τραμ STR_STATION_BUILD_CARGO_TRAM_ORIENTATION :{WHITE}Προσανατολισμός Εμπορευματικού Σταθμού Τραμ @@ -3005,14 +3005,14 @@ STR_STATION_BUILD_CARGO_TRAM_ORIENTATION_TOOLTIP :{BLACK}Επιλ # Waterways toolbar (last two for SE only) STR_WATERWAYS_TOOLBAR_CAPTION :{WHITE}Κατασκευή Καναλιού Νερού STR_WATERWAYS_TOOLBAR_CAPTION_SE :{WHITE}Κανάλια Νερού -STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Κτίσιμο καναλιών. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Κατασκευή υδατοφράκτη. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Κατασκευάστε ναυπηγείο πλοίων (για αγορά και επισκευή πλοίων). Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Κατασκευή λιμένα πλοίων. Με Ctrl ενεργοποιείται η συνένωση λιμένων. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Τοποθετήστε μια σημαδούρα που μπορεί να χρησιμοποιηθεί ως σημείο καθοδήγησης. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Κατασκευή καναλιού. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Προσδιορισμός θαλάσσιας επιφάνειας.{}Δημιουργία καναλιού, εκτός εάν το πλήκτρο Ctrl είναι κρατημένο στο επίπεδο της θάλασσας, όπου θα πλημμυρίσει τις παρακείμενες περιοχές -STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Τοποθετήστε ποτάμια. Το Ctrl επιλέγει την περιοχή διαγώνια +STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Κατασκευή καναλιών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Κατασκευή υδατοφράκτη. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Κατασκευή ναυπηγείου πλοίων (για αγορά και επισκευή πλοίων). Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Κατασκευή λιμένα πλοίων. Ctrl+Κλικ για επιλογή πρόσθετου λιμένα για συνένωση. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Τοποθετήστε μια σημαδούρα που μπορεί να χρησιμοποιηθεί ως σημείο καθοδήγησης. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Κατασκευή υδραγωγείου. Επιπρόσθετα πατήστε το Shift για εμφάνιση εκτίμησης κόστους μόνο +STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Κατασκευή καναλιού. Εναλλακτικά, Ctrl+Κλικ στο επίπεδο της θάλασσας για να πλημμυρίσετε με θαλασσινό νερό +STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Τοποθέτηση ποταμιών. Ctrl+Κλικ για διαγώνια επιλογή # Ship depot construction window STR_DEPOT_BUILD_SHIP_CAPTION :{WHITE}Προσανατολισμός Ναυπηγείου Πλοίων @@ -3023,7 +3023,7 @@ STR_STATION_BUILD_DOCK_CAPTION :{WHITE}Λιμά # Airport toolbar STR_TOOLBAR_AIRCRAFT_CAPTION :{WHITE}Αεροδρόμια -STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Κατασκευή αεροδρομίου. Με Ctrl ενεργοποιείται η συνένωση αεροδρομίων. Με Shift εναλλάσσεται κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_TOOLBAR_AIRCRAFT_BUILD_AIRPORT_TOOLTIP :{BLACK}Κατασκευή αεροδρομίου. Ctrl+Κλικ για επιλογή πρόσθετου σταθμού για συνένωση. Με Shift εμφανίζεται εκτίμηση κόστους μόνο # Airport construction window STR_STATION_BUILD_AIRPORT_CAPTION :{WHITE}Επιλογή Αεροδρομίου @@ -3050,14 +3050,14 @@ STR_STATION_BUILD_NOISE :{BLACK}Παρα # Landscaping toolbar STR_LANDSCAPING_TOOLBAR :{WHITE}Μορφοποίηση εδάφους -STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Χαμήλωμα μιας γωνίας εδάφους. Κλικ+σύρσιμο για χαμήλωμα της πρώτης επιλεγμένης γωνίας και ισοπέδωση της επιφάνειας στο νέο ύψος της γωνίας. Με Ctrl+Κλικ+σύρσιμο επιλέγεται η επιφάνεια διαγώνια. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο -STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Ανυψώστε μια γωνία του εδάφους. Με σύρσιμο ανυψώνεται η πρώτη επιλεγμένη γωνία και ισοπεδώνεται η επιφάνεια στο νέο ύψος. Με Ctrl επιλέγετε την επιφάνεια διαγώνια. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστος -STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Ισοπέδωση της γης στο ύψος της πρώτης γωνίας. Με Ctrl επιλέγετε την επιφάνεια διαγώνια. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους -STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Αγορά γης για μελλοντική χρήση. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Χαμήλωμα μιας γωνίας εδάφους. Κλικ+Σύρσιμο για χαμήλωμα της πρώτης επιλεγμένης γωνίας και ισοπέδωση της επιφάνειας στο νέο ύψος της γωνίας. Ctrl+Κλικ+Σύρσιμο για διαγώνια επιλογή της επιφάνειας. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Ανύψωση μιας γωνίας εδάφους. Κλικ+Σύρσιμο για ανύψωση της πρώτης επιλεγμένης γωνίας και ισοπέδωση της επιφάνειας στο νέο ύψος της γωνίας. Ctrl+Κλικ+Σύρσιμο για διαγώνια επιλογή της επιφάνειας. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Ισοπέδωση της γης στο ύψος της πρώτης επιλεγμένης γωνίας. Ctrl+Κλικ+Σύρσιμο για διαγώνια επιλογή της επιφάνειας. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Αγορά γης για μελλοντική χρήση. Ctrl+Κλικ για διαγώνια επιλογή. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Επιλογή Αντικείμενου -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Επιλογή αντικείμενου για κατασκευή. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστος +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Επιλογή αντικείμενου για κατασκευή. Ctrl+Κλικ+Σύρσιμο για διαγώνια επιλογή. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Επιλογή της κατηγορίας του αντικείμενου για κτίσιμο STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Προεπισκόπηση του αντικείμενου STR_OBJECT_BUILD_SIZE :{BLACK}Μέγεθος: {GOLD}{NUM} x {NUM} τετράγωνα @@ -3069,20 +3069,20 @@ STR_OBJECT_CLASS_TRNS :Αναμετα STR_PLANT_TREE_CAPTION :{WHITE}Δέντρα STR_PLANT_TREE_TOOLTIP :{BLACK}Επιλέξτε τύπο δέντρου για φύτευση. Αν το τετραγωνίδιο έχει ήδη ένα δέντρο, αυτό θα προσθέσει περισσότερα δέντρα μεικτών τύπων ανεξάρτητα από τον επιλεγμένο τύπο STR_TREES_RANDOM_TYPE :{BLACK}Δέντρα τυχαίου τύπου -STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Τοποθετήστε δέντρα τυχαίου τύπου. Το Shift εναλλάσσει κτίσιμο/εμφάνιση εκτίμησης κόστους +STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Τοποθέτηση δέντρων τυχαίου τύπου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Τυχαία Δέντρα STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Φυτέψτε δέντρα τυχαία στο έδαφος STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Κανονικό -STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Φυτέψτε μοναδικά δέντρα σέρνοντας πάνω από το τοπίο. +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Φυτέψτε μεμονωμένα δέντρα σέρνοντας πάνω από το τοπίο STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Άλσος -STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Φυτέψτε μικρά δάση σέρνοντας πάνω από το τοπίο. +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Φυτέψτε μικρά δάση σέρνοντας πάνω από το τοπίο STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Δάσος -STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Φυτέψτε μεγάλα δάση με σύρσιμο του ποντικιού πάνω από το τοπίο. +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Φυτέψτε μεγάλα δάση σέρνοντας πάνω από το τοπίο # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Δημιουργία Γης STR_TERRAFORM_TOOLTIP_PLACE_ROCKY_AREAS_ON_LANDSCAPE :{BLACK}Τοποθέτηση πετρώδεις επιφανειών στο τοπίο -STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Ορίστε περιοχή ερήμου.{}Κρατήστε πατημένο το Ctrl για να την αφαιρέσετε +STR_TERRAFORM_TOOLTIP_DEFINE_DESERT_AREA :{BLACK}Ορίστε περιοχή ερήμου.{}Ctrl+Κλικ για αφαίρεση περιοχής ερήμου STR_TERRAFORM_TOOLTIP_INCREASE_SIZE_OF_LAND_AREA :{BLACK}Αύξηση περιοχής για χαμήλωμα/ανύψωση εδάφους STR_TERRAFORM_TOOLTIP_DECREASE_SIZE_OF_LAND_AREA :{BLACK}Μείωση περιοχής για χαμήλωμα/ανύψωση εδάφους STR_TERRAFORM_TOOLTIP_GENERATE_RANDOM_LAND :{BLACK}Δημιουργία τυχαίου εδάφους @@ -3096,7 +3096,7 @@ STR_RESET_LANDSCAPE_CONFIRMATION_TEXT :{WHITE}Είστ # Town generation window (SE) STR_FOUND_TOWN_CAPTION :{WHITE}Δημιουργία Πόλης STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Νέα Πόλη -STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Ίδρυση νέας πόλης. Με Shift+Κλικ εμφανίζεται μόνο το εκτιμώμενο κόστος +STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Ίδρυση νέας πόλης. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Τυχαία Πόλη STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Ίδρυση πόλης σε τυχαία τοποθεσία STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Πολλές τυχαίες πόλεις @@ -3128,7 +3128,7 @@ STR_FOUND_TOWN_SELECT_LAYOUT_3X3_GRID :{BLACK}Πλέγ STR_FOUND_TOWN_SELECT_LAYOUT_RANDOM :{BLACK}Τυχαίο # Fund new industry window -STR_FUND_INDUSTRY_CAPTION :{WHITE}Χρηματοδότηση νέας βιομηχανίας +STR_FUND_INDUSTRY_CAPTION :{WHITE}Χρηματοδότηση βιομηχανίας STR_FUND_INDUSTRY_SELECTION_TOOLTIP :{BLACK}Επιλέξτε την κατάλληλη βιομηχανία από την λίστα STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES :{BLACK}Δημιουργία τυχαίων βιομηχανιών STR_FUND_INDUSTRY_MANY_RANDOM_INDUSTRIES_TOOLTIP :{BLACK}Γέμισε τον χάρτη με τυχαία τοποθετημένες βιομηχανίες @@ -3144,14 +3144,14 @@ STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_CAPTION :{WHITE}Αφαί STR_FUND_INDUSTRY_REMOVE_ALL_INDUSTRIES_QUERY :{YELLOW}Σίγουρα θέλετε να αφαιρέσετε όλες τις βιομηχανίες; # Industry cargoes window -STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Αλυσίδα βιομηχανιών για τη βιομηχανία {STRING} -STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Αλυσίδα βιομηχανιών για το εμπόρευμα {STRING} +STR_INDUSTRY_CARGOES_INDUSTRY_CAPTION :{WHITE}Αλυσίδα βιομηχανιών - {STRING} +STR_INDUSTRY_CARGOES_CARGO_CAPTION :{WHITE}Αλυσίδα εμπορεύματος - {STRING} STR_INDUSTRY_CARGOES_PRODUCERS :{WHITE}Βιομηχανίες που παράγουν STR_INDUSTRY_CARGOES_CUSTOMERS :{WHITE}Βιομηχανίες που δέχονται STR_INDUSTRY_CARGOES_HOUSES :{WHITE}Σπιτιά STR_INDUSTRY_CARGOES_INDUSTRY_TOOLTIP :{BLACK}Πατήστε στη βιομηχανία για να δείτε τους προμηθευτές και τους πελάτες της STR_INDUSTRY_CARGOES_CARGO_TOOLTIP :{BLACK}{STRING}{}Πατήστε στο εμπόρευμα για να δείτε τους προμηθευτές και τους πελάτες -STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Εμφάνιση αλυσίδας +STR_INDUSTRY_DISPLAY_CHAIN :{BLACK}Εμφάνιση αλυσίδας βιομηχανιών STR_INDUSTRY_DISPLAY_CHAIN_TOOLTIP :{BLACK}Εμφάνιση βιομηχανιών προμήθειας και αποδοχής για το εμπόρευμα STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP :{BLACK}Σύνδεση στο μικρό χάρτη STR_INDUSTRY_CARGOES_NOTIFY_SMALLMAP_TOOLTIP :{BLACK}Επιλογή των εμφανιζόμενων βιομηχανιών και στο μικρό χάρτη @@ -3241,7 +3241,7 @@ STR_LAI_TREE_NAME_CACTUS_PLANTS :Κάκτοι STR_LAI_STATION_DESCRIPTION_RAILROAD_STATION :Σιδηροδρομικός σταθμός STR_LAI_STATION_DESCRIPTION_AIRCRAFT_HANGAR :Υπόστεγο αεροσκαφών STR_LAI_STATION_DESCRIPTION_AIRPORT :Αεροδρόμιο -STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Χώρος φόρτωσης φορτηγών +STR_LAI_STATION_DESCRIPTION_TRUCK_LOADING_AREA :Σταθμός φορτηγών STR_LAI_STATION_DESCRIPTION_BUS_STATION :Στάση λεωφορείων STR_LAI_STATION_DESCRIPTION_SHIP_DOCK :Αποβάθρα πλοίων STR_LAI_STATION_DESCRIPTION_BUOY :Σημαδούρα @@ -3289,14 +3289,14 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT} 2002-{STRING} Η ομάδα του OpenTTD # Framerate display window -STR_FRAMERATE_CAPTION :{WHITE}Ρυθμός καρέ γραφικών +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_GAMELOOP_TOOLTIP :{BLACK}Αριθμός στιγμών παιχνιδιού που προσομοιώνεται ανά δευτερόλεπτο STR_FRAMERATE_RATE_BLITTER :{BLACK}Ρυθμός καρέ γραφικών: {STRING} -STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Αριθμος των παραγμενων καρέ ανα δευτερολεπτο +STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Αριθμός των παραγόμενων καρέ ανα δευτερόλεπτο STR_FRAMERATE_SPEED_FACTOR :{BLACK}Παράγοντας ταχύτητας τρέχοντος παιχνιδιού: {DECIMAL}x -STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Πόσο γρήγορα εκτελείται το παιχνίδι αυτήν τη στιγμή, σε σύγκριση με την αναμενόμενη ταχύτητα στον κανονικό ρυθμό εξομοίωσης. +STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Πόσο γρήγορα εκτελείται το παιχνίδι αυτή τη στιγμή, σε σύγκριση με την αναμενόμενη ταχύτητα στον κανονικό ρυθμό εξομοίωσης STR_FRAMERATE_CURRENT :{WHITE}Τρέχον STR_FRAMERATE_AVERAGE :{WHITE}Μέσο STR_FRAMERATE_MEMORYUSE :{WHITE}Μνήμη @@ -3368,7 +3368,7 @@ STR_SAVELOAD_DETAIL_CAPTION :{BLACK}Λεπτ STR_SAVELOAD_DETAIL_NOT_AVAILABLE :{BLACK}Δεν υπάρχουν πληροφορίες. STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}: {WHITE}{STRING} STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}NewGRF: {WHITE}{STRING} -STR_SAVELOAD_FILTER_TITLE :Φιλτράρισμα κειμένου: +STR_SAVELOAD_FILTER_TITLE :{BLACK}Φίλτρο: STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Αντικατάσταση Αρχείου STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Είστε σίγουροι οτι θέλετε να αντικαταστήσετε το υπάρχων αρχείο; STR_SAVELOAD_DIRECTORY :{STRING} (Κατάλογος) @@ -3614,14 +3614,14 @@ STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Το New STR_NEWGRF_ERROR_POPUP :{WHITE}Το NewGRF "{STRING}" επέστρεψε ένα λάθος:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :Το {1:STRING} δεν θα δουλέψει με την έκδοση του TTDPatch όπως αναφέρεται από το OpenTTD STR_NEWGRF_ERROR_DOS_OR_WINDOWS :Το {1:STRING} είναι για την έκδοση {2:STRING} του TTD -STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} είναι σχεδιασμένο να δουλέψει με το {STRING} -STR_NEWGRF_ERROR_INVALID_PARAMETER :Λάθος παράμετρος για το {1:STRING}: παράμετρος {STRING} ({NUM}) +STR_NEWGRF_ERROR_UNSET_SWITCH :Το {1:STRING} είναι σχεδιασμένο να δουλέψει με το {2:STRING} +STR_NEWGRF_ERROR_INVALID_PARAMETER :Λάθος παράμετρος για το {1:STRING}: παράμετρος {2:STRING} ({3:NUM}) STR_NEWGRF_ERROR_LOAD_BEFORE :Το {1:STRING} πρέπει να φορτωθεί πριν από το {2:STRING} STR_NEWGRF_ERROR_LOAD_AFTER :Το {1:STRING} πρέπει να φορτωθεί μετά από το {2:STRING} STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :Το {1:STRING} απαιτεί έκδοση OpenTTD {2:STRING} ή υψηλότερη STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :το αρχείο GRF είναι σχεδιασμένο για να μεταφράζει STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Έχουν φορτωθεί πολλά NewGRF -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Η φόρτωση του {1:STRING} ως στατικό NewGRF με {STRING} μπορεί να προκαλέσει αποσυγχρονισμούς +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Η φόρτωση του {1:STRING} ως στατικό NewGRF με {2:STRING} μπορεί να προκαλέσει αποσυγχρονισμούς STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Απρόοπτο sprite (sprite {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Άγνωστη ιδιότητα Action 0 {4:HEX} (sprite {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Προσπάθεια να χρησιμοποιήσει άκυρο ID (sprite {3:NUM}) @@ -3690,7 +3690,7 @@ STR_SIGN_LIST_MATCH_CASE_TOOLTIP :{BLACK}Εναλ # Sign window STR_EDIT_SIGN_CAPTION :{WHITE}Επεξεργασία κειμένου πινακίδας -STR_EDIT_SIGN_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στη τοποθεσία της πινακίδας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της πινακίδας +STR_EDIT_SIGN_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στη τοποθεσία της πινακίδας. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία της πινακίδας STR_EDIT_SIGN_NEXT_SIGN_TOOLTIP :{BLACK}Μετάβαση στην επόμενη πινακίδα STR_EDIT_SIGN_PREVIOUS_SIGN_TOOLTIP :{BLACK}Μετάβαση στη προηγούμενη πινακίδα @@ -3701,7 +3701,7 @@ STR_TOWN_DIRECTORY_CAPTION :{WHITE}Πόλε STR_TOWN_DIRECTORY_NONE :{ORANGE}- Τίποτα - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Πόλη){BLACK} ({COMMA}) -STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Ονόματα πόλεων - πατήστε στο όνομα για να κεντράρετε την εικόνα στην πόλη. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της πόλης +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Ονόματα πόλεων - πατήστε στο όνομα για κεντράρισμα της κύριας προβολής στην πόλη. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία της πόλης STR_TOWN_POPULATION :{BLACK}Παγκόσμιος πληθυσμός: {COMMA} # Town view window @@ -3720,8 +3720,8 @@ STR_TOWN_VIEW_TOWN_GROWS_EVERY :{BLACK}Η πό STR_TOWN_VIEW_TOWN_GROWS_EVERY_FUNDED :{BLACK}Η πόλη επεκτείνεται κάθε {ORANGE}{UNITS_DAYS_OR_SECONDS} (χρηματοδοτούμενη) STR_TOWN_VIEW_TOWN_GROW_STOPPED :{BLACK}Η πόλη {RED}δεν{BLACK} επεκτείνεται STR_TOWN_VIEW_NOISE_IN_TOWN :{BLACK}Επίπεδο θορύβου στη πόλη: {ORANGE}{COMMA}{BLACK} μέγιστο: {ORANGE}{COMMA} -STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία της πόλης. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της πόλης -STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Τοπική αρχή +STR_TOWN_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία της πόλης. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία της πόλης +STR_TOWN_VIEW_LOCAL_AUTHORITY_BUTTON :{BLACK}Τοπική Αρχή STR_TOWN_VIEW_LOCAL_AUTHORITY_TOOLTIP :{BLACK}Εμφάνιση πληροφοριών για την τοπική αρχή STR_TOWN_VIEW_RENAME_TOOLTIP :{BLACK}Αλλαγή του ονόματος της πόλης @@ -3754,16 +3754,16 @@ STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Αγορά απ STR_LOCAL_AUTHORITY_ACTION_BRIBE :Δωροδοκήστε την τοπική αρχή ###next-name-looks-similar -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Έναρξη μικρής τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμών σε μία μικρή ακτίνα γύρω από το κέντρο της πόλης.{} Κόστος: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Έναρξη μεσαίας τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμών σε μία μεσαία ακτίνα γύρω από το κέντρο της πόλης.{} Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Ξεκινήστε μια μικρή τοπική διαφημιστική καμπάνια, για να προσελκύσετε περισσότερους επιβάτες και φορτίο στις υπηρεσίες μεταφοράς σας.{}Παρέχει μια προσωρινή ώθηση στη βαθμολογία του σταθμού σε μια μικρή ακτίνα γύρω από το κέντρο της πόλης.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Ξεκινήστε μια μεσαία τοπική διαφημιστική καμπάνια, για να προσελκύσετε περισσότερους επιβάτες και φορτίο στις υπηρεσίες μεταφοράς σας.{}Παρέχει μια προσωρινή ώθηση στη βαθμολογία του σταθμού σε μια μέση ακτίνα γύρω από το κέντρο της πόλης.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Έναρξη μεγάλης τοπικής διαφημιστικής καμπάνιας, για να προσελκύσετε περισσότερους επιβάτες και εμπορεύματα στις μεταφορικές σας υπηρεσίες.{}Παρέχει μία προσωρινή ώθηση στην βαθμολογία σταθμού σε μία μεγάλη ακτίνα γύρω από το κέντρο της πόλης.{}{POP_COLOUR} Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MONTHS :{PUSH_COLOUR}{YELLOW}Χρηματοδοτήστε την ανακατασκευή του αστικού οδικού δικτύου.{}Προκαλεί σημαντική αναστάτωση της οδικής κυκλοφορίας για έως και 6 μήνες.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION_MINUTES :{PUSH_COLOUR}{YELLOW}Χρηματοδοτήστε την ανακατασκευή του αστικού οδικού δικτύου.{}Προκαλεί σημαντική αναστάτωση της οδικής κυκλοφορίας για έως και 6 λεπτά.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Χτίστε ένα άγαλμα προς τιμήν της εταιρίας σας.{}Παρέχει μία μόνιμη ώθηση στην βαθμολογία σταθμών σε αυτή την πόλη.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Χρηματοδοτήστε την κατασκευή νέων κτιρίων στην πόλη.{}Παρέχει μία προσωρινή ώθηση στην ανάπτυξη αυτής της πόλης.{} Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{PUSH_COLOUR}{YELLOW}Χρηματοδοτήστε την κατασκευή νέων κτιρίων στην πόλη.{}Παρέχει μια προσωρινή ώθηση στην ανάπτυξη αυτής της πόλης.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MONTHS :{PUSH_COLOUR}{YELLOW}Αγοράστε αποκλειστικά δικαιώματα μεταφοράς στην πόλη για 12 μήνες.{}Η δημοτική αρχή δεν θα επιτρέψει στους επιβάτες και στο φορτίο να χρησιμοποιούν τους σταθμούς των ανταγωνιστών σας. Μια επιτυχημένη δωροδοκία από έναν ανταγωνιστή θα ακυρώσει αυτό το συμβόλαιο.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MINUTES :{PUSH_COLOUR}{YELLOW}Αγοράστε αποκλειστικά δικαιώματα μεταφοράς στην πόλη για 12 λεπτά.{}Η δημοτική αρχή δεν θα επιτρέψει στους επιβάτες και στο φορτίο να χρησιμοποιούν τους σταθμούς των ανταγωνιστών σας. Μια επιτυχημένη δωροδοκία από έναν ανταγωνιστή θα ακυρώσει αυτό το συμβόλαιο.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Δωροδοκήστε τις τοπικές αρχές για να αυξήσετε τα ποσοστά αποδοχής σας, με ρίσκο ένα μεγάλο πρόστιμο εάν συλληφθείτε.{}Κόστος: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{PUSH_COLOUR}{YELLOW}Δωροδοκήστε την τοπική αρχή για να αυξήσετε την αξιολόγησή σας και να ακυρώσετε τα αποκλειστικά δικαιώματα μεταφοράς ενός ανταγωνιστή, με κίνδυνο αυστηρής ποινής εάν συλληφθείτε.{}{POP_COLOUR}Κόστος: {CURRENCY_LONG} # Goal window STR_GOALS_CAPTION :{WHITE}{COMPANY} Στόχοι: @@ -3813,7 +3813,7 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_NONE :{ORANGE}- Καμία - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Υπηρεσίες που έχουν χρηματοδοτηθεί: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} από τον σταθμό {STRING} προς τον σταθμό {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Πατήστε στην υπηρεσία για κεντράρισμα στην βιομηχανία/πόλη. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της βιομηχανίας/πόλης +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Πατήστε στην υπηρεσία για κεντράρισμα στην βιομηχανία/πόλη. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία της βιομηχανίας/πόλης STR_SUBSIDIES_OFFERED_EXPIRY_DATE :ανά {DATE_SHORT} STR_SUBSIDIES_OFFERED_EXPIRY_TIME :μέσα σε {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :έως {DATE_SHORT} @@ -3825,7 +3825,7 @@ 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}Μεταβείτε σε μια συγκεκριμένη σελίδα επιλέγοντάς την από αυτή τη λίστα. +STR_STORY_BOOK_SEL_PAGE_TOOLTIP :{BLACK}Μεταβείτε σε μια συγκεκριμένη σελίδα επιλέγοντάς την από αυτή τη λίστα STR_STORY_BOOK_PREV_PAGE :{BLACK}Προηγούμενη STR_STORY_BOOK_PREV_PAGE_TOOLTIP :{BLACK}Μεταβαίνει στη προηγούμενη σελίδα STR_STORY_BOOK_NEXT_PAGE :{BLACK}Επόμενη @@ -3833,8 +3833,8 @@ STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Μετα STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Μη έγκυρη αναφορά στόχου # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Ονόματα σταθμών - πατήστε στο όνομα για κεντράρισμα στο σταθμό. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του σταθμού -STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Κρατήστε πατημένο το Ctrl για να επιλέξετε περισσότερο από ένα αντικείμενο +STR_STATION_LIST_TOOLTIP :{BLACK}Ονόματα σταθμών - πατήστε στο όνομα για κεντράρισμα της κύριας προβολής στην τοποθεσία του σταθμού. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του σταθμού +STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Ctrl+Κλικ για επιλογή πολλαπλών αντικειμένων STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} Σταθμ{P ός οί} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} STR_STATION_LIST_WAYPOINT :{YELLOW}{WAYPOINT} @@ -3899,7 +3899,7 @@ STR_CARGO_RATING_VERY_GOOD :Πολύ Καλ STR_CARGO_RATING_EXCELLENT :Εξαιρετική STR_CARGO_RATING_OUTSTANDING :Καταπληκτική -STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα εικόνας στην τοποθεσία του σταθμού. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του σταθμού +STR_STATION_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του σταθμού. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του σταθμού STR_STATION_VIEW_RENAME_TOOLTIP :{BLACK}Αλλαγή ονόματος του σταθμού STR_STATION_VIEW_SCHEDULED_TRAINS_TOOLTIP :{BLACK}Εμφάνιση όλων των τρένων που έχουν αυτό τον σταθμό στο δρομολόγιό τους @@ -3914,9 +3914,9 @@ STR_STATION_VIEW_CLOSE_AIRPORT_TOOLTIP :{BLACK}Αποτ # Waypoint/buoy view window STR_WAYPOINT_VIEW_CAPTION :{WHITE}{WAYPOINT} -STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του σημείου καθοδήγησης. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του σημείου καθοδήγησης +STR_WAYPOINT_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του σημείου καθοδήγησης. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του σημείου καθοδήγησης STR_WAYPOINT_VIEW_CHANGE_WAYPOINT_NAME :{BLACK}Αλλαγή του ονόματος του σημείου καθοδήγησης -STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στη τοποθεσία της σημαδούρας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία της σημαδούρας +STR_BUOY_VIEW_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στη τοποθεσία της σημαδούρας. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία της σημαδούρας STR_BUOY_VIEW_CHANGE_BUOY_NAME :{BLACK}Αλλαγή ονόματος σημαδούρας STR_EDIT_WAYPOINT_NAME :{WHITE}Διαμόρφωση ονόματος σημείου καθοδήγησης @@ -3936,10 +3936,10 @@ STR_FINANCES_CAPITAL_EXPENSES_TITLE :{WHITE}Έξοδ ###length 13 STR_FINANCES_SECTION_CONSTRUCTION :{GOLD}Κατασκευές STR_FINANCES_SECTION_NEW_VEHICLES :{GOLD}Νέα Οχήματα -STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Λειτουργικά Έξοδα Τρένων +STR_FINANCES_SECTION_TRAIN_RUNNING_COSTS :{GOLD}Τρένα STR_FINANCES_SECTION_ROAD_VEHICLE_RUNNING_COSTS :{GOLD}Οχήματα STR_FINANCES_SECTION_AIRCRAFT_RUNNING_COSTS :{GOLD}Αεροσκάφη -STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Λειτουργικά Έξοδα Πλοίων +STR_FINANCES_SECTION_SHIP_RUNNING_COSTS :{GOLD}Πλοία STR_FINANCES_SECTION_INFRASTRUCTURE :{GOLD}Υποδομές STR_FINANCES_SECTION_TRAIN_REVENUE :{GOLD}Τρένα STR_FINANCES_SECTION_ROAD_VEHICLE_REVENUE :{GOLD}Οχήματα δρόμου @@ -3993,7 +3993,7 @@ STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP :{BLACK}Κτίσ STR_COMPANY_VIEW_VIEW_HQ_BUTTON :{BLACK}Προβολή Αρχηγείου STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP :{BLACK}Προβολή αρχηγείου εταιρίας STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Ανοικοδόμηση Αρχηγείου -STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Εποικοδόμηση της έδρας της εταιρίας σε άλλο μέρος, με κόστος το 1% της αξίας της εταιρίας. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς επανατοποθέτηση της έδρας +STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Ανοικοδόμηση της έδρας της εταιρίας σε άλλο μέρος, με κόστος το 1% της αξίας της εταιρίας. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Λεπτομέρειες STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Προβολή λεπτομερούς μέτρησης υποδομών STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Δώστε χρήματα @@ -4040,7 +4040,7 @@ STR_INDUSTRY_DIRECTORY_ITEM_PROD1 :{ORANGE}{INDUST 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_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 :Όλα τα είδη φορτίου @@ -4051,7 +4051,7 @@ STR_INDUSTRY_VIEW_CAPTION :{WHITE}{INDUSTR STR_INDUSTRY_VIEW_PRODUCTION_LAST_MONTH_TITLE :{BLACK}Παραγωγή προηγούμενου μήνα: STR_INDUSTRY_VIEW_PRODUCTION_LAST_MINUTE_TITLE :{BLACK}Παραγωγή τελευταίου λεπτού: STR_INDUSTRY_VIEW_TRANSPORTED :{YELLOW}{CARGO_LONG}{STRING}{BLACK} ({COMMA}% μεταφέρθηκαν) -STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα εικόνας στην περιοχή της βιομηχανίας. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην περιοχή της βιομηχανίας +STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα εικόνας στην περιοχή της βιομηχανίας. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην περιοχή της βιομηχανίας STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Επίπεδο παραγωγής: {YELLOW}{COMMA}% STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Η βιομηχανία έχει ανακοινώσει άμεσο κλείσιμο! @@ -4060,7 +4060,7 @@ STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Παρά 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 :{YELLOW}{0:STRING}{BLACK}{3:STRING} STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} σε αναμονή{STRING} STR_CONFIG_GAME_PRODUCTION :{WHITE}Αλλαγή παραγωγής (πολλαπλάσιο του 8, μέχρι το 2040) @@ -4121,12 +4121,12 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Μη ομαδο STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Ομάδες - πατήστε σε μία ομάδα για να δείτε όλα τα οχήματα που της ανήκουν. Σύρετε ομάδες για να ρυθμίσετε την ιεραρχία. +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}Πατήστε για προστατέψετε αυτήν την ομάδα από την γενική αυτόματη αντικατάσταση. Με Ctrl+Κλικ προστατεύετε επίσης τις υπο-ομάδες. +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Πατήστε για προστατέψετε αυτήν την ομάδα από την γενική αυτόματη αντικατάσταση. Με Ctrl+Κλικ προστατεύετε επιπλέον και τις υπο-ομάδες STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Διαγραφή ομάδας STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Είστε σίγουροι ότι θέλετε να διαγράψετε αυτή την ομάδα και οποιουσδήποτε απογόνους; @@ -4195,10 +4195,10 @@ STR_CARGO_TYPE_FILTER_FREIGHT.geniki :Φορτίου STR_CARGO_TYPE_FILTER_NONE :Κανένα ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Λίστα επιλογής βαγονιού τρένου. Πατήστε σε ένα βαγόνι για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου βαγονιού -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Λίστα επιλογής οχήματος δρόμου. Πατήστε σε ένα όχημα για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου οχήματος -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Λίστα επιλογής πλοίου. Πατήστε σε ένα πλοίο για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου πλοίου -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Λίστα επιλογής αεροσκάφους. Πατήστε σε ένα αεροσκάφος για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου αεροσκάφους +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Λίστα επιλογής βαγονιού τρένου. Πατήστε σε ένα βαγόνι για πληροφορίες. Ctrl+Κλικ για εμφάνιση/απόκρυψη αυτού του τύπου βαγονιού +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Λίστα επιλογής οχήματος δρόμου. Πατήστε σε ένα όχημα για πληροφορίες. Ctrl+Κλικ για εμφάνιση/απόκρυψη αυτού του τύπου οχήματος +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Λίστα επιλογής πλοίου. Πατήστε σε ένα πλοίο για πληροφορίες. Ctrl+Κλικ για εμφάνιση/απόκρυψη αυτού του τύπου πλοίου +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Λίστα επιλογής αεροσκάφους. Πατήστε σε ένα αεροσκάφος για πληροφορίες. Ctrl+Κλικ για εμφάνιση/απόκρυψη αυτού του τύπου αεροσκάφους ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Αγορά Οχήματος @@ -4213,16 +4213,16 @@ STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Αγορ STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Αγορά και μετατροπή του αεροσκάφους ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου οχήματος τρένου. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου οχήματος δρόμου. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά -STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Αγοράστε το επιλεγμένο πλοίο. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά -STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου αεροσκάφους. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά +STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου οχήματος τρένου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου οχήματος δρόμου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά επιλεγμένου πλοίου. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_TOOLTIP :{BLACK}Αγορά του επιλεγμένου αεροσκάφους. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Αγορά και μετατροπή του επιλεγμένου οχήματος τρένου. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά -STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_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 :{BLACK}Αγορά και μετατροπή του επιλεγμένου αεροσκάφους. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά +STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_TOOLTIP :{BLACK}Αγορά και μετατροπή του επιλεγμένου αεροσκάφους. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_RENAME_BUTTON :{BLACK}Μετονομασία @@ -4272,7 +4272,7 @@ STR_DEPOT_VEHICLE_TOOLTIP_CHAIN :{BLACK}{NUM} {P STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ({CARGO_SHORT}) ###length VEHICLE_TYPES -STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Τρένα - τραβήξτε ένα όχημα με αριστερό κλικ για να το προσθέστε/αφαιρέστε από ένα τρένο, δεξί κλικ για πληροφορίες. Κρατήστε πατημένο το Ctrl για να κάνετε και τις δυο λειτουργίες να ισχύσουν για τις ακόλουθες αλυσίδες +STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Τρένα - τραβήξτε ένα όχημα με αριστερό κλικ για να το προσθέστε/αφαιρέστε από ένα τρένο, δεξί κλικ για πληροφορίες. Ctrl+Κλικ για εφαρμογή οποιασδήποτε από τις δύο λειτουργίες στην ακόλουθη αλυσίδα STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Οχήματα δρόμου - δεξί κλικ σε ένα όχημα για πληροφορίες STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Πλοία - δεξί κλικ σε ένα πλοίο για πληροφορίες STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Αεροσκάφη - δεξί κλικ σε ένα αεροσκάφος για πληροφορίες @@ -4314,16 +4314,16 @@ STR_DEPOT_CLONE_SHIP :{BLACK}Κλων STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Κλωνοποίηση Αεροσκάφους ###length VEHICLE_TYPES -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του τρένου μαζί με τα όλα τα βαγόνια. Πατήστε αυτό το κουμπί και μετά σε κάποιο τρένο μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο του οχήματος. Πατήστε αυτό το κουμπί και μετά σε κάποιο όχημα μέσα ή έξω από το αμαξοστάσιο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Αυτό θα αγοράσει ένα αντίγραφο ενός πλοίου. Πατήστε αυτό το κουμπί και μετά σε κάποιο πλοίο μέσα ή έξω από το ναυπηγείο. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει η αγορά +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Αγορά αντιγράφου ενός τρένου μαζί με τα όλα τα βαγόνια. Πατήστε αυτό το κουμπί και μετά σε κάποιο τρένο μέσα ή έξω από το αμαξοστάσιο. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Αγορά αντιγράφου ενός οχήματος δρόμου. Πατήστε αυτό το κουμπί και μετά σε κάποιο όχημα μέσα ή έξω από το αμαξοστάσιο. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Αγορά αντιγράφου ενός πλοίου. Πατήστε αυτό το κουμπί και μετά σε κάποιο πλοίο μέσα ή έξω από το ναυπηγείο. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Αγορά αντιγράφου του αεροσκάφους. Πατήστε αυτό το κουμπί και μετά σε κάποιο αεροσκάφος μέσα ή έξω από το υπόστεγο. Με Ctrl+Κλικ θα διαμοιραστούν τις εντολές. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο ###length VEHICLE_TYPES -STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του αμαξοστάσιου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης στην τοποθεσία του αμαξοστασίου -STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του αμαξοστάσιου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης στην τοποθεσία του αμαξοστασίου -STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του ναυπηγείου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης στην τοποθεσία του ναυπηγείου -STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της εικόνας στην τοποθεσία του υπόστεγου. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης στην τοποθεσία του υπόστεγου +STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του αμαξοστάσιου. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του αμαξοστασίου +STR_DEPOT_ROAD_VEHICLE_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του αμαξοστάσιου. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του αμαξοστασίου +STR_DEPOT_SHIP_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του ναυπηγείου. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του ναυπηγείου +STR_DEPOT_AIRCRAFT_LOCATION_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του υπόστεγου. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του υπόστεγου ###length VEHICLE_TYPES STR_DEPOT_VEHICLE_ORDER_LIST_TRAIN_TOOLTIP :{BLACK}Παίρνετε μια λίστα με όλα τα τρένα με το επιλεγμένο αμαξοστάσιο στις εντολές τους @@ -4435,10 +4435,10 @@ STR_REPLACE_REMOVE_WAGON_GROUP_HELP :{STRING}. Πα STR_VEHICLE_VIEW_CAPTION :{WHITE}{VEHICLE} ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_TRAIN_CENTER_TOOLTIP :{BLACK}Κεντράρετε την κεντρική προβολή στην τοποθεσία του τρένου. Με διπλό κλικ θα ακολουθηθεί το τρένο στην κεντρική προβολή. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του τρένου -STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του οχήματος. Με διπλό κλικ θα ακολουθείται το αυτοκίνητο στην κύρια προβολή. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του οχήματος -STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του πλοίου. Με διπλό κλικ θα ακολουθείται το πλοίο στην κύρια προβολή. Με Ctrl+Κλικ ανοίγει νέο παράθυρο προβολής στην τοποθεσία του πλοίου -STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Κεντράρετε την κεντρική προβολή στην τοποθεσία του αεροσκάφους. Με διπλό κλικ θα ακολουθηθεί το αεροσκάφος στην κεντρική προβολή. Το Ctrl+Κλικ ανοίγει μία νέα προβολή στην τοποθεσία του αεροσκάφους +STR_VEHICLE_VIEW_TRAIN_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του τρένου. Διπλό κλικ για να ακολουθείται το τρένο στην κεντρική προβολή. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του τρένου +STR_VEHICLE_VIEW_ROAD_VEHICLE_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του οχήματος. Διπλό κλικ για να ακολουθείται το όχημα στην κύρια προβολή. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του οχήματος +STR_VEHICLE_VIEW_SHIP_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του πλοίου. Διπλό κλικ για να ακολουθείται το πλοίο στην κύρια προβολή. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του πλοίου +STR_VEHICLE_VIEW_AIRCRAFT_CENTER_TOOLTIP :{BLACK}Κεντράρισμα της κύριας προβολής στην τοποθεσία του αεροσκάφους. Διπλό κλικ για να ακολουθείται το αεροσκάφος στην κύρια προβολή. Ctrl+Κλικ για άνοιγμα νέου παραθύρου προβολής στην τοποθεσία του αεροσκάφους ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το τρένο στο αμαξοστάσιο. Με Ctrl+Κλικ κάνει μόνο συντήρηση @@ -4447,10 +4447,10 @@ STR_VEHICLE_VIEW_SHIP_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλ STR_VEHICLE_VIEW_AIRCRAFT_SEND_TO_DEPOT_TOOLTIP :{BLACK}Στέλνει το αεροσκάφος στο υπόστεγο. Με Ctrl+Κλικ κάνει μόνο συντήρηση ###length VEHICLE_TYPES -STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Αυτό θα αγοράσει αντίγραφο του τρένου μαζί με όλα τα βαγόνια. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς αγορά -STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Αυτό θα αγοράσει αντίγραφο του οχήματος. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει αγορά -STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Αυτό θα αγοράσει αντίγραφο του πλοίου. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει αγορά -STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Αυτό θα αγοράσει αντίγραφο του αεροσκάφους. Με Ctrl+Κλικ θα έχει τις ίδιες εντολές. Με Shift+Κλικ εμφανίζεται το εκτιμώμενο κόστος χωρίς να γίνει αγορά +STR_VEHICLE_VIEW_CLONE_TRAIN_INFO :{BLACK}Αγορά αντιγράφου του τρένου μαζί με όλα τα βαγόνια. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_VEHICLE_VIEW_CLONE_ROAD_VEHICLE_INFO :{BLACK}Αγορά αντιγράφου του οχήματος δρόμου. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_VEHICLE_VIEW_CLONE_SHIP_INFO :{BLACK}Αγορά αντιγράφου του πλοίου. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο +STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Αγορά αντιγράφου του αεροσκάφους. Ctrl+Κλικ για διαμοιρασμό εντολών. Επιπρόσθετα, με Shift εμφανίζεται εκτίμηση κόστους μόνο STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Αναγκάστε το τρένο να προχωρήσει χωρίς να περιμένει το σηματοδότη να το επιτρέψει STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Αναστροφή κατεύθυνσης τρένου @@ -4488,13 +4488,13 @@ STR_VEHICLE_STATUS_WAITING_UNBUNCHING :{LTBLUE}Ανα STR_VEHICLE_STATUS_CRASHED :{RED}Καταστράφηκε! STR_VEHICLE_STATUS_BROKEN_DOWN :{RED}Χαλασμένο STR_VEHICLE_STATUS_STOPPED :{RED}Σταματημένο -STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}Σταματάει, {VELOCITY} +STR_VEHICLE_STATUS_TRAIN_STOPPING_VEL :{RED}{VELOCITY} - Σταματάει STR_VEHICLE_STATUS_TRAIN_NO_POWER :{RED}Χωρίς ενέργεια STR_VEHICLE_STATUS_TRAIN_STUCK :{ORANGE}Αναμονή για ελεύθερη τροχιά STR_VEHICLE_STATUS_AIRCRAFT_TOO_FAR :{ORANGE}Υπερβολικά μακριά από τον επόμενο προορισμό STR_VEHICLE_STATUS_HEADING_FOR_STATION_VEL :{LTBLUE}{1:VELOCITY} - Κατεύθυνση για το {0:STATION} -STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}Δεν έχει εντολές, {VELOCITY} +STR_VEHICLE_STATUS_NO_ORDERS_VEL :{LTBLUE}{VELOCITY} - Χωρίς εντολές STR_VEHICLE_STATUS_HEADING_FOR_WAYPOINT_VEL :{LTBLUE}{1:VELOCITY} - Κατεύθυνση για το {0:WAYPOINT} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_VEL :{ORANGE}{1:VELOCITY} - Κατεύθυνση για το {0:DEPOT} STR_VEHICLE_STATUS_HEADING_FOR_DEPOT_SERVICE_VEL :{LTBLUE}{1:VELOCITY} - Συντήρηση στο {0:DEPOT} @@ -4542,8 +4542,8 @@ STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Αξιο STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Κατασκευή: {LTBLUE}{NUM}{BLACK} Αξία: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Χωρητικότητα: {LTBLUE}Τίποτα{STRING} -STR_VEHICLE_INFO_CAPACITY :{BLACK}Χωρητικότητα: {LTBLUE}{CARGO_LONG}{3:STRING} -STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Χωρητικότητα: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) +STR_VEHICLE_INFO_CAPACITY :{BLACK}Χωρητικότητα: {LTBLUE}{0:CARGO_LONG}{3:STRING} +STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Χωρητικότητα: {LTBLUE}{0:CARGO_LONG}{3:STRING} (x{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Χωρητικότητα: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Έσοδα μεταφοράς: {LTBLUE}{CURRENCY_LONG} @@ -4578,7 +4578,7 @@ STR_VEHICLE_DETAILS_TRAIN_WAGON_VALUE :{LTBLUE}{ENGINE STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_TEXT :{BLACK}Συνολική χωρητικότητα φορτίου του τρένου: STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY :{LTBLUE}{CARGO_LONG} ({CARGO_SHORT}) -STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT :{LTBLUE}- {CARGO_LONG} ({CARGO_SHORT}) (x{NUM}) +STR_VEHICLE_DETAILS_TRAIN_TOTAL_CAPACITY_MULT :{LTBLUE}{CARGO_LONG} ({CARGO_SHORT}) (x{NUM}) STR_VEHICLE_DETAILS_CARGO_EMPTY :{LTBLUE}Άδειο STR_VEHICLE_DETAILS_CARGO_FROM :{LTBLUE}{CARGO_LONG} από τον σταθμό {STATION} @@ -4602,7 +4602,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Νέα STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}{}{BLACK}Κέρδος από τη μετατροπή: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Κόστος μετατροπής: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Νέα χωρητικότητα: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Κέρδος από τη μετατροπή: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Επιλέξτε τα οχήματα για μετατροπή. Σύροντας με το ποντίκι επιτρέπει την επιλογή πολλαπλών οχημάτων. Πατώντας σε άδειο χώρο θα επιλέξει ολόκληρο το όχημα. Με Ctrl+Κλικ θα γίνει επιλογή του οχήματος και της ακολουθούμενης αλυσίδας. +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Επιλέξτε τα οχήματα για μετατροπή. Κλικ+Σύρσιμο για επιλογή πολλαπλών οχημάτων. Κάντε κλικ σε έναν κενό χώρο για να επιλέξετε ολόκληρο το όχημα. Ctrl+Κλικ για να επιλέξετε ένα όχημα και την ακόλουθη αλυσίδα ###length VEHICLE_TYPES STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Επιλέξτε τον τύπο εμπορεύματος που θα μεταφέρει το τρένο @@ -4830,19 +4830,19 @@ STR_TIMETABLE_START_TOOLTIP :{BLACK}Επιλ STR_TIMETABLE_START_SECONDS_QUERY :Δευτερόλεπτα μέχρι την έναρξη του δρομολογίου STR_TIMETABLE_CHANGE_TIME :{BLACK}Αλλαγή Χρόνων -STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Αλλάζει ο χρόνος που παίρνει η επιλεγμένη επιλογή για να εκτελεστεί +STR_TIMETABLE_WAIT_TIME_TOOLTIP :{BLACK}Αλλαγή του χρόνου που παίρνει η επιλεγμένη εντολή για να εκτελεστεί. Ctrl+Κλικ για ορισμό χρόνου όλων των εντολών STR_TIMETABLE_CLEAR_TIME :{BLACK}Εκκαθάριση Χρόνων -STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Εκκαθαρίζει το χρόνο για την επιλεγμένη εντολή. Ctrl+Κλικ σβήνει τον χρόνο για όλες τις εντολές +STR_TIMETABLE_CLEAR_TIME_TOOLTIP :{BLACK}Καθαρίζει το χρόνο για την επιλεγμένη εντολή. Ctrl+Κλικ για καθαρισμό χρόνου όλων των εντολών STR_TIMETABLE_CHANGE_SPEED :{BLACK}Αλλαγή Ορίου Ταχύτητας STR_TIMETABLE_CHANGE_SPEED_TOOLTIP :{BLACK}Αλλαγή της μέγιστης ταχύτητας ταξιδιού της επιλεγμένης εντολής. Ctrl+Κλικ για ορισμό της ταχύτητας ταξιδιού όλων των εντολών STR_TIMETABLE_CLEAR_SPEED :{BLACK}Εκκαθάριση Ορίου Ταχύτητας -STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Καθαρίζει τη μέγιστη ταχύτητα ταξιδιού της επιλεγμένης εντολής +STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Καθαρίζει τη μέγιστη ταχύτητα ταξιδιού της επιλεγμένης εντολής. Ctrl+Κλικ για καθαρισμό ταχύτητας όλων των εντολών STR_TIMETABLE_RESET_LATENESS :{BLACK}Επαναφορά Μετρητή Καθυστέρησης -STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Επαναφορά του μετρητή καθυστέρησης, ώστε το όχημα να είναι στην ώρα του +STR_TIMETABLE_RESET_LATENESS_TOOLTIP :{BLACK}Επαναφορά του μετρητή καθυστέρησης, ώστε το όχημα να είναι στην ώρα του. Ctrl+Κλικ για επαναφορά του μετρητή όλης της ομάδας ώστε το τελευταίο όχημα να είναι στην ώρα του και τα υπόλοιπα νωρίτερα STR_TIMETABLE_AUTOFILL :{BLACK}Αυτόματη Γέμιση STR_TIMETABLE_AUTOFILL_TOOLTIP :{BLACK}Συμπληρώστε το δρομολόγιο αυτόματα με τις τιμές από το επόμενο ταξίδι. (Ctrl+Κλικ για να προσπαθήσει να κρατήσει τους χρόνους αναμονής) @@ -4884,7 +4884,7 @@ STR_AI_DEBUG_CONTINUE :{BLACK}Συνέ STR_AI_DEBUG_CONTINUE_TOOLTIP :{BLACK}Συνέχιση του παιχνιδιού και της λειτουργίας της AI STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Εμφάνιση της εξόδου αποσφαλμάτωσης αυτής της AI. Με Ctrl+Κλικ ανοίγει νέο παράθυρο εμφάνισης STR_AI_GAME_SCRIPT :{BLACK}Δέσμη Ενεργειών Παιχνιδιού -STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Έλεγχος ιστορικού δέσμης ενεργειών παιχνιδιού +STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}Έλεγχος ιστορικού δέσμης ενεργειών παιχνιδιού. Ctrl+Κλικ για άνοιγμα σε νέο παράθυρο STR_ERROR_AI_NO_AI_FOUND :Δεν βρέθηκε κατάλληλη AI για φόρτωση.{}Αυτή η AI είναι ψεύτικη και δεν θα κάνει τίποτα.{}Μπορείτε να κατεβάσετε διάφορες AΙ από το σύστημα Διαδικτυακού Περιεχομένου. STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Μια τρέχουσα δέσμη ενεργειών τερμάτισε απότομα. Παρακαλώ ενημερώστε τον συγγραφέα της δέσμης ενεργειών με ένα στιγμιότυπο οθόνης από το παράθυρο αποσφαλμάτωσης AI/Παιχνιδιού @@ -5095,7 +5095,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Αδύν STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Δεν μπορεί να κτιστεί αρχηγείο εταιρίας... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Αδύνατο να κτιστούν πόλεις +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Αδύνατο να κατασκευαστούν πόλεις... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Δεν μπορεί να μετονομαστεί η πόλη... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Αδύνατο να κτιστεί πόλη εδώ... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Δεν μπορεί να γίνει επέκταση της πόλης... @@ -5135,7 +5135,7 @@ STR_ERROR_NO_SUITABLE_PLACES_FOR_INDUSTRIES_EXPLANATION :{WHITE}Αλλα # Station construction related errors STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Δεν μπορεί να κτιστεί σταθμός τρένων εδώ... STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Δεν μπορεί να κτιστεί στάση λεωφορείων... -STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Δεν μπορεί να κτιστεί στάση φορτηγών... +STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Δεν μπορεί να κτιστεί σταθμός φορτηγών... STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Δεν μπορεί να κτιστεί επιβατικός σταθμός τραμ... STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Δεν μπορεί να κτιστεί σταθμός τραμ... STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Δεν μπορεί να κτιστεί λιμένας εδώ... @@ -5150,7 +5150,7 @@ STR_ERROR_TOO_MANY_TRUCK_STOPS :{WHITE}Πάρα STR_ERROR_TOO_CLOSE_TO_ANOTHER_DOCK :{WHITE}Πολύ κοντά σε άλλη αποβάθρα STR_ERROR_TOO_CLOSE_TO_ANOTHER_AIRPORT :{WHITE}Πολύ κοντά σε άλλο αεροδρόμιο STR_ERROR_CAN_T_RENAME_STATION :{WHITE}Δεν μπορεί να μετονομαστεί ο σταθμός... -STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... αυτός είναι δρόμος ιδιόκτητος από την πόλη +STR_ERROR_DRIVE_THROUGH_ON_TOWN_ROAD :{WHITE}... δρόμος ιδιοκτησία μιας πόλης STR_ERROR_DRIVE_THROUGH_DIRECTION :{WHITE}... ο δρόμος βλέπει σε λάθος κατεύθυνση STR_ERROR_DRIVE_THROUGH_CORNER :{WHITE}... οι μη τερματικοί σταθμοί δε μπορούν να έχουν στροφές STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... οι μη τερματικοί σταθμοί δε μπορούν να έχουν διασταυρώσεις diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 54ad0fdda2..e949a75ac8 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -1338,10 +1338,10 @@ STR_TERRAIN_TYPE_CUSTOM :Власна в STR_TERRAIN_TYPE_CUSTOM_VALUE :Власна висота ({NUM}) ###length 4 -STR_CITY_APPROVAL_LENIENT :Поблажливо -STR_CITY_APPROVAL_TOLERANT :терпиме +STR_CITY_APPROVAL_LENIENT :поблажливо +STR_CITY_APPROVAL_TOLERANT :терпимо STR_CITY_APPROVAL_HOSTILE :вороже -STR_CITY_APPROVAL_PERMISSIVE :допустиме (не впливає на дії компанії) +STR_CITY_APPROVAL_PERMISSIVE :допустимо (не впливає на дії компанії) STR_WARNING_NO_SUITABLE_AI :{WHITE}Немає підходящих модулів ШІ...{}Ви можете завантажити різноманітні модулі ШІ через 'Додатковий контент' @@ -1545,7 +1545,7 @@ STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT :Створюв STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT :Якщо в завданні транспортного засобу не вказана помітка «без зупинки», то він зупиняєтся на всіх станціях на своєму шляху. Якщо увімкнути це налаштування, то нові завдання будуть автоматично створюватися з поміткою «без зупинки» і транспортний засіб буде зупинятися лише на вказаних станціях. При необхідності помітку можна зняти або встановити власноруч. STR_CONFIG_SETTING_STOP_LOCATION :Створювати накази для поїздів з зупинкою {STRING} платформи -STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Задайте, який кінець платформи для зупинки поїздів вказувати у нових завданнях.{}- на початку: початок платформи в напрямку руху;{}- посередині: середина платформи;{}- наприкінці: кінець платформи в напрямку руху. +STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT :Оберіть кінець платформи для зупинки потягів у нових наказах. "на початку": початок платформи в напрямку руху; "посередині": середина платформи; "наприкінці": кінець платформи в напрямку руху. Окремі накази для зупинки можна встановити клацнувши на текст наказу ###length 3 STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END :на початку STR_CONFIG_SETTING_STOP_LOCATION_MIDDLE :посередині @@ -1678,7 +1678,7 @@ STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS :Товщина 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_SHOW_NEWGRF_NAME_HELPTEXT :Додати рядок у вікні придбання транспорту, який показуватиме назву NewGRF обраного транспорту STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS :Показати у віконному списку вантажі, які може перевозити транспорт:{STRING} STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT :При включенні придатний вантаж для транспортних засобів показано нижче у списку транспорту @@ -1767,7 +1767,7 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :темно-зе STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :фіолетовий STR_CONFIG_SETTING_LINKGRAPH_COLOURS :Схема кольорів вантажопотоків: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Встановіть схему кольорів для показу вантажних потоків. +STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT :Встановіть схему кольорів для показу вантажних потоків ###length 4 STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED :Від зеленого до червоного (оригінальна) STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_BLUE :Від зеленого до синього @@ -2093,7 +2093,7 @@ STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS :Міська в STR_CONFIG_SETTING_ALLOW_TOWN_LEVEL_CROSSINGS_HELPTEXT :Дозволяє містам самостійно будувати залізничні переїзди. STR_CONFIG_SETTING_NOISE_LEVEL :Обмеження розміщення аеропортів залежно від рівня шуму: {STRING} -STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :При відключенні дозволяється будувати два аеропорти у кожному місті. При увімкненні кількість аеропортів залежить від допустимого рівня шуму, що в свою чергу залежить від кількості населення міста, розміру аеропорта та відстані +STR_CONFIG_SETTING_NOISE_LEVEL_HELPTEXT :При увімкненні кількість аеропортів залежить від допустимого рівня шуму, що в свою чергу залежить від кількості населення міста, розміру аеропорта та відстані. При відключенні дозволяється будувати два аеропорти у кожному місті допоки ставлення місцевої влади "допустимо" STR_CONFIG_SETTING_TOWN_FOUNDING :Засновування нових міст під час гри: {STRING} STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Дозволяє заснування нових міст гравцями під час гри. @@ -2144,7 +2144,7 @@ STR_CONFIG_SETTING_ZOOM_LVL_OUT_4X :4x STR_CONFIG_SETTING_ZOOM_LVL_OUT_8X :8x STR_CONFIG_SETTING_SPRITE_ZOOM_MIN :Найбільша використовувана роздільна здатність: {STRING} -STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Обмеження максимальної роздільної здатності зображень. Не використовуватиметься наявна графіка високої роздільної здатності. Гра працюватиме злагодженіше при використанні кількох графічних файлів з різною роздільною здатністю. +STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT :Обмеження максимальної роздільної здатності зображень. Не використовуватиметься наявна графіка високої роздільної здатності. Гра працюватиме злагодженіше при використанні кількох графічних файлів з різною роздільною здатністю ###length 3 STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN :4x STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_IN_2X :2x @@ -2170,7 +2170,7 @@ STR_CONFIG_SETTING_CITY_SIZE_MULTIPLIER_HELPTEXT :Середнь STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL :Оновлення обрахунку зв'язків, час {STRING} STR_CONFIG_SETTING_LINKGRAPH_RECALC_INTERVAL_HELPTEXT :Час між перерозрахунками графа зв'язків. Кожен розрахунок обчислює один компонент графа, тобто лише деякі компоненти оновляться після закінчення кожного проміжку часу, а не весь граф. Чим менше це значення, тим більше часу процесора буде витрачатися. Чим більше це значення, тим довше доведеться очікувати розподілення вантажів на нових маршрутах STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME :Час між перерахунками графа зв'язків: {STRING} -STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Час між перерозрахунками компонента графа зв'язків. На початку перерозрахунку утворюється з'єднання, яке існує обраний час. Чим менше це значення, тим більша вірогідність, що з'єднання розірветься раніше очікуваного, після чого гра зупиниться. Чим більше це значення, тим довше обраховуватиметься розподілення вантажів при зміні маршрутів +STR_CONFIG_SETTING_LINKGRAPH_RECALC_TIME_HELPTEXT :Час між перерозрахунками компонента графа зв'язків. На початку перерозрахунку утворюється з'єднання, яке існує обраний час. Чим менше це значення, тим більша вірогідність, що з'єднання розірветься раніше очікуваного, після чого гра загальмує. Чим більше це значення, тим довше обраховуватиметься розподілення вантажів при зміні маршрутів STR_CONFIG_SETTING_DISTRIBUTION_PAX :Режим розподілу для пасажирів: {STRING} STR_CONFIG_SETTING_DISTRIBUTION_PAX_HELPTEXT :В "симетричному" режимі від станції A до станції Б відправлятиметься приблизно стільки ж пасажирів, як від 0Ю до A. В "асиметричному" режимі дозволяється відправляти довільну кількість пасажирів в обох напрямках. Ручний режим означає, що розподіл пасажирів не здійснюватиметься автоматично @@ -3057,7 +3057,7 @@ STR_WATERWAYS_TOOLBAR_BUILD_CANALS_TOOLTIP :{BLACK}Буду STR_WATERWAYS_TOOLBAR_BUILD_LOCKS_TOOLTIP :{BLACK}Будування шлюзів. Утримуйте Shift для показу очікуваних витрат STR_WATERWAYS_TOOLBAR_BUILD_DEPOT_TOOLTIP :{BLACK}Будування корабельних елінгів (для будівництва та обслуговування кораблів). Утримуйте Shift для показу орієнтовних витрат STR_WATERWAYS_TOOLBAR_BUILD_DOCK_TOOLTIP :{BLACK}Будування доку. Ctrl+клац для приєднання додаткових доків. Утримуйте Shift для показу очікуваних витрат -STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Розмістити бакен, який можна використовувати як точку маршруту. Утримуйте Shift для показу витрат на розміщення +STR_WATERWAYS_TOOLBAR_BUOY_TOOLTIP :{BLACK}Розмістити бакен, який можна використовувати як точку маршруту. Утримуйте Shift для показу очікуваних витрат STR_WATERWAYS_TOOLBAR_BUILD_AQUEDUCT_TOOLTIP :{BLACK}Будування акведука. Утримуйте Shift для показу очікуваних витрат STR_WATERWAYS_TOOLBAR_CREATE_LAKE_TOOLTIP :{BLACK}Будувати канал. Ctrl+клац на рівні моря для затоплення морською водою STR_WATERWAYS_TOOLBAR_CREATE_RIVER_TOOLTIP :{BLACK}Прокласти річки. Ctrl+клац для вибору діагональних ділянок @@ -3105,7 +3105,7 @@ STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Купи # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Вибір об'єкта -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Виберіть об'єкт для побудови. Утримуйте Ctrl для вибору діагональної ділянки. Утримуйте Shift для показу витрат на будівництво +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Обрання об'єкту для побудови. Ctrl+клац+протягування для виділення діагональної ділянки. Утримуйте Shift для показу очікуваних витрат STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Вибрати тип об'єкту для будівництва STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Попередній перегляд об'єкта STR_OBJECT_BUILD_SIZE :{BLACK}Розмір: {GOLD}{NUM} x {NUM} клітинок @@ -3749,7 +3749,7 @@ STR_TOWN_DIRECTORY_CAPTION :{WHITE}Міст STR_TOWN_DIRECTORY_NONE :{ORANGE}- немає - STR_TOWN_DIRECTORY_TOWN :{ORANGE}{TOWN}{BLACK} ({COMMA}) STR_TOWN_DIRECTORY_CITY :{ORANGE}{TOWN}{YELLOW} (Мегаполіс){BLACK} ({COMMA}) -STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на місто +STR_TOWN_DIRECTORY_LIST_TOOLTIP :{BLACK}Назви міст - натисніть на назву, щоб показати місто у центрі екрану. Ctrl+клац мишею відкриває нове вікно з видом на місто STR_TOWN_POPULATION :{BLACK}Населення світу: {COMMA} # Town view window @@ -3881,7 +3881,7 @@ STR_STORY_BOOK_NEXT_PAGE_TOOLTIP :{BLACK}Наст STR_STORY_BOOK_INVALID_GOAL_REF :{RED}Невірне посилання на завдання # Station list window -STR_STATION_LIST_TOOLTIP :{BLACK}Назви станцій - натисніть на назву, щоб показати станцію в центрі екрану. Ctrl+клац мишою відкриває нове вікно з видом на станцію +STR_STATION_LIST_TOOLTIP :{BLACK}Назви станцій - натисніть на назву, щоб показати станцію в центрі екрану. Ctrl+клац мишею відкриває нове вікно з видом на станцію STR_STATION_LIST_USE_CTRL_TO_SELECT_MORE :{BLACK}Ctrl+клац для вибору кількох пунктів STR_STATION_LIST_CAPTION :{WHITE}{COMPANY} - {COMMA} станці{P я ї й} STR_STATION_LIST_STATION :{YELLOW}{STATION} {STATION_FEATURES} @@ -4173,7 +4173,7 @@ 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}Клацніть мишею, щоб захистити групу від глобальної автозаміни. Ctrl+клац також діє на підгрупи. +STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Клацніть мишею, щоб захистити групу від глобальної автозаміни. Ctrl+клац також діє на підгрупи STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Видалити групу STR_GROUP_DELETE_QUERY_TEXT :{WHITE}Ви впевнені, що хочете видалити цю групу та всі вкладені групи? @@ -4360,10 +4360,10 @@ STR_DEPOT_CLONE_SHIP :{BLACK}Клон STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Клонувати ###length VEHICLE_TYPES -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію поїзда, включно з усіма автомобілями. Натисніть на цю кнопку, а потім на поїзд в депо або ззовні. Ctrl+клац мишею дозволить поділитися спільними завданнями. Shift+клац мишею покаже орієнтовні витрати на придбання +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Купити копію потяга з усіма вагонами. Натисніть на цю кнопку, а потім на потяг в депо або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Купити копію дорожнього транспорту. Натисніть на цю кнопку і потім на транспорт в гаражі або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Купити копію корабля. Натисніть на цю кнопку, і потім на корабель в елінгу або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу витрат на придбання -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купити копію літака. Натисніть на цю кнопку і потім на літак в ангарі або ззовні. Утримуйте Ctrl для спільного завдання. Утримуйте Shift для показу витрат на придбання +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Купити копію літального апарата. Натисніть на цю кнопку і потім на авіатранспорт в ангарі або ззовні. Ctrl+клац для копіювання спільного завдання. Утримуйте Shift для показу орієнтовних витрат ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Показати залізничне депо у центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на залізничне депо @@ -4495,7 +4495,7 @@ STR_VEHICLE_VIEW_CLONE_AIRCRAFT_INFO :{BLACK}Купи STR_VEHICLE_VIEW_TRAIN_IGNORE_SIGNAL_TOOLTIP :{BLACK}Примусити проігнорувати сигнал! STR_VEHICLE_VIEW_TRAIN_REVERSE_TOOLTIP :{BLACK}Розвернути поїзд STR_VEHICLE_VIEW_ROAD_VEHICLE_REVERSE_TOOLTIP :{BLACK}Розвернути авто -STR_VEHICLE_VIEW_ORDER_LOCATION_TOOLTIP :{BLACK}Показати пункт призначення в центрі екрану. Ctrl+клац мишою відкриє нове вікно з видом на пункт призначення +STR_VEHICLE_VIEW_ORDER_LOCATION_TOOLTIP :{BLACK}Показати пункт призначення в центрі екрану. Ctrl+клац мишею відкриє нове вікно з видом на пункт призначення ###length VEHICLE_TYPES STR_VEHICLE_VIEW_TRAIN_REFIT_TOOLTIP :{BLACK}Переобладнати поїзд для перевезення іншого виду вантажу @@ -4642,7 +4642,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Нова STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}{}{BLACK}Прибуток від переобладнання: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Вартість переобладнання: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Нова місткість: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Прибуток від переобладнання: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Вибрати транспорт для переобладнання. Перетягування мишою дозволяє виділити декілька одиниць транспорту. Клац мишою на порожньому місці виділить усю одиницю транспорту. Ctrl+клац мишою виділить транспорт та ланцюжок перевезень за ним +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Обрати транспортні засоби для переобладнання. Клац+протягування виділить кілька одиниць транспорту. Клац мишею на порожньому місці виділить окрему одиницю транспорту. Ctrl+клац мишею виділить транспорт та ланцюжок за ним ###length VEHICLE_TYPES STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Виберіть вид вантажу для перевезення From d5e28a904dd4836df7bfd978aa239a08e16f8649 Mon Sep 17 00:00:00 2001 From: Rubidium Date: Sun, 31 Mar 2024 12:41:28 +0200 Subject: [PATCH 61/70] Fix fb9d4af: use different nonces for key exchange and stream encryption --- src/network/core/tcp_game.h | 2 ++ src/network/network_client.cpp | 4 +++- src/network/network_crypto.cpp | 34 +++++++++++++++++++++------ src/network/network_crypto.h | 12 ++++++++++ src/network/network_crypto_internal.h | 14 ++++++++++- src/network/network_server.cpp | 1 + src/tests/test_network_crypto.cpp | 8 +++++++ 7 files changed, 66 insertions(+), 9 deletions(-) diff --git a/src/network/core/tcp_game.h b/src/network/core/tcp_game.h index 24cb9c941c..ce6f9bdcea 100644 --- a/src/network/core/tcp_game.h +++ b/src/network/core/tcp_game.h @@ -243,6 +243,8 @@ protected: /** * Indication to the client that authentication is complete and encryption has to be used from here on forward. + * The encryption uses the shared keys generated by the last AUTH_REQUEST key exchange. + * 24 * uint8_t Nonce for encrypted connection. * @param p The packet that was just received. */ virtual NetworkRecvStatus Receive_SERVER_ENABLE_ENCRYPTION(Packet &p); diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp index 698b2975dd..f6302a40e3 100644 --- a/src/network/network_client.cpp +++ b/src/network/network_client.cpp @@ -775,12 +775,14 @@ NetworkRecvStatus ClientNetworkGameSocketHandler::Receive_SERVER_AUTH_REQUEST(Pa } } -NetworkRecvStatus ClientNetworkGameSocketHandler::Receive_SERVER_ENABLE_ENCRYPTION(Packet &) +NetworkRecvStatus ClientNetworkGameSocketHandler::Receive_SERVER_ENABLE_ENCRYPTION(Packet &p) { if (this->status != STATUS_AUTH_GAME || this->authentication_handler == nullptr) return NETWORK_RECV_STATUS_MALFORMED_PACKET; Debug(net, 9, "Client::Receive_SERVER_ENABLE_ENCRYPTION()"); + if (!this->authentication_handler->ReceiveEnableEncryption(p)) return NETWORK_RECV_STATUS_MALFORMED_PACKET; + this->receive_encryption_handler = this->authentication_handler->CreateServerToClientEncryptionHandler(); this->send_encryption_handler = this->authentication_handler->CreateClientToServerEncryptionHandler(); this->authentication_handler = nullptr; diff --git a/src/network/network_crypto.cpp b/src/network/network_crypto.cpp index 03ee988bb7..3cea679869 100644 --- a/src/network/network_crypto.cpp +++ b/src/network/network_crypto.cpp @@ -182,14 +182,15 @@ X25519Nonce::~X25519Nonce() * @param secret_key The secret key to use for this handler. Defaults to secure random data. */ X25519AuthenticationHandler::X25519AuthenticationHandler(const X25519SecretKey &secret_key) : - our_secret_key(secret_key), our_public_key(secret_key.CreatePublicKey()), nonce(X25519Nonce::CreateRandom()) + our_secret_key(secret_key), our_public_key(secret_key.CreatePublicKey()), + key_exchange_nonce(X25519Nonce::CreateRandom()), encryption_nonce(X25519Nonce::CreateRandom()) { } /* virtual */ void X25519AuthenticationHandler::SendRequest(Packet &p) { p.Send_bytes(this->our_public_key); - p.Send_bytes(this->nonce); + p.Send_bytes(this->key_exchange_nonce); } /** @@ -205,7 +206,7 @@ bool X25519AuthenticationHandler::ReceiveRequest(Packet &p) } p.Recv_bytes(this->peer_public_key); - p.Recv_bytes(this->nonce); + p.Recv_bytes(this->key_exchange_nonce); return true; } @@ -227,7 +228,7 @@ bool X25519AuthenticationHandler::SendResponse(Packet &p, std::string_view deriv RandomBytesWithFallback(message); X25519Mac mac; - crypto_aead_lock(message.data(), mac.data(), this->derived_keys.ClientToServer().data(), nonce.data(), + crypto_aead_lock(message.data(), mac.data(), this->derived_keys.ClientToServer().data(), this->key_exchange_nonce.data(), this->our_public_key.data(), this->our_public_key.size(), message.data(), message.size()); p.Send_bytes(this->our_public_key); @@ -245,14 +246,33 @@ std::string X25519AuthenticationHandler::GetPeerPublicKey() const return FormatArrayAsHex(this->peer_public_key); } +/** + * Send the initial nonce for the encrypted connection. + * @param p The packet to send the data in. + */ +void X25519AuthenticationHandler::SendEnableEncryption(struct Packet &p) const +{ + p.Send_bytes(this->encryption_nonce); +} + +/** + * Receive the initial nonce for the encrypted connection. + * @param p The packet to read the data from. + * @return \c true when enough bytes could be read for the nonce, otherwise \c false. + */ +bool X25519AuthenticationHandler::ReceiveEnableEncryption(struct Packet &p) +{ + return p.Recv_bytes(this->encryption_nonce) == this->encryption_nonce.size(); +} + std::unique_ptr X25519AuthenticationHandler::CreateClientToServerEncryptionHandler() const { - return std::make_unique(this->derived_keys.ClientToServer(), this->nonce); + return std::make_unique(this->derived_keys.ClientToServer(), this->encryption_nonce); } std::unique_ptr X25519AuthenticationHandler::CreateServerToClientEncryptionHandler() const { - return std::make_unique(this->derived_keys.ServerToClient(), this->nonce); + return std::make_unique(this->derived_keys.ServerToClient(), this->encryption_nonce); } /** @@ -282,7 +302,7 @@ NetworkAuthenticationServerHandler::ResponseResult X25519AuthenticationHandler:: return NetworkAuthenticationServerHandler::NOT_AUTHENTICATED; } - if (crypto_aead_unlock(message.data(), mac.data(), this->derived_keys.ClientToServer().data(), nonce.data(), + if (crypto_aead_unlock(message.data(), mac.data(), this->derived_keys.ClientToServer().data(), this->key_exchange_nonce.data(), this->peer_public_key.data(), this->peer_public_key.size(), message.data(), message.size()) != 0) { /* * The ciphertext and the message authentication code do not match with the encryption key. diff --git a/src/network/network_crypto.h b/src/network/network_crypto.h index d2fc604cd0..b63c90d8a0 100644 --- a/src/network/network_crypto.h +++ b/src/network/network_crypto.h @@ -242,6 +242,12 @@ public: */ virtual bool SendResponse(struct Packet &p) = 0; + /** + * Read the request to enable encryption from the server. + * @param p The request from the server. + */ + virtual bool ReceiveEnableEncryption(struct Packet &p) = 0; + static std::unique_ptr Create(std::shared_ptr password_handler, std::string &secret_key, std::string &public_key); }; @@ -270,6 +276,12 @@ public: */ virtual ResponseResult ReceiveResponse(struct Packet &p) = 0; + /** + * Create the request to enable encryption to the client. + * @param p The packet to write the enable encryption request to. + */ + virtual void SendEnableEncryption(struct Packet &p) = 0; + /** * Checks whether this handler can be used with the current configuration. * For example when there is no password, the handler cannot be used. diff --git a/src/network/network_crypto_internal.h b/src/network/network_crypto_internal.h index a073e0931b..e2b11997c6 100644 --- a/src/network/network_crypto_internal.h +++ b/src/network/network_crypto_internal.h @@ -105,10 +105,12 @@ class X25519AuthenticationHandler { private: X25519SecretKey our_secret_key; ///< The secret key used by us. X25519PublicKey our_public_key; ///< The public key used by us. - X25519Nonce nonce; ///< The nonce to prevent replay attacks. + X25519Nonce key_exchange_nonce; ///< The nonce to prevent replay attacks of the key exchange. X25519DerivedKeys derived_keys; ///< Keys derived from the authentication process. X25519PublicKey peer_public_key; ///< The public key used by our peer. + X25519Nonce encryption_nonce; ///< The nonce to prevent replay attacks the encrypted connection. + protected: X25519AuthenticationHandler(const X25519SecretKey &secret_key); @@ -119,6 +121,8 @@ protected: std::string GetPeerPublicKey() const; + void SendEnableEncryption(struct Packet &p) const; + bool ReceiveEnableEncryption(struct Packet &p); std::unique_ptr CreateClientToServerEncryptionHandler() const; std::unique_ptr CreateServerToClientEncryptionHandler() const; }; @@ -142,6 +146,7 @@ public: virtual std::string_view GetName() const override { return "X25519-KeyExchangeOnly-client"; } virtual NetworkAuthenticationMethod GetAuthenticationMethod() const override { return NETWORK_AUTH_METHOD_X25519_KEY_EXCHANGE_ONLY; } + virtual bool ReceiveEnableEncryption(struct Packet &p) override { return this->X25519AuthenticationHandler::ReceiveEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } }; @@ -167,6 +172,7 @@ public: virtual bool CanBeUsed() const override { return true; } virtual std::string GetPeerPublicKey() const override { return this->X25519AuthenticationHandler::GetPeerPublicKey(); } + virtual void SendEnableEncryption(struct Packet &p) override { this->X25519AuthenticationHandler::SendEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } }; @@ -194,6 +200,7 @@ public: virtual std::string_view GetName() const override { return "X25519-PAKE-client"; } virtual NetworkAuthenticationMethod GetAuthenticationMethod() const override { return NETWORK_AUTH_METHOD_X25519_PAKE; } + virtual bool ReceiveEnableEncryption(struct Packet &p) override { return this->X25519AuthenticationHandler::ReceiveEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } }; @@ -222,6 +229,7 @@ public: virtual bool CanBeUsed() const override { return !this->password_provider->GetPassword().empty(); } virtual std::string GetPeerPublicKey() const override { return this->X25519AuthenticationHandler::GetPeerPublicKey(); } + virtual void SendEnableEncryption(struct Packet &p) override { this->X25519AuthenticationHandler::SendEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } }; @@ -247,6 +255,7 @@ public: virtual std::string_view GetName() const override { return "X25519-AuthorizedKey-client"; } virtual NetworkAuthenticationMethod GetAuthenticationMethod() const override { return NETWORK_AUTH_METHOD_X25519_AUTHORIZED_KEY; } + virtual bool ReceiveEnableEncryption(struct Packet &p) override { return this->X25519AuthenticationHandler::ReceiveEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } @@ -278,6 +287,7 @@ public: virtual bool CanBeUsed() const override { return this->authorized_key_handler->CanBeUsed(); } virtual std::string GetPeerPublicKey() const override { return this->X25519AuthenticationHandler::GetPeerPublicKey(); } + virtual void SendEnableEncryption(struct Packet &p) override { this->X25519AuthenticationHandler::SendEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->X25519AuthenticationHandler::CreateServerToClientEncryptionHandler(); } }; @@ -308,6 +318,7 @@ public: virtual std::string_view GetName() const override; virtual NetworkAuthenticationMethod GetAuthenticationMethod() const override; + virtual bool ReceiveEnableEncryption(struct Packet &p) override { return this->current_handler->ReceiveEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->current_handler->CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->current_handler->CreateServerToClientEncryptionHandler(); } }; @@ -334,6 +345,7 @@ public: virtual bool CanBeUsed() const override; virtual std::string GetPeerPublicKey() const override { return this->handlers.back()->GetPeerPublicKey(); } + virtual void SendEnableEncryption(struct Packet &p) override { this->handlers.back()->SendEnableEncryption(p); } virtual std::unique_ptr CreateClientToServerEncryptionHandler() const override { return this->handlers.back()->CreateClientToServerEncryptionHandler(); } virtual std::unique_ptr CreateServerToClientEncryptionHandler() const override { return this->handlers.back()->CreateServerToClientEncryptionHandler(); } }; diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp index cbbe81184e..8bd2f4c7e4 100644 --- a/src/network/network_server.cpp +++ b/src/network/network_server.cpp @@ -467,6 +467,7 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::SendEnableEncryption() if (this->status != STATUS_AUTH_GAME) return this->CloseConnection(NETWORK_RECV_STATUS_MALFORMED_PACKET); auto p = std::make_unique(this, PACKET_SERVER_ENABLE_ENCRYPTION); + this->authentication_handler->SendEnableEncryption(*p); this->SendPacket(std::move(p)); return NETWORK_RECV_STATUS_OKAY; } diff --git a/src/tests/test_network_crypto.cpp b/src/tests/test_network_crypto.cpp index 33838a6ac9..2c8734e11b 100644 --- a/src/tests/test_network_crypto.cpp +++ b/src/tests/test_network_crypto.cpp @@ -249,6 +249,14 @@ TEST_CASE("Encryption handling") TestAuthentication(server, client, NetworkAuthenticationServerHandler::AUTHENTICATED, NetworkAuthenticationClientHandler::READY_FOR_RESPONSE); + Packet packet(&mock_socket_handler, PacketType{}); + server.SendEnableEncryption(packet); + + bool valid; + std::tie(packet, valid) = CreatePacketForReading(packet, &mock_socket_handler); + CHECK(valid); + CHECK(client.ReceiveEnableEncryption(packet)); + MockNetworkSocketHandler server_socket_handler(server.CreateClientToServerEncryptionHandler(), server.CreateServerToClientEncryptionHandler()); MockNetworkSocketHandler client_socket_handler(client.CreateServerToClientEncryptionHandler(), client.CreateClientToServerEncryptionHandler()); From d683ec01839b709d5b2e3e635f854b7bae874e3a Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sun, 31 Mar 2024 19:37:16 +0100 Subject: [PATCH 62/70] Codechange: Move dropdown and slider out of widgets directory. (#12403) Also shuffle headers to place widget includes near end. This leaves the widgets directory solely for defining Widget IDs. --- src/CMakeLists.txt | 5 +++++ src/airport_gui.cpp | 2 +- src/autoreplace_gui.cpp | 2 +- src/bridge_gui.cpp | 2 +- src/build_vehicle_gui.cpp | 2 +- src/company_cmd.cpp | 3 ++- src/company_gui.cpp | 2 +- src/date_gui.cpp | 2 +- src/{widgets => }/dropdown.cpp | 19 +++++++++---------- src/{widgets => }/dropdown_func.h | 8 ++++---- src/{widgets => }/dropdown_type.h | 22 +++++++++++----------- src/game/game_gui.cpp | 2 +- src/genworld_gui.cpp | 4 ++-- src/ground_vehicle.hpp | 1 + src/group_gui.cpp | 2 +- src/help_gui.cpp | 2 +- src/industry_gui.cpp | 7 ++++--- src/league_gui.cpp | 3 ++- src/music_gui.cpp | 6 +++--- src/network/network_gui.cpp | 4 ++-- src/newgrf_gui.cpp | 4 ++-- src/news_gui.cpp | 2 +- src/order_gui.cpp | 4 ++-- src/rail_gui.cpp | 2 +- src/rail_gui.h | 2 +- src/road_gui.h | 2 +- src/screenshot_gui.cpp | 8 ++++++-- src/script/script_gui.cpp | 2 +- src/settings_gui.cpp | 6 +++--- src/settings_gui.h | 2 +- src/{widgets => }/slider.cpp | 14 +++++++------- src/{widgets => }/slider_func.h | 10 +++++----- src/smallmap_gui.cpp | 3 ++- src/station_cmd.cpp | 3 ++- src/station_gui.cpp | 2 +- src/story_gui.cpp | 4 ++-- src/textfile_gui.cpp | 2 +- src/town_gui.cpp | 2 +- src/vehicle_gui.cpp | 2 +- src/vehicle_gui_base.h | 2 +- src/widgets/CMakeLists.txt | 5 ----- 41 files changed, 96 insertions(+), 87 deletions(-) rename src/{widgets => }/dropdown.cpp (98%) rename src/{widgets => }/dropdown_func.h (87%) rename src/{widgets => }/dropdown_type.h (96%) rename src/{widgets => }/slider.cpp (95%) rename src/{widgets => }/slider_func.h (88%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a55346167a..7951048ee0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -138,6 +138,9 @@ add_files( dock_gui.cpp driver.cpp driver.h + dropdown.cpp + dropdown_func.h + dropdown_type.h economy.cpp economy_base.h economy_cmd.h @@ -393,6 +396,8 @@ add_files( signs_func.h signs_gui.cpp signs_type.h + slider.cpp + slider_func.h slope_func.h slope_type.h smallmap_gui.cpp diff --git a/src/airport_gui.cpp b/src/airport_gui.cpp index e0e1adf461..3e40208db1 100644 --- a/src/airport_gui.cpp +++ b/src/airport_gui.cpp @@ -22,7 +22,7 @@ #include "station_type.h" #include "newgrf_airport.h" #include "newgrf_callbacks.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" #include "core/geometry_func.hpp" #include "hotkeys.h" #include "vehicle_func.h" diff --git a/src/autoreplace_gui.cpp b/src/autoreplace_gui.cpp index f4586350ee..a69786dc2f 100644 --- a/src/autoreplace_gui.cpp +++ b/src/autoreplace_gui.cpp @@ -24,7 +24,7 @@ #include "core/geometry_func.hpp" #include "rail_gui.h" #include "road_gui.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "autoreplace_cmd.h" #include "group_cmd.h" #include "settings_cmd.h" diff --git a/src/bridge_gui.cpp b/src/bridge_gui.cpp index 9cb6f56c25..97f152457e 100644 --- a/src/bridge_gui.cpp +++ b/src/bridge_gui.cpp @@ -18,7 +18,7 @@ #include "gfx_func.h" #include "tunnelbridge.h" #include "sortlist_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "core/geometry_func.hpp" #include "tunnelbridge_map.h" #include "road_gui.h" diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp index a21a139c1a..0b458f3868 100644 --- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -25,7 +25,7 @@ #include "window_func.h" #include "timer/timer_game_calendar.h" #include "vehicle_func.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "engine_gui.h" #include "cargotype.h" #include "core/geometry_func.hpp" diff --git a/src/company_cmd.cpp b/src/company_cmd.cpp index bee3b6032f..2f68a61817 100644 --- a/src/company_cmd.cpp +++ b/src/company_cmd.cpp @@ -34,12 +34,13 @@ #include "game/game.hpp" #include "goal_base.h" #include "story_base.h" -#include "widgets/statusbar_widget.h" #include "company_cmd.h" #include "timer/timer.h" #include "timer/timer_game_economy.h" #include "timer/timer_game_tick.h" +#include "widgets/statusbar_widget.h" + #include "table/strings.h" #include "safeguards.h" diff --git a/src/company_gui.cpp b/src/company_gui.cpp index 21743d31f9..74ce478601 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -23,7 +23,7 @@ #include "company_manager_face.h" #include "strings_func.h" #include "timer/timer_game_economy.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" #include "tilehighlight_func.h" #include "company_base.h" #include "core/geometry_func.hpp" diff --git a/src/date_gui.cpp b/src/date_gui.cpp index 20a6718aeb..e5c2438cd2 100644 --- a/src/date_gui.cpp +++ b/src/date_gui.cpp @@ -14,8 +14,8 @@ #include "window_gui.h" #include "date_gui.h" #include "core/geometry_func.hpp" +#include "dropdown_type.h" -#include "widgets/dropdown_type.h" #include "widgets/date_widget.h" #include "safeguards.h" diff --git a/src/widgets/dropdown.cpp b/src/dropdown.cpp similarity index 98% rename from src/widgets/dropdown.cpp rename to src/dropdown.cpp index a4a1d9953c..2e70120069 100644 --- a/src/widgets/dropdown.cpp +++ b/src/dropdown.cpp @@ -7,19 +7,18 @@ /** @file dropdown.cpp Implementation of the dropdown widget. */ -#include "../stdafx.h" -#include "../window_gui.h" -#include "../string_func.h" -#include "../strings_func.h" -#include "../window_func.h" -#include "../zoom_func.h" -#include "../timer/timer.h" -#include "../timer/timer_window.h" +#include "stdafx.h" #include "dropdown_type.h" +#include "strings_func.h" +#include "timer/timer.h" +#include "timer/timer_window.h" +#include "window_gui.h" +#include "window_func.h" +#include "zoom_func.h" -#include "dropdown_widget.h" +#include "widgets/dropdown_widget.h" -#include "../safeguards.h" +#include "safeguards.h" static constexpr NWidgetPart _nested_dropdown_menu_widgets[] = { diff --git a/src/widgets/dropdown_func.h b/src/dropdown_func.h similarity index 87% rename from src/widgets/dropdown_func.h rename to src/dropdown_func.h index 7cc10f56f2..65e4d272af 100644 --- a/src/widgets/dropdown_func.h +++ b/src/dropdown_func.h @@ -7,12 +7,12 @@ /** @file dropdown_func.h Functions related to the drop down widget. */ -#ifndef WIDGETS_DROPDOWN_FUNC_H -#define WIDGETS_DROPDOWN_FUNC_H +#ifndef DROPDOWN_FUNC_H +#define DROPDOWN_FUNC_H -#include "../window_gui.h" +#include "window_gui.h" /* Show drop down menu containing a fixed list of strings */ void ShowDropDownMenu(Window *w, const StringID *strings, int selected, WidgetID button, uint32_t disabled_mask, uint32_t hidden_mask, uint width = 0); -#endif /* WIDGETS_DROPDOWN_FUNC_H */ +#endif /* DROPDOWN_FUNC_H */ diff --git a/src/widgets/dropdown_type.h b/src/dropdown_type.h similarity index 96% rename from src/widgets/dropdown_type.h rename to src/dropdown_type.h index 89adabde09..fd102b43f2 100644 --- a/src/widgets/dropdown_type.h +++ b/src/dropdown_type.h @@ -7,17 +7,17 @@ /** @file dropdown_type.h Types related to the drop down widget. */ -#ifndef WIDGETS_DROPDOWN_TYPE_H -#define WIDGETS_DROPDOWN_TYPE_H +#ifndef DROPDOWN_TYPE_H +#define DROPDOWN_TYPE_H -#include "../window_type.h" -#include "../gfx_func.h" -#include "../gfx_type.h" -#include "../palette_func.h" -#include "../string_func.h" -#include "../strings_func.h" -#include "../table/strings.h" -#include "../window_gui.h" +#include "window_type.h" +#include "gfx_func.h" +#include "gfx_type.h" +#include "palette_func.h" +#include "string_func.h" +#include "strings_func.h" +#include "table/strings.h" +#include "window_gui.h" /** * Base list item class from which others are derived. @@ -217,4 +217,4 @@ Dimension GetDropDownListDimension(const DropDownList &list); void ReplaceDropDownList(Window *parent, DropDownList &&list); -#endif /* WIDGETS_DROPDOWN_TYPE_H */ +#endif /* DROPDOWN_TYPE_H */ diff --git a/src/game/game_gui.cpp b/src/game/game_gui.cpp index 22f94ef055..b6c6c7588a 100644 --- a/src/game/game_gui.cpp +++ b/src/game/game_gui.cpp @@ -14,7 +14,7 @@ #include "../window_func.h" #include "../network/network.h" #include "../network/network_content.h" -#include "../widgets/dropdown_func.h" +#include "../dropdown_func.h" #include "../timer/timer.h" #include "../timer/timer_window.h" diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp index 33689ea80d..d0071b63ca 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -18,8 +18,8 @@ #include "sound_func.h" #include "fios.h" #include "string_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_type.h" +#include "dropdown_func.h" #include "querystring_gui.h" #include "town.h" #include "core/geometry_func.hpp" diff --git a/src/ground_vehicle.hpp b/src/ground_vehicle.hpp index f8bc393b73..6ff4041603 100644 --- a/src/ground_vehicle.hpp +++ b/src/ground_vehicle.hpp @@ -14,6 +14,7 @@ #include "vehicle_gui.h" #include "landscape.h" #include "window_func.h" + #include "widgets/vehicle_widget.h" /** What is the status of our acceleration? */ diff --git a/src/group_gui.cpp b/src/group_gui.cpp index 812f7a9e86..1143de9f0f 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -18,7 +18,7 @@ #include "vehicle_func.h" #include "autoreplace_gui.h" #include "company_func.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "tilehighlight_func.h" #include "vehicle_gui_base.h" #include "core/geometry_func.hpp" diff --git a/src/help_gui.cpp b/src/help_gui.cpp index 8012a880a1..fdf2975393 100644 --- a/src/help_gui.cpp +++ b/src/help_gui.cpp @@ -15,8 +15,8 @@ #include "table/control_codes.h" #include "string_func.h" #include "openttd.h" - #include "help_gui.h" + #include "widgets/help_widget.h" #include "widgets/misc_widget.h" diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index d4bbf88497..e08e391ef1 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -28,15 +28,14 @@ #include "tilehighlight_func.h" #include "string_func.h" #include "sortlist_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "company_base.h" #include "core/geometry_func.hpp" #include "core/random_func.hpp" #include "core/backup_type.hpp" #include "genworld.h" #include "smallmap_gui.h" -#include "widgets/dropdown_type.h" -#include "widgets/industry_widget.h" +#include "dropdown_type.h" #include "clear_map.h" #include "zoom_func.h" #include "industry_cmd.h" @@ -46,6 +45,8 @@ #include "timer/timer_window.h" #include "hotkeys.h" +#include "widgets/industry_widget.h" + #include "table/strings.h" #include diff --git a/src/league_gui.cpp b/src/league_gui.cpp index 2e0e6ee9d0..3e9c5ca833 100644 --- a/src/league_gui.cpp +++ b/src/league_gui.cpp @@ -9,7 +9,6 @@ #include "stdafx.h" #include "league_gui.h" - #include "company_base.h" #include "company_gui.h" #include "gui.h" @@ -22,7 +21,9 @@ #include "town.h" #include "viewport_func.h" #include "window_gui.h" + #include "widgets/league_widget.h" + #include "table/strings.h" #include "table/sprites.h" diff --git a/src/music_gui.cpp b/src/music_gui.cpp index 3af86476e2..081cd3650b 100644 --- a/src/music_gui.cpp +++ b/src/music_gui.cpp @@ -24,9 +24,9 @@ #include "string_func.h" #include "settings_type.h" #include "settings_gui.h" -#include "widgets/dropdown_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/slider_func.h" +#include "dropdown_func.h" +#include "dropdown_type.h" +#include "slider_func.h" #include "mixer.h" #include "widgets/music_widget.h" diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index 29b6c18433..13e1c76eff 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -23,8 +23,8 @@ #include "network_udp.h" #include "../window_func.h" #include "../gfx_func.h" -#include "../widgets/dropdown_type.h" -#include "../widgets/dropdown_func.h" +#include "../dropdown_type.h" +#include "../dropdown_func.h" #include "../querystring_gui.h" #include "../sortlist_type.h" #include "../company_func.h" diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp index f534996a6b..d70cfda897 100644 --- a/src/newgrf_gui.cpp +++ b/src/newgrf_gui.cpp @@ -16,8 +16,8 @@ #include "gamelog.h" #include "settings_type.h" #include "settings_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_type.h" +#include "dropdown_func.h" #include "network/network.h" #include "network/network_content.h" #include "sortlist_type.h" diff --git a/src/news_gui.cpp b/src/news_gui.cpp index f84676080c..36200d003d 100644 --- a/src/news_gui.cpp +++ b/src/news_gui.cpp @@ -21,7 +21,7 @@ #include "town.h" #include "sound_func.h" #include "string_func.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "statusbar_gui.h" #include "company_manager_face.h" #include "company_func.h" diff --git a/src/order_gui.cpp b/src/order_gui.cpp index 137fd1b76c..f6ee4d9421 100644 --- a/src/order_gui.cpp +++ b/src/order_gui.cpp @@ -15,8 +15,8 @@ #include "timetable.h" #include "strings_func.h" #include "company_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_type.h" +#include "dropdown_func.h" #include "textbuf_gui.h" #include "string_func.h" #include "tilehighlight_func.h" diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index dce5f61b91..71fc9c6c49 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -21,7 +21,7 @@ #include "window_func.h" #include "sound_func.h" #include "company_func.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" #include "tunnelbridge.h" #include "tilehighlight_func.h" #include "spritecache.h" diff --git a/src/rail_gui.h b/src/rail_gui.h index ef51130e8b..46e91b0430 100644 --- a/src/rail_gui.h +++ b/src/rail_gui.h @@ -11,7 +11,7 @@ #define RAIL_GUI_H #include "rail_type.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" struct Window *ShowBuildRailToolbar(RailType railtype); void ReinitGuiAfterToggleElrail(bool disable); diff --git a/src/road_gui.h b/src/road_gui.h index 580c11e32e..fefce6b534 100644 --- a/src/road_gui.h +++ b/src/road_gui.h @@ -13,7 +13,7 @@ #include "road_type.h" #include "tile_type.h" #include "direction_type.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" struct Window *ShowBuildRoadToolbar(RoadType roadtype); struct Window *ShowBuildRoadScenToolbar(RoadType roadtype); diff --git a/src/screenshot_gui.cpp b/src/screenshot_gui.cpp index 8a91dc7eb3..2505b7cbbe 100644 --- a/src/screenshot_gui.cpp +++ b/src/screenshot_gui.cpp @@ -11,10 +11,14 @@ #include "window_func.h" #include "window_gui.h" #include "screenshot.h" -#include "widgets/screenshot_widget.h" -#include "table/strings.h" #include "gfx_func.h" +#include "widgets/screenshot_widget.h" + +#include "table/strings.h" + +#include "safeguards.h" + struct ScreenshotWindow : Window { ScreenshotWindow(WindowDesc *desc) : Window(desc) { diff --git a/src/script/script_gui.cpp b/src/script/script_gui.cpp index 40ac7e3cfd..d6855bdd6c 100644 --- a/src/script/script_gui.cpp +++ b/src/script/script_gui.cpp @@ -17,7 +17,7 @@ #include "../company_gui.h" #include "../window_func.h" #include "../network/network.h" -#include "../widgets/dropdown_func.h" +#include "../dropdown_func.h" #include "../hotkeys.h" #include "../company_cmd.h" #include "../misc_cmd.h" diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index ba0ce024f7..2043373dc6 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -19,9 +19,9 @@ #include "strings_func.h" #include "window_func.h" #include "string_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/dropdown_func.h" -#include "widgets/slider_func.h" +#include "dropdown_type.h" +#include "dropdown_func.h" +#include "slider_func.h" #include "highscore.h" #include "base_media_base.h" #include "company_base.h" diff --git a/src/settings_gui.h b/src/settings_gui.h index b0ad28862f..c95345b00a 100644 --- a/src/settings_gui.h +++ b/src/settings_gui.h @@ -11,7 +11,7 @@ #define SETTING_GUI_H #include "gfx_type.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" /** Width of setting buttons */ #define SETTING_BUTTON_WIDTH ((int)NWidgetScrollbar::GetHorizontalDimension().width * 2) diff --git a/src/widgets/slider.cpp b/src/slider.cpp similarity index 95% rename from src/widgets/slider.cpp rename to src/slider.cpp index b5553e56cb..67894a88d2 100644 --- a/src/widgets/slider.cpp +++ b/src/slider.cpp @@ -7,15 +7,15 @@ /** @file slider.cpp Implementation of the horizontal slider widget. */ -#include "../stdafx.h" -#include "../palette_func.h" -#include "../window_gui.h" -#include "../window_func.h" -#include "../strings_func.h" -#include "../zoom_func.h" +#include "stdafx.h" +#include "gfx_func.h" +#include "palette_func.h" #include "slider_func.h" +#include "strings_func.h" +#include "window_gui.h" +#include "zoom_func.h" -#include "../safeguards.h" +#include "safeguards.h" static const int SLIDER_WIDTH = 3; diff --git a/src/widgets/slider_func.h b/src/slider_func.h similarity index 88% rename from src/widgets/slider_func.h rename to src/slider_func.h index fc2c9f8113..0aaa39bf15 100644 --- a/src/widgets/slider_func.h +++ b/src/slider_func.h @@ -7,11 +7,11 @@ /** @file slider_type.h Types related to the horizontal slider widget. */ -#ifndef WIDGETS_SLIDER_TYPE_H -#define WIDGETS_SLIDER_TYPE_H +#ifndef SLIDER_TYPE_H +#define SLIDER_TYPE_H -#include "../window_type.h" -#include "../gfx_func.h" +#include "core/geometry_type.hpp" +#include "strings_type.h" void DrawSliderWidget(Rect r, int min_value, int max_value, int value, const std::map &labels); bool ClickSliderWidget(Rect r, Point pt, int min_value, int max_value, int &value); @@ -24,4 +24,4 @@ inline bool ClickSliderWidget(Rect r, Point pt, int min_value, int max_value, ui return true; } -#endif /* WIDGETS_SLIDER_TYPE_H */ +#endif /* SLIDER_TYPE_H */ diff --git a/src/smallmap_gui.cpp b/src/smallmap_gui.cpp index 068881cb5d..4bfa47b6de 100644 --- a/src/smallmap_gui.cpp +++ b/src/smallmap_gui.cpp @@ -26,11 +26,12 @@ #include "strings_func.h" #include "blitter/factory.hpp" #include "linkgraph/linkgraph_gui.h" -#include "widgets/smallmap_widget.h" #include "timer/timer.h" #include "timer/timer_window.h" #include "smallmap_gui.h" +#include "widgets/smallmap_widget.h" + #include "table/strings.h" #include diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index bee14e7bd4..5ae1b6735d 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -55,7 +55,6 @@ #include "company_gui.h" #include "linkgraph/linkgraph_base.h" #include "linkgraph/refresh.h" -#include "widgets/station_widget.h" #include "tunnelbridge_map.h" #include "station_cmd.h" #include "waypoint_cmd.h" @@ -68,6 +67,8 @@ #include "timer/timer_game_tick.h" #include "cheat_type.h" +#include "widgets/station_widget.h" + #include "table/strings.h" #include diff --git a/src/station_gui.cpp b/src/station_gui.cpp index 098be7a228..44b90c0714 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -20,7 +20,7 @@ #include "string_func.h" #include "window_func.h" #include "viewport_func.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "station_base.h" #include "waypoint_base.h" #include "tilehighlight_func.h" diff --git a/src/story_gui.cpp b/src/story_gui.cpp index f3ec75a53a..61e8e20965 100644 --- a/src/story_gui.cpp +++ b/src/story_gui.cpp @@ -15,8 +15,8 @@ #include "core/geometry_func.hpp" #include "company_func.h" #include "command_func.h" -#include "widgets/dropdown_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_type.h" +#include "dropdown_func.h" #include "sortlist_type.h" #include "goal_base.h" #include "viewport_func.h" diff --git a/src/textfile_gui.cpp b/src/textfile_gui.cpp index 5976fff1b1..843a28faac 100644 --- a/src/textfile_gui.cpp +++ b/src/textfile_gui.cpp @@ -15,7 +15,7 @@ #include "gfx_func.h" #include "string_func.h" #include "textfile_gui.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" #include "gfx_layout.h" #include "debug.h" #include "openttd.h" diff --git a/src/town_gui.cpp b/src/town_gui.cpp index dbe65e3742..14ddaa8619 100644 --- a/src/town_gui.cpp +++ b/src/town_gui.cpp @@ -31,7 +31,7 @@ #include "core/geometry_func.hpp" #include "genworld.h" #include "stringfilter_type.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "town_kdtree.h" #include "town_cmd.h" #include "timer/timer.h" diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index 99bb9dd9e5..0768c64b49 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -26,7 +26,7 @@ #include "vehicle_func.h" #include "autoreplace_gui.h" #include "string_func.h" -#include "widgets/dropdown_func.h" +#include "dropdown_func.h" #include "timetable.h" #include "articulated_vehicles.h" #include "spritecache.h" diff --git a/src/vehicle_gui_base.h b/src/vehicle_gui_base.h index 3b63484494..c1a9c7a246 100644 --- a/src/vehicle_gui_base.h +++ b/src/vehicle_gui_base.h @@ -17,7 +17,7 @@ #include "vehicle_base.h" #include "vehiclelist.h" #include "window_gui.h" -#include "widgets/dropdown_type.h" +#include "dropdown_type.h" typedef GUIList GUIVehicleList; diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt index dd28f14c8f..933e8c5056 100644 --- a/src/widgets/CMakeLists.txt +++ b/src/widgets/CMakeLists.txt @@ -11,9 +11,6 @@ add_files( date_widget.h depot_widget.h dock_widget.h - dropdown.cpp - dropdown_func.h - dropdown_type.h dropdown_widget.h engine_widget.h error_widget.h @@ -48,8 +45,6 @@ add_files( script_widget.h settings_widget.h sign_widget.h - slider.cpp - slider_func.h smallmap_widget.h station_widget.h statusbar_widget.h From 3d2a8fb60c847b7f7b654778dda006885d9c3fd9 Mon Sep 17 00:00:00 2001 From: translators Date: Mon, 1 Apr 2024 04:40:15 +0000 Subject: [PATCH 63/70] Update: Translations from eints welsh: 5 changes by Ansbaradigeidfran ukrainian: 11 changes by StepanIvasyn catalan: 1 change by J0anJosep portuguese (brazilian): 69 changes by pasantoro --- src/lang/brazilian_portuguese.txt | 138 +++++++++++++++--------------- src/lang/catalan.txt | 2 +- src/lang/ukrainian.txt | 22 ++--- src/lang/welsh.txt | 8 +- 4 files changed, 86 insertions(+), 84 deletions(-) diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index fa95b1a4a2..609943fac6 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -290,7 +290,7 @@ STR_TOOLTIP_RESIZE :{BLACK}Clique e STR_TOOLTIP_TOGGLE_LARGE_SMALL_WINDOW :{BLACK}Alternar entre janela grande/pequena STR_TOOLTIP_VSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de rolagem - desloca a lista para cima/baixo STR_TOOLTIP_HSCROLL_BAR_SCROLLS_LIST :{BLACK}Barra de rolagem - desloca a lista para a esquerda/direita -STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolir construções, etc. em um quadrado do terreno. Ctrl+Clique+Arraste para selecionar a área diagonalmente. Pressione também Shift para só mostrar o custo estimado +STR_TOOLTIP_DEMOLISH_BUILDINGS_ETC :{BLACK}Demolir construções, etc., num quadrado do terreno. Ctrl+Clique+Arraste para selecionar a área diagonalmente. Pressione também Shift para só mostrar o custo estimado # Show engines button ###length VEHICLE_TYPES @@ -349,7 +349,7 @@ STR_SORT_BY_WAITING_TOTAL :Carga total agu STR_SORT_BY_WAITING_AVAILABLE :Carga disponível aguardando STR_SORT_BY_RATING_MAX :Maior classificação de carga STR_SORT_BY_RATING_MIN :Menor classificação de carga -STR_SORT_BY_ENGINE_ID :Motor ID(ordem clássica) +STR_SORT_BY_ENGINE_ID :Motor ID (ordem clássica) STR_SORT_BY_COST :Custo STR_SORT_BY_POWER :Potência STR_SORT_BY_TRACTIVE_EFFORT :Força de tração @@ -617,7 +617,7 @@ STR_GRAPH_LAST_72_MINUTES_TIME_LABEL :{TINY_FONT}{BLA STR_GRAPH_CARGO_PAYMENT_RATES_CAPTION :{WHITE}Tarifas por Carga STR_GRAPH_CARGO_PAYMENT_RATES_DAYS :{TINY_FONT}{BLACK}Dias em trânsito STR_GRAPH_CARGO_PAYMENT_RATES_SECONDS :{TINY_FONT}{BLACK}Segundos em trânsito -STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagamento por entregar 10 unidades (ou 10 mil litros) de carga em uma distância de 20 quadrados +STR_GRAPH_CARGO_PAYMENT_RATES_TITLE :{TINY_FONT}{BLACK}Pagamento por entregar 10 unidades (ou 10 mil litros) de carga numa distância de 20 quadrados STR_GRAPH_CARGO_ENABLE_ALL :{TINY_FONT}{BLACK}Ativar tudo STR_GRAPH_CARGO_DISABLE_ALL :{TINY_FONT}{BLACK}Desativar tudo STR_GRAPH_CARGO_TOOLTIP_ENABLE_ALL :{BLACK}Mostrar todas as cargas no gráfico de tarifas por carga @@ -758,9 +758,9 @@ STR_SMALLMAP_TOOLTIP_SHOW_LINK_STATS_ON_MAP :{BLACK}Mostrar STR_SMALLMAP_TOOLTIP_SHOW_TRANSPORT_ROUTES_ON :{BLACK}Mostrar rotas de transporte no mapa STR_SMALLMAP_TOOLTIP_SHOW_VEGETATION_ON_MAP :{BLACK}Mostrar vegetação no mapa STR_SMALLMAP_TOOLTIP_SHOW_LAND_OWNERS_ON_MAP :{BLACK}Mostrar proprietários dos terrenos no mapa -STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique em um tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desativar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para ativar todos os tipos de indústria -STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clique em uma empresa para mostrar/ocultar suas propriedades. Ctrl+Clique para desativar todas as empresas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as empresas -STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clique em uma carga para mostrar/ocultar sua propriedade. Ctrl+Clique para desativar todas as cargas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as cargas +STR_SMALLMAP_TOOLTIP_INDUSTRY_SELECTION :{BLACK}Clique num tipo de indústria para mostrar/ocultar a indústria. Ctrl+Clique para desativar todos os tipos, exceto o selecionado. Ctrl+Clique novamente para ativar todos os tipos de indústria +STR_SMALLMAP_TOOLTIP_COMPANY_SELECTION :{BLACK}Clique numa empresa para mostrar/ocultar suas propriedades. Ctrl+Clique para desativar todas as empresas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as empresas +STR_SMALLMAP_TOOLTIP_CARGO_SELECTION :{BLACK}Clique numa carga para mostrar/ocultar sua propriedade. Ctrl+Clique para desativar todas as cargas, exceto a selecionada. Ctrl+Clique novamente para ativar todas as cargas STR_SMALLMAP_LEGENDA_ROADS :{TINY_FONT}{BLACK}Estradas STR_SMALLMAP_LEGENDA_RAILROADS :{TINY_FONT}{BLACK}Ferrovias @@ -1285,7 +1285,7 @@ STR_CONFIG_SETTING_INTEREST_RATE :Taxa de juros: STR_CONFIG_SETTING_INTEREST_RATE_HELPTEXT :Taxa de juros do empréstimo; também controla a inflação, se ativado STR_CONFIG_SETTING_RUNNING_COSTS :Custos operacionais: {STRING} -STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Configurar nível de manutenção e custos operacionais de veículos e infraestrutura +STR_CONFIG_SETTING_RUNNING_COSTS_HELPTEXT :Definir o nível dos custos de manutenção e operacionais de veículos e da infraestrutura STR_CONFIG_SETTING_CONSTRUCTION_SPEED :Velocidade de construção: {STRING} STR_CONFIG_SETTING_CONSTRUCTION_SPEED_HELPTEXT :Limitar a quantidade ações de construção para IAs @@ -1306,7 +1306,7 @@ STR_CONFIG_SETTING_SUBSIDY_DURATION_VALUE :{UNITS_YEARS_OR STR_CONFIG_SETTING_SUBSIDY_DURATION_DISABLED :Sem subsídios STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Custos de construção: {STRING} -STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Definir o nível de construção e custos de aquisição +STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Definir o nível dos custos de construção e de aquisição STR_CONFIG_SETTING_RECESSIONS :Recessões: {STRING} STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Se ativado, recessões podem ocorrer periodicamente. Durante uma recessão, toda a produção é significativamente menor (ela retorna ao nível anterior quando a recessão termina) @@ -1360,7 +1360,7 @@ STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Inclinação do STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Inclinação de um quadrado inclinado para um veículo rodoviário. Valores grandes tornam mais difícil para um veículo subir uma colina STR_CONFIG_SETTING_FORBID_90_DEG :Proibir trens de fazer curvas de 90 graus: {STRING} -STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Curvas de 90 graus ocorrem quando uma linha horizontal é seguida diretamente por outra vertical em um quadrado adjacente, fazendo com que o trem vire 90 graus quando passa de um quadrado para o próximo, ao invés dos habituais 45 graus para outras combinações de linhas +STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :Curvas de 90 graus ocorrem quando uma linha horizontal é seguida diretamente por outra vertical num quadrado adjacente, fazendo com que o trem vire 90 graus quando passa de um quadrado para o próximo, ao invés dos habituais 45 graus para outras combinações de linhas STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Permitir a união de estações não adjacentes: {STRING} STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Permitir acrescentar partes a uma estação sem tocar diretamente nas partes já existentes, usando Ctrl+Clique enquanto coloca as novas partes @@ -1378,7 +1378,7 @@ STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH :Comprimento má STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT :Comprimento máximo para a construção de túneis STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD :Método manual de construção de indústria primária: {STRING} -STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Método de fundar uma indústria primária. 'Nenhum' significa que não é possível fundar nenhuma; 'Prospecção' significa que é possível fundar, mas a construção ocorre em um local aleatório do mapa e pode até falhar; 'Como as outras indústrias' significa que novas indústrias podem ser construídas em qualquer local escolhido pelas empresas, como se fossem indústrias de processamento +STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_HELPTEXT :Método de fundar uma indústria primária. 'Nenhum' significa que não é possível fundar nenhuma; 'Prospecção' significa que é possível fundar, mas a construção ocorre num local aleatório do mapa e pode até falhar; 'Como as outras indústrias' significa que novas indústrias podem ser construídas em qualquer local escolhido pelas empresas, como se fossem indústrias de processamento ###length 3 STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NONE :Nenhum STR_CONFIG_SETTING_RAW_INDUSTRY_CONSTRUCTION_METHOD_NORMAL :Como as outras indústrias @@ -1527,10 +1527,10 @@ STR_CONFIG_SETTING_AUTORENEW_MONEY :Quantia mínima STR_CONFIG_SETTING_AUTORENEW_MONEY_HELPTEXT :Quantia mínima de dinheiro que deve existir na conta bancária para a renovação automática de veículos ser considerada STR_CONFIG_SETTING_ERRMSG_DURATION :Duração da mensagem de erro: {STRING} -STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tempo de exibição de mensagens de erro em uma janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente +STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT :Tempo de exibição de mensagens de erro numa janela vermelha. Algumas mensagens de erro (crítico) não são fechadas automaticamente após este tempo e precisam ser fechadas manualmente STR_CONFIG_SETTING_HOVER_DELAY :Mostrar textos de ajuda: {STRING} -STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Outro modo de exibir os textos de ajuda é com o botão direito do mouse quando este valor é fixado em 0. +STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT :Tempo que o cursor deve ficar sobre algum elemento da interface para que os textos de ajuda sejam mostrados. Outro modo de exibir os textos de ajuda é fixar este valor em 0 e clicar com o botão direito do mouse STR_CONFIG_SETTING_HOVER_DELAY_VALUE :Manter o cursor por {COMMA} milissegundo{P 0 "" s} ###setting-zero-is-special STR_CONFIG_SETTING_HOVER_DELAY_DISABLED :Botão direito @@ -1612,7 +1612,7 @@ STR_CONFIG_SETTING_HEIGHTMAP_ROTATION_CLOCKWISE :Sentido Horári STR_CONFIG_SETTING_SE_FLAT_WORLD_HEIGHT :Altitude para um mapa de cenário plano: {STRING} ###length 2 STR_CONFIG_SETTING_EDGES_NOT_EMPTY :{WHITE}Um ou mais quadrados na borda norte não estão vazios -STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Um ou mais quadrados em um dos cantos não é água +STR_CONFIG_SETTING_EDGES_NOT_WATER :{WHITE}Um ou mais quadrados num dos cantos não é água STR_CONFIG_SETTING_STATION_SPREAD :Tamanho máximo de estação: {STRING} STR_CONFIG_SETTING_STATION_SPREAD_HELPTEXT :Área máxima que as partes de uma estação simples podem ocupar. Valores grandes tornam o jogo lento @@ -1922,7 +1922,7 @@ STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Porcentagem da STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Porcentagem da receita dada às etapas intermediárias em sistemas de transbordo, proporcionando maior controle sobre a receita STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :Quando arrastar, colocar sinais a cada: {STRING} -STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Definir a distância na qual os sinais serão construídos em uma linha até o próximo obstáculo (sinal, junção), quando colocar sinais arrastando +STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Definir a distância na qual os sinais serão construídos numa linha até o próximo obstáculo (sinal, junção), quando colocar sinais arrastando STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} quadrado{P 0 "" s} STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE :Quando arrastar, manter distância fixa entre os sinais: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT :Escolher o comportamento da colocação de sinais ao usar Ctrl+Arrastar. Se desativado, sinais são colocados ao redor de túneis ou pontes para evitar seções longas sem sinais. Se ativado, sinais são colocados a cada N quadrados, facilitando o alinhamento de sinais em linhas paralelas @@ -1931,7 +1931,7 @@ STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE :Usar automatica STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT :Definir o ano em que os sinais elétricos serão usados nas ferrovias. Antes deste ano, sinais não-elétricos serão usados (eles têm a mesma funcionalidade, mas aparência diferente) STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES :Alternar entre tipos de sinais: {STRING} -STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Selecionar quais os tipos de sinais serão alternados quando usar Ctrl+Clique em um sinal construído com a ferramenta de sinais +STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT :Selecionar quais os tipos de sinais serão alternados quando usar Ctrl+Clique num sinal construído com a ferramenta de sinais ###length 2 STR_CONFIG_SETTING_CYCLE_SIGNAL_GROUP :Somente grupo atual STR_CONFIG_SETTING_CYCLE_SIGNAL_ALL :Todos visíveis @@ -2140,12 +2140,12 @@ STR_CONFIG_SETTING_PATHFINDER_FOR_ROAD_VEHICLES_HELPTEXT :Algoritmo usado STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS :Gerador de rotas para embarcações: {STRING} STR_CONFIG_SETTING_PATHFINDER_FOR_SHIPS_HELPTEXT :Algoritmo usado para estabelecer as rotas das embarcações STR_CONFIG_SETTING_REVERSE_AT_SIGNALS :Reversão automática em sinais: {STRING} -STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam a direção em um sinal, se eles tiverem esperado lá muito tempo +STR_CONFIG_SETTING_REVERSE_AT_SIGNALS_HELPTEXT :Permitir que os trens invertam a direção num sinal, se eles tiverem esperado lá muito tempo ###length 2 STR_CONFIG_SETTING_PATHFINDER_NPF :NPF STR_CONFIG_SETTING_PATHFINDER_YAPF :YAPF {BLUE}(Recomendado) -STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Alterar o valor +STR_CONFIG_SETTING_QUERY_CAPTION :{WHITE}Modificar o valor # Config errors STR_CONFIG_ERROR :{WHITE}Erro no arquivo de configuração... @@ -2251,7 +2251,7 @@ STR_CHEAT_NO_JETCRASH :{LTBLUE}Aeronav STR_CHEAT_EDIT_MAX_HL :{LTBLUE}Editar a altitude máxima do mapa: {ORANGE}{NUM} STR_CHEAT_EDIT_MAX_HL_QUERY_CAPT :{WHITE}Editar a altura máxima das montanhas no mapa STR_CHEAT_CHANGE_DATE :{LTBLUE}Alterar data: {ORANGE}{DATE_SHORT} -STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Alterar o ano atual +STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Mudar o ano atual STR_CHEAT_SETUP_PROD :{LTBLUE}Permitir modificar os valores de produção: {ORANGE}{STRING} STR_CHEAT_STATION_RATING :{LTBLUE}Fixar classificação das estações em 100%: {ORANGE}{STRING} @@ -2384,7 +2384,7 @@ STR_NETWORK_SERVER_LIST_PLAY_TIME_CAPTION :{BLACK}Tempo de STR_NETWORK_SERVER_LIST_PLAY_TIME_CAPTION_TOOLTIP :{BLACK}Tempo de jogo enquanto{}o jogo não estava pausado STR_NETWORK_SERVER_LIST_INFO_ICONS_TOOLTIP :{BLACK}Idioma, versão do servidor, etc. -STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Clique em um jogo da lista para selecioná-lo +STR_NETWORK_SERVER_LIST_CLICK_GAME_TO_SELECT :{BLACK}Clique num jogo da lista para selecioná-lo STR_NETWORK_SERVER_LIST_LAST_JOINED_SERVER :{BLACK}Servidor no qual você entrou na última vez: STR_NETWORK_SERVER_LIST_CLICK_TO_SELECT_LAST :{BLACK}Clique para selecionar o servidor no qual você jogou na última vez @@ -2656,7 +2656,7 @@ STR_CONTENT_TYPE_CAPTION :{BLACK}Tipo STR_CONTENT_TYPE_CAPTION_TOOLTIP :{BLACK}Tipo do conteúdo STR_CONTENT_NAME_CAPTION :{BLACK}Nome STR_CONTENT_NAME_CAPTION_TOOLTIP :{BLACK}Nome do conteúdo -STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Clique em uma linha para ver os detalhes{}Clique na caixa de seleção para marcar e fazer o download +STR_CONTENT_MATRIX_TOOLTIP :{BLACK}Clique numa linha para ver os detalhes{}Clique na caixa de seleção para marcar e fazer o download STR_CONTENT_SELECT_ALL_CAPTION :{BLACK}Selecionar tudo STR_CONTENT_SELECT_ALL_CAPTION_TOOLTIP :{BLACK}Marcar todo o conteúdo para download STR_CONTENT_SELECT_UPDATES_CAPTION :{BLACK}Selecionar atualizações @@ -2838,15 +2838,15 @@ STR_BUILD_SIGNAL_SEMAPHORE_NORM_TOOLTIP :{BLACK}Sinal de STR_BUILD_SIGNAL_SEMAPHORE_ENTRY_TOOLTIP :{BLACK}Sinal de Entrada (semáforo){}Permanece verde enquanto existir um ou mais sinais de saída verdes na seção seguinte da linha. Caso contrário, ficará vermelho STR_BUILD_SIGNAL_SEMAPHORE_EXIT_TOOLTIP :{BLACK}Sinal de Saída (semáforo){}Funciona do mesmo modo que o sinal de bloqueio, mas é necessário para ativar a cor correta nos pré-sinais de entrada e combinado. STR_BUILD_SIGNAL_SEMAPHORE_COMBO_TOOLTIP :{BLACK}Sinal Combinado (semáforo){}O sinal combinado funciona simultaneamente como um sinal de entrada e de saída. Isto permite a construção de ramificações complexas de pré-sinais. -STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Sinal de Caminho (semáforo){}Um sinal de caminho que permite mais de um trem entrar em uma seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Sinais de caminho padrões podem ser passados no sentido contrário -STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Sinal de Sentido Único(semáforo){}Um sinal de caminho que permite mais de um trem entrar em uma seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Os sinais de sentido único não podem ser passados no sentido contrário +STR_BUILD_SIGNAL_SEMAPHORE_PBS_TOOLTIP :{BLACK}Sinal de Caminho (semáforo){}Um sinal de caminho que permite mais de um trem entrar numa seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Sinais de caminho padrões podem ser passados no sentido contrário +STR_BUILD_SIGNAL_SEMAPHORE_PBS_OWAY_TOOLTIP :{BLACK}Sinal de Sentido Único(semáforo){}Um sinal de caminho que permite mais de um trem entrar numa seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Os sinais de sentido único não podem ser passados no sentido contrário STR_BUILD_SIGNAL_ELECTRIC_NORM_TOOLTIP :{BLACK}Sinal de Bloqueio (elétrico){}Este é o tipo mais básico de sinal e permite que apenas um trem esteja na mesma seção ao mesmo tempo STR_BUILD_SIGNAL_ELECTRIC_ENTRY_TOOLTIP :{BLACK}Sinal de Entrada (elétrico){}Permanece verde enquanto existir um ou mais sinais de saída verdes na seção seguinte da linha. Caso contrário, ficará vermelho. STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Sinal de Saída (elétrico){}Funciona do mesmo modo que o sinal de bloqueio, mas é necessário para ativar a cor correta nos pré-sinais de entrada e combinado. STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Sinal Combinado (elétrico){}O sinal combinado funciona simultaneamente como um sinal de entrada e de saída. Isto permite construir ramificações complexas de pré-sinais. -STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Sinal de Caminho (elétrico){}Um sinal de caminho que permite mais de um trem entrar em uma seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Sinais de caminho padrões podem ser passados no sentido contrário -STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Sinal de Sentido Único (elétrico){}Um sinal de caminho que permite mais de um trem entrar em uma seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Os sinais de sentido único não podem ser passados no sentido contrário -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Converter sinal{}Clique em um sinal existente para convertê-lo para o tipo e variante de sinal selecionado. Ctrl+Clique para mudar a variante existente. Shift+Clique para só mostrar o custo estimado de conversão +STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Sinal de Caminho (elétrico){}Um sinal de caminho que permite mais de um trem entrar numa seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Sinais de caminho padrões podem ser passados no sentido contrário +STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Sinal de Sentido Único (elétrico){}Um sinal de caminho que permite mais de um trem entrar numa seção sinalizada ao mesmo tempo, se o trem puder reservar um caminho para um ponto de parada seguro. Os sinais de sentido único não podem ser passados no sentido contrário +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Converter sinal{}Clique num sinal existente para convertê-lo para o tipo e variante de sinal selecionado. Ctrl+Clique para mudar a variante existente. Shift+Clique para só mostrar o custo estimado de conversão STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Distância entre os sinais quando arrastar STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Diminuir a distância entre os sinais quando arrastar STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Aumentar a distância entre os sinais quando arrastar @@ -3007,7 +3007,7 @@ STR_FOUND_TOWN_CAPTION :{WHITE}Geraçã STR_FOUND_TOWN_NEW_TOWN_BUTTON :{BLACK}Nova Localidade STR_FOUND_TOWN_NEW_TOWN_TOOLTIP :{BLACK}Fundar nova localidade. Pressione também Shift para só mostrar o custo estimado STR_FOUND_TOWN_RANDOM_TOWN_BUTTON :{BLACK}Localidade Aleatória -STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Fundar localidade em um local aleatório +STR_FOUND_TOWN_RANDOM_TOWN_TOOLTIP :{BLACK}Fundar localidade num local aleatório STR_FOUND_TOWN_MANY_RANDOM_TOWNS :{BLACK}Várias localidades aleatórias STR_FOUND_TOWN_RANDOM_TOWNS_TOOLTIP :{BLACK}Cobrir o mapa com localidades colocadas aleatoriamente STR_FOUND_TOWN_EXPAND_ALL_TOWNS :{BLACK}Expandir todas as localidades @@ -3545,7 +3545,7 @@ STR_NEWGRF_ERROR_INDPROD_CALLBACK :Chamada de prod # NewGRF related 'general' warnings STR_NEWGRF_POPUP_CAUTION_CAPTION :{WHITE}Cuidado! -STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Você está prestes a fazer alterações em um jogo em execução. Isso pode travar o OpenTTD ou interromper o estado do jogo. Não envie relatórios de erros sobre estas questões.{}Você quer mesmo fazer as alterações? +STR_NEWGRF_CONFIRMATION_TEXT :{YELLOW}Você está prestes a fazer alterações num jogo em execução. Isso pode travar o OpenTTD ou interromper o estado do jogo. Não envie relatórios de erros sobre estas questões.{}Você quer mesmo fazer as alterações? STR_NEWGRF_DUPLICATE_GRFID :{WHITE}Não é possível adicionar o arquivo: GRF ID duplicado STR_NEWGRF_COMPATIBLE_LOADED :{ORANGE}Arquivo correspondente não encontrado (GRF compatível carregado) @@ -3648,7 +3648,7 @@ STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Mostrar STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Classificação das empresas de transporte: STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING} STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Ações disponíveis: -STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - clique em um item para mais detalhes +STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP :{BLACK}Lista de ações disponíveis nesta localidade - clique no item para mais detalhes STR_LOCAL_AUTHORITY_DO_IT_BUTTON :{BLACK}Fazer isto STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP :{BLACK}Executar a ação selecionada na lista acima @@ -3722,7 +3722,7 @@ STR_SUBSIDIES_OFFERED_FROM_TO :{ORANGE}{STRING STR_SUBSIDIES_NONE :{ORANGE}- Nenhum - STR_SUBSIDIES_SUBSIDISED_TITLE :{BLACK}Serviços de transporte já subsidiados: STR_SUBSIDIES_SUBSIDISED_FROM_TO :{ORANGE}{STRING} d{G e a} {STRING} para {STRING}{YELLOW} ({COMPANY}{YELLOW}, {STRING}) -STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique em um serviço para centralizar a visualização principal em uma indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade +STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Clique num serviço para centralizar a visualização principal numa indústria/localidade. Ctrl+Clique para abrir uma nova visualização na localização da indústria/localidade STR_SUBSIDIES_OFFERED_EXPIRY_DATE :até {DATE_SHORT} STR_SUBSIDIES_OFFERED_EXPIRY_TIME :durante {UNITS_MONTHS_OR_MINUTES} STR_SUBSIDIES_SUBSIDISED_EXPIRY_DATE :até {DATE_SHORT} @@ -3982,10 +3982,10 @@ STR_VEHICLE_LIST_SHIP_CAPTION :{WHITE}{STRING} STR_VEHICLE_LIST_AIRCRAFT_CAPTION :{WHITE}{STRING} - {COMMA} Aeronave{P "" s} ###length VEHICLE_TYPES -STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Trens - clique em um trem para informações -STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Veículos - clique em um veículo para informações -STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Embarcações - clique em uma embarcação para informações -STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Aeronaves - clique em uma aeronave para informações +STR_VEHICLE_LIST_TRAIN_LIST_TOOLTIP :{BLACK}Trens - clique num trem para informações +STR_VEHICLE_LIST_ROAD_VEHICLE_TOOLTIP :{BLACK}Veículos - clique num veículo para informações +STR_VEHICLE_LIST_SHIP_TOOLTIP :{BLACK}Embarcações - clique numa embarcação para informações +STR_VEHICLE_LIST_AIRCRAFT_TOOLTIP :{BLACK}Aeronaves - clique numa aeronave para informações ###length VEHICLE_TYPES STR_VEHICLE_LIST_AVAILABLE_TRAINS :Trens Disponíveis @@ -4029,7 +4029,7 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Aeronaves sem g STR_GROUP_COUNT_WITH_SUBGROUP :{TINY_FONT}{COMMA} (+{COMMA}) -STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupos - clique em um grupo para listar todos os veículos do grupo. Clique+Arraste para organizar a hierarquia +STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Grupos - clique num grupo para listar todos os veículos do grupo. Clique+Arraste para organizar a hierarquia STR_GROUP_CREATE_TOOLTIP :{BLACK}Clique para criar um grupo STR_GROUP_DELETE_TOOLTIP :{BLACK}Excluir o grupo selecionado STR_GROUP_RENAME_TOOLTIP :{BLACK}Alterar o nome do grupo selecionado @@ -4102,10 +4102,10 @@ STR_CARGO_TYPE_FILTER_FREIGHT :Carga STR_CARGO_TYPE_FILTER_NONE :Nenhum ###length VEHICLE_TYPES -STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de seleção de veículo ferroviário. Clique em um veículo para informações. Ctrl+Clique para mostrar/ocultar este tipo de veículo -STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de seleção de veículo rodoviário. Clique em um veículo para informações. Ctrl+Clique para mostrar/ocultar este tipo de veículo -STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de seleção de embarcação. Clique em uma embarcação para informações. Ctrl+Clique para mostrar/ocultar este tipo de embarcação -STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de seleção de aeronave. Clique em uma aeronave para informações. Ctrl+Clique para mostrar/ocultar este tipo de aeronave +STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de seleção de veículo ferroviário. Clique num veículo para informações. Ctrl+Clique para mostrar/ocultar este tipo de veículo +STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de seleção de veículo rodoviário. Clique num veículo para informações. Ctrl+Clique para mostrar/ocultar este tipo de veículo +STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}Lista de seleção de embarcação. Clique numa embarcação para informações. Ctrl+Clique para mostrar/ocultar este tipo de embarcação +STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Lista de seleção de aeronave. Clique numa aeronave para informações. Ctrl+Clique para mostrar/ocultar este tipo de aeronave ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}Comprar Veículo @@ -4180,9 +4180,9 @@ STR_DEPOT_VEHICLE_TOOLTIP_CARGO :{}{CARGO_LONG} ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LIST_TOOLTIP :{BLACK}Trens - arraste o veículo com o botão esquerdo do mouse para acrescentar/retirar do trem, clique com o botão direito para informações. Ctrl+Clique para aplicar uma das funções à cadeia seguinte -STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veículos - clique com o botão direito em um veículo para informações -STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Embarcações - clique com o botão direito em uma embarcação para informações -STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeronaves - clique com o botão direito em uma aeronave para informações +STR_DEPOT_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Veículos - clique com o botão direito num veículo para informações +STR_DEPOT_SHIP_LIST_TOOLTIP :{BLACK}Embarcações - clique com o botão direito numa embarcação para informações +STR_DEPOT_AIRCRAFT_LIST_TOOLTIP :{BLACK}Aeronaves - clique com o botão direito numa aeronave para informações ###length VEHICLE_TYPES STR_DEPOT_TRAIN_SELL_TOOLTIP :{BLACK}Arraste o veículo ferroviário até aqui para vendê-lo @@ -4221,10 +4221,10 @@ STR_DEPOT_CLONE_SHIP :{BLACK}Clonar E STR_DEPOT_CLONE_AIRCRAFT :{BLACK}Clonar Aeronave ###length VEHICLE_TYPES -STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Comprar uma cópia de um trem, incluindo todos os vagões. Clique neste botão e depois em um trem que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado -STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Comprar uma cópia de um veículo rodoviário. Clique neste botão e depois em um veículo que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado -STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Comprar uma cópia de uma embarcação. Clique neste botão e depois em uma embarcação que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado -STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Comprar uma cópia de uma aeronave. Clique neste botão e depois em uma aeronave que está dentro ou fora do hangar. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado +STR_DEPOT_CLONE_TRAIN_DEPOT_INFO :{BLACK}Comprar uma cópia de um trem, incluindo todos os vagões. Clique neste botão e depois num trem que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado +STR_DEPOT_CLONE_ROAD_VEHICLE_DEPOT_INFO :{BLACK}Comprar uma cópia de um veículo rodoviário. Clique neste botão e depois num veículo que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado +STR_DEPOT_CLONE_SHIP_DEPOT_INFO :{BLACK}Comprar uma cópia de uma embarcação. Clique neste botão e depois numa embarcação que está dentro ou fora do depósito. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado +STR_DEPOT_CLONE_AIRCRAFT_INFO_HANGAR_WINDOW :{BLACK}Comprar uma cópia de uma aeronave. Clique neste botão e depois numa aeronave que está dentro ou fora do hangar. Ctrl+Clique para compartilhar as ordens. Pressione também Shift para só mostrar o custo estimado ###length VEHICLE_TYPES STR_DEPOT_TRAIN_LOCATION_TOOLTIP :{BLACK}Centralizar visualização principal na localização do depósito ferroviário. Ctrl+Clique para abrir uma nova visualização na localização do depósito ferroviário @@ -4503,7 +4503,7 @@ STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nova cap STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Nova capacidade: {GOLD}{CARGO_LONG}{}{BLACK}Receita com a adaptação: {GREEN}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nova capacidade: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Custo de adaptação: {RED}{CURRENCY_LONG} STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Nova capacidade: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Receita com a adaptação: {GREEN}{CURRENCY_LONG} -STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Selecionar os veículos para adaptar. Clique+Arraste para selecionar vários veículos. Clique em um espaço vazio para selecionar todo o veículo. Ctrl+Clique para selecionar um veículo e a cadeia seguinte +STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Selecionar os veículos para adaptar. Clique+Arraste para selecionar vários veículos. Clique num espaço vazio para selecionar todo o veículo. Ctrl+Clique para selecionar um veículo e a cadeia seguinte ###length VEHICLE_TYPES STR_REFIT_TRAIN_LIST_TOOLTIP :{BLACK}Escolher tipo de carga para o trem transportar @@ -4528,7 +4528,7 @@ STR_ORDERS_CAPTION :{WHITE}{VEHICLE STR_ORDERS_TIMETABLE_VIEW :{BLACK}Horários STR_ORDERS_TIMETABLE_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de horários -STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - clique em uma ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem +STR_ORDERS_LIST_TOOLTIP :{BLACK}Lista de ordens - clique numa ordem para selecioná-la. Ctrl+Clique para mostrar o destino da ordem STR_ORDER_INDEX :{COMMA}:{NBSP} STR_ORDER_TEXT :{STRING} {STRING} {STRING} {STRING} @@ -4618,7 +4618,7 @@ STR_ORDER_GO_TO_NEAREST_DEPOT :Ir para o depó STR_ORDER_GO_TO_NEAREST_HANGAR :Ir para o hangar mais próximo STR_ORDER_CONDITIONAL :Saltar ordem condicional STR_ORDER_SHARE :Compartilhar ordens -STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Inserir uma nova ordem antes da ordem selecionada ou adicionar no final da lista. Ctrl+Clique em uma estação para 'carga completa de qualquer carga', em um ponto de controle para inverter a configuração padrão 'sem parar' ou em um depósito para 'desagrupar'. Clique em outro veículo para copiar suas ordens ou Ctrl+Clique para compartilhar as ordens. Uma ordem de depósito desativa a manutenção automática do veículo +STR_ORDERS_GO_TO_TOOLTIP :{BLACK}Inserir uma nova ordem antes da ordem selecionada ou adicionar no final da lista. Ctrl+Clique numa estação para 'carga completa de qualquer carga', num ponto de controle para inverter a configuração padrão 'sem parar' ou num depósito para 'desagrupar'. Clique em outro veículo para copiar suas ordens ou Ctrl+Clique para compartilhar as ordens. Uma ordem de depósito desativa a manutenção automática do veículo STR_ORDERS_VEH_WITH_SHARED_ORDERS_LIST_TOOLTIP :{BLACK}Mostrar todos os veículos que compartilham esta programação @@ -4700,7 +4700,7 @@ STR_TIMETABLE_TITLE :{WHITE}{VEHICLE STR_TIMETABLE_ORDER_VIEW :{BLACK}Ordens STR_TIMETABLE_ORDER_VIEW_TOOLTIP :{BLACK}Mudar para a visualização de ordens -STR_TIMETABLE_TOOLTIP :{BLACK}Horários - clique em uma ordem para selecioná-la +STR_TIMETABLE_TOOLTIP :{BLACK}Horários - clique numa ordem para selecioná-la STR_TIMETABLE_NO_TRAVEL :Não viajar STR_TIMETABLE_NOT_TIMETABLEABLE :Viajar (automático; programado pela próxima ordem manual) @@ -4911,7 +4911,7 @@ STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :Arquivo não gr STR_GAME_SAVELOAD_ERROR_DATA_INTEGRITY_CHECK_FAILED :Verificação de integridade de dados falhou STR_GAME_SAVELOAD_ERROR_PATCHPACK :Jogo salvo foi feito com uma versão modificada STR_GAME_SAVELOAD_NOT_AVAILABLE : -STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Jogo foi salvo em uma versão sem suporte a bondes. Todos os bondes foram removidos +STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}Jogo foi salvo numa versão sem suporte a bondes. Todos os bondes foram removidos # Map generation messages STR_ERROR_COULD_NOT_CREATE_TOWN :{WHITE}Geração do mapa interrompida...{}... não há locais adequados para localidades @@ -4949,7 +4949,7 @@ STR_ERROR_MESSAGE_CAPTION_OTHER_COMPANY :{YELLOW}Mensage STR_ERROR_OFF_EDGE_OF_MAP :{WHITE}Fora do mapa STR_ERROR_TOO_CLOSE_TO_EDGE_OF_MAP :{WHITE}Muito perto da borda do mapa STR_ERROR_NOT_ENOUGH_CASH_REQUIRES_CURRENCY :{WHITE}Dinheiro insuficiente - é necessário {CURRENCY_LONG} -STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}É necessário terreno plano +STR_ERROR_FLAT_LAND_REQUIRED :{WHITE}O terreno deve ser plano STR_ERROR_LAND_SLOPED_IN_WRONG_DIRECTION :{WHITE}Terreno inclinado na direção errada STR_ERROR_CAN_T_DO_THIS :{WHITE}Não é possível fazer isto... STR_ERROR_BUILDING_MUST_BE_DEMOLISHED :{WHITE}A construção deve ser demolida primeiro @@ -5015,7 +5015,7 @@ STR_ERROR_CAN_T_BUILD_HERE :{WHITE}Não é STR_ERROR_CAN_T_CONSTRUCT_THIS_INDUSTRY :{WHITE}Não é possível construir este tipo de indústria aqui... STR_ERROR_CAN_T_PROSPECT_INDUSTRY :{WHITE}Não é possível prospectar indústria... STR_ERROR_INDUSTRY_TOO_CLOSE :{WHITE}... muito perto de outra indústria -STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... é necessário fundar uma localidade primeiro +STR_ERROR_MUST_FOUND_TOWN_FIRST :{WHITE}... precisa fundar uma localidade primeiro STR_ERROR_ONLY_ONE_ALLOWED_PER_TOWN :{WHITE}... só é permitido uma por localidade STR_ERROR_CAN_ONLY_BE_BUILT_IN_TOWNS_WITH_POPULATION_OF_1200 :{WHITE}... só pode ser construído em localidades com pelo menos 1200 habitantes STR_ERROR_CAN_ONLY_BE_BUILT_IN_RAINFOREST :{WHITE}... só pode ser construído em florestas tropicais @@ -5058,21 +5058,21 @@ STR_ERROR_DRIVE_THROUGH_JUNCTION :{WHITE}... esta # Station destruction related errors STR_ERROR_CAN_T_REMOVE_PART_OF_STATION :{WHITE}Não é possível remover parte da estação... -STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}É necessário remover a estação ferroviária primeiro +STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}Precisa remover a estação ferroviária primeiro STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Não é possível remover estação de ônibus... STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Não é possível remover estação de caminhões... STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de passageiros... STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Não é possível remover estação de bondes de carga... -STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}É necessário remover o ponto de parada rodoviária primeiro +STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Precisa remover o ponto de parada rodoviária primeiro STR_ERROR_THERE_IS_NO_STATION :{WHITE}... não existe uma estação aqui -STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}É necessário demolir a estação ferroviária primeiro -STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}É necessário demolir a estação de ônibus primeiro -STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}É necessário demolir a estação de caminhões primeiro -STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}É necessário demolir a estação de bondes de passageiros primeiro -STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}É necessário demolir a estação de bondes de carga primeiro -STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}É necessário demolir a doca primeiro -STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}É necessário demolir o aeroporto primeiro +STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Precisa demolir a estação ferroviária primeiro +STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Precisa demolir a estação de ônibus primeiro +STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}Precisa demolir a estação de caminhões primeiro +STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}Precisa demolir a estação de bondes de passageiros primeiro +STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Precisa demolir a estação de bondes de carga primeiro +STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Precisa demolir a doca primeiro +STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Precisa demolir o aeroporto primeiro # Waypoint related errors STR_ERROR_WAYPOINT_ADJOINS_MORE_THAN_ONE_EXISTING :{WHITE}Adjacente a mais de um ponto de controle existente @@ -5083,7 +5083,7 @@ STR_ERROR_CAN_T_POSITION_BUOY_HERE :{WHITE}Não é STR_ERROR_CAN_T_CHANGE_WAYPOINT_NAME :{WHITE}Não é possível alterar o nome do ponto de controle... STR_ERROR_CAN_T_REMOVE_TRAIN_WAYPOINT :{WHITE}Não é possível remover ponto de controle de trem daqui... -STR_ERROR_MUST_REMOVE_RAILWAYPOINT_FIRST :{WHITE}É necessário remover o ponto de controle ferroviário primeiro +STR_ERROR_MUST_REMOVE_RAILWAYPOINT_FIRST :{WHITE}Precisa remover o ponto de controle ferroviário primeiro STR_ERROR_BUOY_IN_THE_WAY :{WHITE}... boia no caminho STR_ERROR_BUOY_IS_IN_USE :{WHITE}... boia está em uso por outra empresa! @@ -5100,7 +5100,7 @@ STR_ERROR_ROAD_VEHICLE_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... deve STR_ERROR_SHIP_MUST_BE_STOPPED_INSIDE_DEPOT :{WHITE}... deve estar parado em um depósito STR_ERROR_AIRCRAFT_MUST_BE_STOPPED_INSIDE_HANGAR :{WHITE}... deve estar parado em um hangar -STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Trens só podem ser modificados quando estão parados em um depósito +STR_ERROR_TRAINS_CAN_ONLY_BE_ALTERED_INSIDE_A_DEPOT :{WHITE}Trens só podem ser modificados quando estão parados num depósito STR_ERROR_TRAIN_TOO_LONG :{WHITE}Trem é muito longo STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE :{WHITE}Não é possível inverter a direção do veículo... STR_ERROR_CAN_T_REVERSE_DIRECTION_RAIL_VEHICLE_MULTIPLE_UNITS :{WHITE}... composto por várias unidades @@ -5129,9 +5129,9 @@ STR_ERROR_AUTOREPLACE_INCOMPATIBLE_REFIT :{WHITE}O novo v # Rail construction errors STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION :{WHITE}Combinação de linhas impossível -STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}É necessário remover os sinais primeiro +STR_ERROR_MUST_REMOVE_SIGNALS_FIRST :{WHITE}Precisa remover os sinais primeiro STR_ERROR_NO_SUITABLE_RAILROAD_TRACK :{WHITE}Ferrovia não adequada -STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}É necessário remover a ferrovia primeiro +STR_ERROR_MUST_REMOVE_RAILROAD_TRACK :{WHITE}Precisa remover a ferrovia primeiro STR_ERROR_CROSSING_ON_ONEWAY_ROAD :{WHITE}Estrada de sentido único ou bloqueada STR_ERROR_CROSSING_DISALLOWED_RAIL :{WHITE}Passagens de nível não são permitidas para este tipo de trilho STR_ERROR_CROSSING_DISALLOWED_ROAD :{WHITE}Passagens de nível não são permitidas para este tipo de estrada @@ -5146,7 +5146,7 @@ STR_ERROR_THERE_ARE_NO_SIGNALS :{WHITE}... não STR_ERROR_CAN_T_CONVERT_RAIL :{WHITE}Não é possível converter o tipo de trilho daqui... # Road construction errors -STR_ERROR_MUST_REMOVE_ROAD_FIRST :{WHITE}É necessário remover a estrada primeiro +STR_ERROR_MUST_REMOVE_ROAD_FIRST :{WHITE}Precisa remover a estrada primeiro STR_ERROR_ONEWAY_ROADS_CAN_T_HAVE_JUNCTION :{WHITE}... estradas de sentido único não podem ter junções STR_ERROR_CAN_T_BUILD_ROAD_HERE :{WHITE}Não é possível construir estrada aqui... STR_ERROR_CAN_T_BUILD_TRAMWAY_HERE :{WHITE}Não é possível construir linha de bonde aqui... @@ -5168,7 +5168,7 @@ STR_ERROR_CAN_T_BUILD_ON_WATER :{WHITE}... não STR_ERROR_CAN_T_BUILD_ON_SEA :{WHITE}... não é possível construir em mar aberto STR_ERROR_CAN_T_BUILD_ON_CANAL :{WHITE}... não é possível construir em um canal STR_ERROR_CAN_T_BUILD_ON_RIVER :{WHITE}... não é possível construir em um rio -STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}É necessário demolir o canal primeiro +STR_ERROR_MUST_DEMOLISH_CANAL_FIRST :{WHITE}Precisa demolir o canal primeiro STR_ERROR_CAN_T_BUILD_AQUEDUCT_HERE :{WHITE}Não é possível construir aqueduto aqui... # Tree related errors @@ -5178,7 +5178,7 @@ STR_ERROR_CAN_T_PLANT_TREE_HERE :{WHITE}Não é # Bridge related errors STR_ERROR_CAN_T_BUILD_BRIDGE_HERE :{WHITE}Não é possível construir ponte aqui... -STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}É necessário demolir a ponte primeiro +STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST :{WHITE}Precisa demolir a ponte primeiro STR_ERROR_CAN_T_START_AND_END_ON :{WHITE}Não é possível iniciar e terminar no mesmo ponto STR_ERROR_BRIDGEHEADS_NOT_SAME_HEIGHT :{WHITE}As extremidades da ponte não estão no mesmo nível STR_ERROR_BRIDGE_TOO_LOW_FOR_TERRAIN :{WHITE}A ponte é muito baixa para o terreno. @@ -5191,7 +5191,7 @@ STR_ERROR_BRIDGE_THROUGH_MAP_BORDER :{WHITE}A ponte # Tunnel related errors STR_ERROR_CAN_T_BUILD_TUNNEL_HERE :{WHITE}Não é possível construir túnel aqui... STR_ERROR_SITE_UNSUITABLE_FOR_TUNNEL :{WHITE}O local não é adequado para a entrada do túnel -STR_ERROR_MUST_DEMOLISH_TUNNEL_FIRST :{WHITE}É necessário demolir o túnel primeiro +STR_ERROR_MUST_DEMOLISH_TUNNEL_FIRST :{WHITE}Precisa demolir o túnel primeiro STR_ERROR_ANOTHER_TUNNEL_IN_THE_WAY :{WHITE}Há outro túnel no caminho STR_ERROR_TUNNEL_THROUGH_MAP_BORDER :{WHITE}O túnel terminaria fora do mapa STR_ERROR_UNABLE_TO_EXCAVATE_LAND :{WHITE}Não é possível escavar o terreno para o outro lado do túnel diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index 8dfe187a17..d7d186a725 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -4644,7 +4644,7 @@ STR_ORDER_REFIT_ORDER :(Remodela a {ST STR_ORDER_REFIT_STOP_ORDER :(Remodela a {STRING} i para) STR_ORDER_STOP_ORDER :(Para) -STR_ORDER_WAIT_TO_UNBUNCH :(espera per a deixar espai entre vehicles) +STR_ORDER_WAIT_TO_UNBUNCH :(Espera per a deixar espai entre vehicles) STR_ORDER_GO_TO_STATION :{STRING} {STATION} {STRING} STR_ORDER_GO_TO_STATION_CAN_T_USE_STATION :{PUSH_COLOUR}{RED}(No pot usar l'estació){POP_COLOUR} {STRING} {STATION} {STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index e949a75ac8..b3d071428f 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -541,7 +541,7 @@ STR_TOOLBAR_TOOLTIP_BUILD_SHIP_DOCKS :{BLACK}Буду STR_TOOLBAR_TOOLTIP_BUILD_AIRPORTS :{BLACK}Будувати аеропорти STR_TOOLBAR_TOOLTIP_LANDSCAPING :{BLACK}Покаже меню створення ландшафту, посадки дерев, створення позначки STR_TOOLBAR_TOOLTIP_SHOW_SOUND_MUSIC_WINDOW :{BLACK}Налаштування звуків/музики -STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Показати останнє повідомлення. Налаштування повідомлень +STR_TOOLBAR_TOOLTIP_SHOW_LAST_MESSAGE_NEWS :{BLACK}Подивитись останнє повідомлення або новину, історію повідомлень чи видалити всі повідомлення STR_TOOLBAR_TOOLTIP_LAND_BLOCK_INFORMATION :{BLACK}Інформація про земельну ділянку, знімки екрану, про гру OpenTTD та інструменти для розробки STR_TOOLBAR_TOOLTIP_SWITCH_TOOLBAR :{BLACK}Переключити панелі @@ -994,7 +994,7 @@ STR_NEWS_COMPANY_BANKRUPT_TITLE :{BIG_FONT}{BLAC STR_NEWS_COMPANY_BANKRUPT_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} була закрита кредиторами і все майно продане! STR_NEWS_COMPANY_LAUNCH_TITLE :{BIG_FONT}{BLACK}Засновано нову компанію! STR_NEWS_COMPANY_LAUNCH_DESCRIPTION :{BIG_FONT}{BLACK}{STRING} починає будівництво біля {TOWN}! -STR_NEWS_MERGER_TAKEOVER_TITLE :{BIG_FONT}{BLACK}{STRING} викуплено {STRING}! +STR_NEWS_MERGER_TAKEOVER_TITLE :Компанію {BIG_FONT}{BLACK}{STRING} агресивно захоплено компанією {STRING} з нерозголошеними витратами! STR_PRESIDENT_NAME_MANAGER :{BLACK}{PRESIDENT_NAME}{}(Керівник) STR_NEWS_NEW_TOWN :{BLACK}{BIG_FONT}{STRING} субсидував спорудження нового міста {TOWN}! @@ -1445,7 +1445,7 @@ STR_CONFIG_SETTING_CONSTRUCTION_COSTS :Вартіст STR_CONFIG_SETTING_CONSTRUCTION_COSTS_HELPTEXT :Встановити рівень витрат на будівництво та придбання STR_CONFIG_SETTING_RECESSIONS :Рецесії: {STRING} -STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Якщо увімкнено, рецесії можуть відбуватися кожні декілька років. Під час рецессії обсяг виробництва на всіх підприємствах значно знижений (він повертається на попередній рівень, коли рецесія закінчується) +STR_CONFIG_SETTING_RECESSIONS_HELPTEXT :Якщо увімкнено, рецесії можуть відбуватися кожні кілька років. Під час рецессії обсяг виробництва на всіх підприємствах значно знижений (він повертається на попередній рівень, коли рецесія закінчується) STR_CONFIG_SETTING_TRAIN_REVERSING :Заборонити поїздам розвертатися на станціях: {STRING} STR_CONFIG_SETTING_TRAIN_REVERSING_HELPTEXT :Якщо увімкнено, поїзди не будуть розвертатися на некінцевих станціях, навіть якщо є коротший шлях до їх наступного пункту призначення, який вимагає розвороту @@ -1720,7 +1720,7 @@ STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_ROUGH :грубо STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN_VERY_ROUGH :дуже грубо STR_CONFIG_SETTING_VARIETY :Розподіл різноманітності: {STRING} -STR_CONFIG_SETTING_VARIETY_HELPTEXT :(Тільки для TerraGenesis) Перевірка наявності на карті гір і рівнин. Оскільки це робить карту плоскішою, інші налаштування необхідно встановити гірськими +STR_CONFIG_SETTING_VARIETY_HELPTEXT :Оберіть наявність на мапі гір і рівнин. Чим більша різноманітність, тим більша відмінність у висотах між гірськими і пласкими ділянками STR_CONFIG_SETTING_RIVER_AMOUNT :Кількість річок: {STRING} STR_CONFIG_SETTING_RIVER_AMOUNT_HELPTEXT :Виберіть кількість річок @@ -1775,7 +1775,7 @@ STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREY_TO_RED :Від сіро STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREYSCALE :Відтінки сірого STR_CONFIG_SETTING_SCROLLMODE :Переміщення вікна обзору: {STRING} -STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Спосіб пересування ігрового поля +STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Спосіб пересування ігрового поля. Налаштування "зафіксувавши курсор" не працює в усіх системах, наприклад веборієнтованих версіях, на сенсорних екранах, у Linux із Wayland ###length 4 STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :Переміщувати ПКМ, зафіксувавши курсор STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :Переміщувати карту ПКМ, зафіксувавши курсор @@ -1891,7 +1891,7 @@ STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Автомат STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Автоматично прибирати сигнали на шляху при будівництві колії. Увага: це може спричинити зіткнення потягів! STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT :Обмеження швидкості прискорення: {STRING} -STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Обмеження швидкості гри при увімкнутому прискоренні. 0 = без обмежень (залежить від можливостей компʼютера). Значення понад 100% уповільнить гру. Верхня межа залежить від параметрів компʼютера і може змінитися у грі. +STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT :Обмеження швидкості гри при увімкнутому прискоренні. 0 = без обмежень (залежить від можливостей компʼютера). Значення понад 100% уповільнить гру. Верхня межа залежить від параметрів компʼютера і може змінюватися у грі STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL :{NUM}% нормальної швидкості гри ###setting-zero-is-special STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_ZERO :Без обмежень (залежить від можливостей компʼютера) @@ -1959,7 +1959,7 @@ STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Який обс STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MБ STR_CONFIG_SETTING_SERVINT_ISPERCENT :Інтервали техогляду вказано у відсотках: {STRING} -STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Налаштування способу визначення необхідності проведення техогляду: через вказаний проміжок часу після попереднього техогляду чи коли поточна надійність транспортного засобу стане нижчою від максимальної його надійності на вказаний процент. +STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :Коли увімкнуто, транспортний засіб намагається проводити техогляд якщо поточна надійність стане нижчою від максимальної надійності на вказаний процент.{}{}Наприклад, iякщо максимальна надійність 90%, а інтервал техогляду 20%, транспортний засіб намагатиметься виконати техогляд якщо поточна надійність сягне 72% STR_CONFIG_SETTING_SERVINT_TRAINS :Інтервал техогляду залізничного транспорту: {STRING} STR_CONFIG_SETTING_SERVINT_TRAINS_HELPTEXT :Налаштування інтервалу техогляду для нового залізничного транспорту (встановлений інтервал може бути змінено окремо для кожного транспортного засобу в його інтерфейсі). @@ -2985,7 +2985,7 @@ STR_BUILD_SIGNAL_ELECTRIC_EXIT_TOOLTIP :{BLACK}Вихі STR_BUILD_SIGNAL_ELECTRIC_COMBO_TOOLTIP :{BLACK}Комбінований сигнал (електричний){}Комбінований сигнал працює як об'єднаний вхідний-вихідний сигнал. Це дозволяє будувати великі "дерева" пре-сигналів STR_BUILD_SIGNAL_ELECTRIC_PBS_TOOLTIP :{BLACK}Розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Розширені сигнали дозволяють проїжджати їх з обох сторін STR_BUILD_SIGNAL_ELECTRIC_PBS_OWAY_TOOLTIP :{BLACK}Односторонній розширений сигнал (електричний){}Розширений сигнал дозволяє більше ніж одному поїзду одночасно заходити до блоку сигналів, якщо поїзд може зарезервувати шлях до безпечної точки зупинки. Односторонні розширені сигнали не дозволяють вїжджати з іншої сторони -STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Заміна сигналів{}Коли обрано, клац на поточному сигналі замінить його на обраний тип і варіант сигналу, Ctrl+клац замінить поточний варіант. Утримуйте Shift для показу витрат на заміну +STR_BUILD_SIGNAL_CONVERT_TOOLTIP :{BLACK}Заміна сигналів{}Клац на поточному сигналі замінить його на обраний тип і варіант сигналу, Ctrl+клац змінить поточний варіант. Утримуйте Shift для показу очікуваних витрат STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_TOOLTIP :{BLACK}Відстань між сигналами при перетаскуванні STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_DECREASE_TOOLTIP :{BLACK}Зменшити відстань між сигналами STR_BUILD_SIGNAL_DRAG_SIGNALS_DENSITY_INCREASE_TOOLTIP :{BLACK}Збільшити відстань між сигналами @@ -3811,7 +3811,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{Y STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{PUSH_COLOUR}{YELLOW}Фінансувати будівництво нових офісів у місті.{}Тимчасово прискорить зростання міста.{}{POP_COLOUR}Вартість: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MONTHS :{PUSH_COLOUR}{YELLOW}Придбати ексклюзивні транспортні права в місті на 12 місяців.{}Міська влада заборонить пасажирам і вантажам наповнювати станції конкурентів. Успішний підкуп конкурентом скасує цю угоду.{}{POP_COLOUR}Вартість: {CURRENCY_LONG} STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT_MINUTES :{PUSH_COLOUR}{YELLOW}Придбати ексклюзивні транспортні права в місті на 12 хвилин.{}Міська влада заборонить пасажирам і вантажам наповнювати станції конкурентів. Успішний підкуп конкурентом скасує цю угоду.{}{POP_COLOUR}Вартість: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{PUSH_COLOUR}{YELLOW}Підкупити місцеву владу для збільшення вашого рейтингу, при викритті загрожує суворим покаранням.{}{POP_COLOUR}Вартість: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{PUSH_COLOUR}{YELLOW}Підкуп місцевої влади для збільшення вашого рейтингу і скасування ексклюзивних транспортних прав конкурентів. При викритті загрожує суворим покаранням.{}{POP_COLOUR}Вартість: {CURRENCY_LONG} # Goal window STR_GOALS_CAPTION :{WHITE}Цілі {COMPANY} @@ -4589,7 +4589,7 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Міст STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Плата за трансфер: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}{NBSP}днів{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}{NBSP}хвилин{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}{NBSP}хвилин{P а и ""}{BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Інтервал техогляду: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Останній техогляд: {LTBLUE}{DATE_LONG} STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Від останнього техогляду минуло хвилин: {LTBLUE}{NUM} @@ -5110,7 +5110,7 @@ STR_ERROR_NOT_ALLOWED_WHILE_PAUSED :{WHITE}Не д STR_ERROR_LOCAL_AUTHORITY_REFUSES_TO_ALLOW_THIS :{WHITE}Влада міста {TOWN} проти цього STR_ERROR_LOCAL_AUTHORITY_REFUSES_AIRPORT :{WHITE}Влада міста {TOWN} відмовляє у будівництві ще одного аеропорту. STR_ERROR_LOCAL_AUTHORITY_REFUSES_NOISE :{WHITE}{TOWN}: місцева влада відмовляє у дозволі на аеропорт з міркувань шуму -STR_ERROR_BRIBE_FAILED :{WHITE}Хтось з місцевих сищиків дізнався про твою спробу дати хабар +STR_ERROR_BRIBE_FAILED :{WHITE}Місцевий слідчий дізнався про твою спробу дати хабар # Levelling errors STR_ERROR_CAN_T_RAISE_LAND_HERE :{WHITE}Неможливо підняти ділянку... diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index cba03ab154..1a4deca7a4 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -2574,6 +2574,7 @@ STR_NETWORK_ERROR_BAD_PLAYER_NAME :{WHITE}Nid yw e STR_NETWORK_ERROR_BAD_SERVER_NAME :{WHITE}Nid yw eich enw gweinyd wedi ei osod. Gall yr enw gael ei osod ar frig y ffenestr Amlchwaraewr STR_NETWORK_ERROR_WRONG_REVISION :{WHITE}Nid y fersiwn y gwestai yn cyfateb i fersiwn y gweinydd STR_NETWORK_ERROR_WRONG_PASSWORD :{WHITE}Cyfrinair anghywir +STR_NETWORK_ERROR_NOT_ON_ALLOW_LIST :{WHITE}Nid ydych ar y rhestr o westai sydd wedi'u caniatáu STR_NETWORK_ERROR_SERVER_FULL :{WHITE}Mae'r gweinydd yn llawn STR_NETWORK_ERROR_SERVER_BANNED :{WHITE}Rydych chi wedi'ch gwahardd o'r gweinydd hwn STR_NETWORK_ERROR_KICKED :{WHITE}Cafoch chi eich cicio o'r gêm @@ -2601,6 +2602,7 @@ STR_NETWORK_ERROR_CLIENT_NOT_EXPECTED :wedi derbyn pac STR_NETWORK_ERROR_CLIENT_WRONG_REVISION :fersiwn anghywir STR_NETWORK_ERROR_CLIENT_NAME_IN_USE :enw eisoes mewn defnydd STR_NETWORK_ERROR_CLIENT_WRONG_PASSWORD :cyfrinair anghywir +STR_NETWORK_ERROR_CLIENT_NOT_ON_ALLOW_LIST :ddim ar restr caniatáu STR_NETWORK_ERROR_CLIENT_COMPANY_MISMATCH :id-cwmni anghywir yn DoCommand STR_NETWORK_ERROR_CLIENT_KICKED :wedi cael cic gan y gweinydd STR_NETWORK_ERROR_CLIENT_CHEATER :yn ceisio twyllo @@ -4447,10 +4449,10 @@ STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Cynhwyse STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Credydau Trosglwyddo: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_DAYS :{BLACK}Bwlch rhwng gwasanaeth: {LTBLUE}{COMMA}{NBSP}diwrnod{BLACK} {STRING} -STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Ysbaid gwasanaethu: {LTBLUE}{COMMA}{NBSP}munud{BLACK} {STRING} +STR_VEHICLE_DETAILS_SERVICING_INTERVAL_MINUTES :{BLACK}Ysbaid gwasanaethu: {LTBLUE}{COMMA}{NBSP}munud(P "" ""){BLACK} {STRING} STR_VEHICLE_DETAILS_SERVICING_INTERVAL_PERCENT :{BLACK}Bwlch rhwng gwasanaethu: {LTBLUE}{COMMA}%{BLACK} {STRING} STR_VEHICLE_DETAILS_LAST_SERVICE_DATE :Gwasanaeth diwethaf: {LTBLUE}{DATE_LONG} -STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Gwasanaeth diwethaf: {LTBLUE}{NUM} munud yn ôl +STR_VEHICLE_DETAILS_LAST_SERVICE_MINUTES_AGO :Gwasanaeth diwethaf: {LTBLUE}{NUM} munud{P "" ""} yn ôl STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_DAYS :{BLACK}Cynyddu'r ysbaid gwasanaeth o 10 diwrnod. Mae Ctrl+Clic yn cynyddu'r ysbaid o 5 diwrnod STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_MINUTES :{BLACK}Cynyddu'r ysbaid gwasanaeth o 5 munud. Mae Ctrl+Clic yn cynyddu'r ysbaid o 1 funud STR_VEHICLE_DETAILS_INCREASE_SERVICING_INTERVAL_TOOLTIP_PERCENT :{BLACK}Cynyddu'r ysbaid gwasanaeth o 10 y cant. Mae Ctrl+Clic yn cynyddu'r ysbaid o 5 y cant @@ -4993,7 +4995,7 @@ STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Methu pr STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Methu adeiladu pencadlys cwmni... # Town related errors -STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Methu adeiladu unrhyw drefi +STR_ERROR_CAN_T_GENERATE_TOWN :{WHITE}Methu adeiladu unrhyw drefi... STR_ERROR_CAN_T_RENAME_TOWN :{WHITE}Methu ailenwi tref... STR_ERROR_CAN_T_FOUND_TOWN_HERE :{WHITE}Methu adeiladu tref yma... STR_ERROR_CAN_T_EXPAND_TOWN :{WHITE}Methu ehangu'r dref... From d68e5159e15cd6b2f5bc82e5b8f248e8e002c262 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 1 Apr 2024 17:54:42 +0100 Subject: [PATCH 64/70] Feature: Allow base sounds set to be changed mid-game. (#12399) --- src/mixer.cpp | 18 ++++++++++++++++++ src/mixer.h | 1 + src/settings_gui.cpp | 10 ++-------- src/sound.cpp | 28 ++++++++++++++++++++++++++++ src/sound_func.h | 2 ++ 5 files changed, 51 insertions(+), 8 deletions(-) diff --git a/src/mixer.cpp b/src/mixer.cpp index 3b30f3d25d..bcfde64a01 100644 --- a/src/mixer.cpp +++ b/src/mixer.cpp @@ -35,6 +35,7 @@ struct MixerChannel { }; static std::atomic _active_channels; +static std::atomic _stop_channels; static MixerChannel _channels[8]; static uint32_t _play_rate = 11025; static uint32_t _max_size = UINT_MAX; @@ -108,6 +109,16 @@ static void MxCloseChannel(uint8_t channel_index) _active_channels.fetch_and(~(1 << channel_index), std::memory_order_release); } +/** + * Close all mixer channels. + * This signals to the mixer that each channel should be closed even if it has not played all remaining samples. + * This is safe (and designed) to be called from the main thread. + */ +void MxCloseAllChannels() +{ + _stop_channels.fetch_or(~0, std::memory_order_release); +} + void MxMixSamples(void *buffer, uint samples) { PerformanceMeasurer framerate(PFE_SOUND); @@ -126,6 +137,12 @@ void MxMixSamples(void *buffer, uint samples) if (_music_stream) _music_stream((int16_t*)buffer, samples); } + /* Check if any channels should be stopped. */ + uint8_t stop = _stop_channels.load(std::memory_order_acquire); + for (uint8_t idx : SetBitIterator(stop)) { + MxCloseChannel(idx); + } + /* Apply simple x^3 scaling to master effect volume. This increases the * perceived difference in loudness to better match expectations. effect_vol * is expected to be in the range 0-127 hence the division by 127 * 127 to @@ -200,6 +217,7 @@ void MxSetChannelVolume(MixerChannel *mc, uint volume, float pan) void MxActivateChannel(MixerChannel *mc) { uint8_t channel_index = mc - _channels; + _stop_channels.fetch_and(~(1 << channel_index), std::memory_order_release); _active_channels.fetch_or((1 << channel_index), std::memory_order_release); } diff --git a/src/mixer.h b/src/mixer.h index ad94f5440c..3fbcbc4bc8 100644 --- a/src/mixer.h +++ b/src/mixer.h @@ -27,6 +27,7 @@ MixerChannel *MxAllocateChannel(); void MxSetChannelRawSrc(MixerChannel *mc, int8_t *mem, size_t size, uint rate, bool is16bit); void MxSetChannelVolume(MixerChannel *mc, uint volume, float pan); void MxActivateChannel(MixerChannel*); +void MxCloseAllChannels(); uint32_t MxSetMusicSource(MxStreamCallback music_callback); diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 2043373dc6..bdcc5e5fcd 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -47,6 +47,7 @@ #include "network/network_survey.h" #include "video/video_driver.hpp" #include "social_integration.h" +#include "sound_func.h" #include "safeguards.h" @@ -940,13 +941,7 @@ struct GameOptionsWindow : Window { break; case WID_GO_BASE_SFX_DROPDOWN: - if (_game_mode == GM_MENU) { - auto set = BaseSounds::GetSet(index); - BaseSounds::ini_set = set->name; - BaseSounds::SetSet(set); - this->reload = true; - this->InvalidateData(); - } + ChangeSoundSet(index); break; case WID_GO_BASE_MUSIC_DROPDOWN: @@ -982,7 +977,6 @@ struct GameOptionsWindow : Window { #endif /* HAS_TRUETYPE_FONT */ this->SetWidgetDisabledState(WID_GO_BASE_GRF_DROPDOWN, _game_mode != GM_MENU); - this->SetWidgetDisabledState(WID_GO_BASE_SFX_DROPDOWN, _game_mode != GM_MENU); this->SetWidgetDisabledState(WID_GO_BASE_GRF_PARAMETERS, BaseGraphics::GetUsedSet() == nullptr || !BaseGraphics::GetUsedSet()->IsConfigurable()); diff --git a/src/sound.cpp b/src/sound.cpp index 78b4cc80de..02bdf82d04 100644 --- a/src/sound.cpp +++ b/src/sound.cpp @@ -233,6 +233,34 @@ void SndCopyToPool() } } +/** + * Change the configured sound set and reset sounds. + * @param index Index of sound set to switch to. + */ +void ChangeSoundSet(int index) +{ + if (BaseSounds::GetIndexOfUsedSet() == index) return; + + auto set = BaseSounds::GetSet(index); + BaseSounds::ini_set = set->name; + BaseSounds::SetSet(set); + + MxCloseAllChannels(); + InitializeSound(); + + /* Replace baseset sounds in the pool with the updated original sounds. This is safe to do as + * any sound still playing owns its sample data. */ + for (uint i = 0; i < ORIGINAL_SAMPLE_COUNT; i++) { + SoundEntry *sound = GetSound(i); + /* GRF Container 0 means the sound comes from the baseset, and isn't overridden by NewGRF. */ + if (sound == nullptr || sound->grf_container_ver != 0) continue; + + *sound = _original_sounds[_sound_idx[i]]; + sound->volume = _sound_base_vol[i]; + sound->priority = 0; + } +} + /** * Decide 'where' (between left and right speaker) to play the sound effect. * Note: Callers must determine if sound effects are enabled. This plays a sound regardless of the setting. diff --git a/src/sound_func.h b/src/sound_func.h index b378dbdfe2..164df9fc24 100644 --- a/src/sound_func.h +++ b/src/sound_func.h @@ -14,6 +14,8 @@ #include "vehicle_type.h" #include "tile_type.h" +void ChangeSoundSet(int index); + void SndPlayTileFx(SoundID sound, TileIndex tile); void SndPlayVehicleFx(SoundID sound, const Vehicle *v); void SndPlayFx(SoundID sound); From 92a171c3e059eda078e43282dae1a59146110539 Mon Sep 17 00:00:00 2001 From: merni-ns <66267867+merni-ns@users.noreply.github.com> Date: Mon, 1 Apr 2024 22:25:44 +0530 Subject: [PATCH 65/70] Doc: Improve the output and documentation of the font command. (#12392) Now that the default font =/= sprite font, there is a different way to invoke the sprite font, and default size applies to default (not sprite). Also, interface scaling now affects the font size. --- src/console_cmds.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp index ad940cd425..8ece62b2f8 100644 --- a/src/console_cmds.cpp +++ b/src/console_cmds.cpp @@ -2179,10 +2179,14 @@ DEF_CONSOLE_CMD(ConFont) IConsolePrint(CC_HELP, "Manage the fonts configuration."); IConsolePrint(CC_HELP, "Usage 'font'."); IConsolePrint(CC_HELP, " Print out the fonts configuration."); - IConsolePrint(CC_HELP, "Usage 'font [medium|small|large|mono] [] [] [aa|noaa]'."); + IConsolePrint(CC_HELP, " The \"Currently active\" configuration is the one actually in effect (after interface scaling and replacing unavailable fonts)."); + IConsolePrint(CC_HELP, " The \"Requested\" configuration is the one requested via console command or config file."); + IConsolePrint(CC_HELP, "Usage 'font [medium|small|large|mono] [] [] [aa|noaa]'."); IConsolePrint(CC_HELP, " Change the configuration for a font."); IConsolePrint(CC_HELP, " Omitting an argument will keep the current value."); - IConsolePrint(CC_HELP, " Set to \"\" for the sprite font (size and aa have no effect on sprite font)."); + IConsolePrint(CC_HELP, " Set to \"\" for the default font. Note that and aa/noaa have no effect if the default font is in use, and fixed defaults are used instead."); + IConsolePrint(CC_HELP, " If the sprite font is enabled in Game Options, it is used instead of the default font."); + IConsolePrint(CC_HELP, " The is automatically multiplied by the current interface scaling."); return true; } @@ -2240,7 +2244,9 @@ DEF_CONSOLE_CMD(ConFont) InitFontCache(fs == FS_MONO); fc = FontCache::Get(fs); } - IConsolePrint(CC_DEFAULT, "{}: \"{}\" {} {} [\"{}\" {} {}]", FontSizeToName(fs), fc->GetFontName(), fc->GetFontSize(), GetFontAAState(fs) ? "aa" : "noaa", setting->font, setting->size, setting->aa ? "aa" : "noaa"); + IConsolePrint(CC_DEFAULT, "{} font:", FontSizeToName(fs)); + IConsolePrint(CC_DEFAULT, "Currently active: \"{}\", size {}, {}", fc->GetFontName(), fc->GetFontSize(), GetFontAAState(fs) ? "aa" : "noaa"); + IConsolePrint(CC_DEFAULT, "Requested: \"{}\", size {}, {}", setting->font, setting->size, setting->aa ? "aa" : "noaa"); } return true; From 6f36f3d714a02a764e505335f8e6af79a7f4814a Mon Sep 17 00:00:00 2001 From: merni-ns <66267867+merni-ns@users.noreply.github.com> Date: Mon, 1 Apr 2024 22:27:03 +0530 Subject: [PATCH 66/70] Fix #11055: Make saveload failure error messages consistent with others (#12247) The save/load error messages were combined using string parameters, rather than using the built-in functionality of error dialogs. --- src/lang/english.txt | 4 ++-- src/openttd.cpp | 9 +++------ src/saveload/saveload.cpp | 23 ++++++++++++----------- src/saveload/saveload.h | 3 ++- 4 files changed, 19 insertions(+), 20 deletions(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index c2a4755d59..0142ed31d4 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -4899,9 +4899,9 @@ STR_MESSAGE_ESTIMATED_INCOME :{WHITE}Estimate STR_ERROR_SAVE_STILL_IN_PROGRESS :{WHITE}Saving still in progress,{}please wait until it is finished! STR_ERROR_AUTOSAVE_FAILED :{WHITE}Autosave failed STR_ERROR_UNABLE_TO_READ_DRIVE :{BLACK}Unable to read drive -STR_ERROR_GAME_SAVE_FAILED :{WHITE}Game Save Failed{}{STRING1} +STR_ERROR_GAME_SAVE_FAILED :{WHITE}Game save failed... STR_ERROR_UNABLE_TO_DELETE_FILE :{WHITE}Unable to delete file -STR_ERROR_GAME_LOAD_FAILED :{WHITE}Game Load Failed{}{STRING1} +STR_ERROR_GAME_LOAD_FAILED :{WHITE}Game load failed... STR_GAME_SAVELOAD_ERROR_BROKEN_INTERNAL_ERROR :Internal error: {RAW_STRING} STR_GAME_SAVELOAD_ERROR_BROKEN_SAVEGAME :Broken savegame - {RAW_STRING} STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :Savegame is made with newer version diff --git a/src/openttd.cpp b/src/openttd.cpp index e4b540c45e..31b9220bbb 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -1132,8 +1132,7 @@ void SwitchToMode(SwitchMode new_mode) ResetWindowSystem(); if (!SafeLoad(_file_to_saveload.name, _file_to_saveload.file_op, _file_to_saveload.detail_ftype, GM_NORMAL, NO_DIRECTORY)) { - SetDParamStr(0, GetSaveLoadErrorString()); - ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_CRITICAL); + ShowErrorMessage(GetSaveLoadErrorType(), GetSaveLoadErrorMessage(), WL_CRITICAL); } else { if (_file_to_saveload.abstract_ftype == FT_SCENARIO) { OnStartScenario(); @@ -1175,8 +1174,7 @@ void SwitchToMode(SwitchMode new_mode) /* Cancel the saveload pausing */ Command::Post(PM_PAUSED_SAVELOAD, false); } else { - SetDParamStr(0, GetSaveLoadErrorString()); - ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_CRITICAL); + ShowErrorMessage(GetSaveLoadErrorType(), GetSaveLoadErrorMessage(), WL_CRITICAL); } UpdateSocialIntegration(GM_EDITOR); @@ -1211,8 +1209,7 @@ void SwitchToMode(SwitchMode new_mode) case SM_SAVE_GAME: // Save game. /* Make network saved games on pause compatible to singleplayer mode */ if (SaveOrLoad(_file_to_saveload.name, SLO_SAVE, DFT_GAME_FILE, NO_DIRECTORY) != SL_OK) { - SetDParamStr(0, GetSaveLoadErrorString()); - ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_ERROR); + ShowErrorMessage(GetSaveLoadErrorType(), GetSaveLoadErrorMessage(), WL_ERROR); } else { CloseWindowById(WC_SAVELOAD, 0); } diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp index af4dfc63a6..6c7f68c49c 100644 --- a/src/saveload/saveload.cpp +++ b/src/saveload/saveload.cpp @@ -2760,22 +2760,23 @@ void SetSaveLoadError(StringID str) _sl.error_str = str; } -/** Get the string representation of the error message */ -const char *GetSaveLoadErrorString() +/** Return the appropriate initial string for an error depending on whether we are saving or loading. */ +StringID GetSaveLoadErrorType() { - SetDParam(0, _sl.error_str); - SetDParamStr(1, _sl.extra_msg); + return _sl.action == SLA_SAVE ? STR_ERROR_GAME_SAVE_FAILED : STR_ERROR_GAME_LOAD_FAILED; +} - static std::string err_str; - err_str = GetString(_sl.action == SLA_SAVE ? STR_ERROR_GAME_SAVE_FAILED : STR_ERROR_GAME_LOAD_FAILED); - return err_str.c_str(); +/** Return the description of the error. **/ +StringID GetSaveLoadErrorMessage() +{ + SetDParamStr(0, _sl.extra_msg); + return _sl.error_str; } /** Show a gui message when saving has failed */ static void SaveFileError() { - SetDParamStr(0, GetSaveLoadErrorString()); - ShowErrorMessage(STR_JUST_RAW_STRING, INVALID_STRING_ID, WL_ERROR); + ShowErrorMessage(GetSaveLoadErrorType(), GetSaveLoadErrorMessage(), WL_ERROR); SaveFileDone(); } @@ -2810,7 +2811,7 @@ static SaveOrLoadResult SaveFileToDisk(bool threaded) * cancelled due to a client disconnecting. */ if (_sl.error_str != STR_NETWORK_ERROR_LOSTCONNECTION) { /* Skip the "colour" character */ - Debug(sl, 0, "{}", GetSaveLoadErrorString() + 3); + Debug(sl, 0, "{}", GetString(GetSaveLoadErrorType()).substr(3) + GetString(GetSaveLoadErrorMessage())); asfp = SaveFileError; } @@ -3128,7 +3129,7 @@ SaveOrLoadResult SaveOrLoad(const std::string &filename, SaveLoadOperation fop, ClearSaveLoadState(); /* Skip the "colour" character */ - if (fop != SLO_CHECK) Debug(sl, 0, "{}", GetSaveLoadErrorString() + 3); + if (fop != SLO_CHECK) Debug(sl, 0, "{}", GetString(GetSaveLoadErrorType()).substr(3) + GetString(GetSaveLoadErrorMessage())); /* A saver/loader exception!! reinitialize all variables to prevent crash! */ return (fop == SLO_LOAD) ? SL_REINIT : SL_ERROR; diff --git a/src/saveload/saveload.h b/src/saveload/saveload.h index 4349f038fb..05ffac1c04 100644 --- a/src/saveload/saveload.h +++ b/src/saveload/saveload.h @@ -416,7 +416,8 @@ extern FileToSaveLoad _file_to_saveload; std::string GenerateDefaultSaveName(); void SetSaveLoadError(StringID str); -const char *GetSaveLoadErrorString(); +StringID GetSaveLoadErrorType(); +StringID GetSaveLoadErrorMessage(); SaveOrLoadResult SaveOrLoad(const std::string &filename, SaveLoadOperation fop, DetailedFileType dft, Subdirectory sb, bool threaded = true); void WaitTillSaved(); void ProcessAsyncSaveFinish(); From e4fc8ef595bdd1566c16e31204667e1eb4d18c76 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Sun, 24 Mar 2024 15:37:01 +0000 Subject: [PATCH 67/70] Codechange: Use std::span for industry cargo window instead of pointer + length. --- src/industry_gui.cpp | 106 +++++++++++++++++++------------------------ 1 file changed, 46 insertions(+), 60 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index e08e391ef1..66f5ad12b7 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -2089,23 +2089,17 @@ struct CargoesField { /** * Make a piece of cargo column. - * @param cargoes Array of #CargoID (may contain #INVALID_CARGO). - * @param length Number of cargoes in \a cargoes. + * @param cargoes Span of #CargoID (may contain #INVALID_CARGO). * @param count Number of cargoes to display (should be at least the number of valid cargoes, or \c -1 to let the method compute it). * @param top_end This is the first cargo field of this column. * @param bottom_end This is the last cargo field of this column. * @note #supp_cargoes and #cust_cargoes should be filled in later. */ - void MakeCargo(const CargoID *cargoes, uint length, int count = -1, bool top_end = false, bool bottom_end = false) + void MakeCargo(const std::span cargoes, int count = -1, bool top_end = false, bool bottom_end = false) { this->type = CFT_CARGO; - auto insert = std::begin(this->u.cargo.vertical_cargoes); - for (uint i = 0; insert != std::end(this->u.cargo.vertical_cargoes) && i < length; i++) { - if (IsValidCargoID(cargoes[i])) { - *insert = cargoes[i]; - ++insert; - } - } + assert(std::size(cargoes) <= std::size(this->u.cargo.vertical_cargoes)); + auto insert = std::copy_if(std::begin(cargoes), std::end(cargoes), std::begin(this->u.cargo.vertical_cargoes), IsValidCargoID); this->u.cargo.num_cargoes = (count < 0) ? static_cast(insert - std::begin(this->u.cargo.vertical_cargoes)) : count; CargoIDComparator comparator; std::sort(std::begin(this->u.cargo.vertical_cargoes), insert, comparator); @@ -2118,16 +2112,15 @@ struct CargoesField { /** * Make a field displaying cargo type names. - * @param cargoes Array of #CargoID (may contain #INVALID_CARGO). - * @param length Number of cargoes in \a cargoes. + * @param cargoes Span of #CargoID (may contain #INVALID_CARGO). * @param left_align ALign texts to the left (else to the right). */ - void MakeCargoLabel(const CargoID *cargoes, uint length, bool left_align) + void MakeCargoLabel(const std::span cargoes, bool left_align) { this->type = CFT_CARGO_LABEL; - uint i; - for (i = 0; i < MAX_CARGOES && i < length; i++) this->u.cargo_label.cargoes[i] = cargoes[i]; - for (; i < MAX_CARGOES; i++) this->u.cargo_label.cargoes[i] = INVALID_CARGO; + assert(std::size(cargoes) <= std::size(this->u.cargo_label.cargoes)); + auto insert = std::copy(std::begin(cargoes), std::end(cargoes), std::begin(this->u.cargo_label.cargoes)); + std::fill(insert, std::end(this->u.cargo_label.cargoes), INVALID_CARGO); this->u.cargo_label.left_align = left_align; } @@ -2197,7 +2190,7 @@ struct CargoesField { } /* Draw the other_produced/other_accepted cargoes. */ - const CargoID *other_right, *other_left; + std::span other_right, other_left; if (_current_text_dir == TD_RTL) { other_right = this->u.industry.other_accepted; other_left = this->u.industry.other_produced; @@ -2471,7 +2464,7 @@ struct CargoesRow { int col = cargo_fld->ConnectCargo(cargo_fld->u.cargo.vertical_cargoes[i], !accepting); if (col >= 0) cargoes[col] = cargo_fld->u.cargo.vertical_cargoes[i]; } - label_fld->MakeCargoLabel(cargoes, lengthof(cargoes), accepting); + label_fld->MakeCargoLabel(cargoes, accepting); } @@ -2670,34 +2663,29 @@ struct IndustryCargoesWindow : public Window { /** * Do the two sets of cargoes have a valid cargo in common? - * @param cargoes1 Base address of the first cargo array. - * @param length1 Number of cargoes in the first cargo array. - * @param cargoes2 Base address of the second cargo array. - * @param length2 Number of cargoes in the second cargo array. + * @param cargoes1 Span of the first cargo list. + * @param cargoes2 Span of the second cargo list. * @return Arrays have at least one valid cargo in common. */ - static bool HasCommonValidCargo(const CargoID *cargoes1, uint length1, const CargoID *cargoes2, uint length2) + static bool HasCommonValidCargo(const std::span cargoes1, const std::span cargoes2) { - while (length1 > 0) { - if (IsValidCargoID(*cargoes1)) { - for (uint i = 0; i < length2; i++) if (*cargoes1 == cargoes2[i]) return true; + for (const CargoID cid1 : cargoes1) { + if (!IsValidCargoID(cid1)) continue; + for (const CargoID cid2 : cargoes2) { + if (cid1 == cid2) return true; } - cargoes1++; - length1--; } return false; } /** * Can houses be used to supply one of the cargoes? - * @param cargoes Base address of the cargo array. - * @param length Number of cargoes in the array. + * @param cargoes Span of cargo list. * @return Houses can supply at least one of the cargoes. */ - static bool HousesCanSupply(const CargoID *cargoes, uint length) + static bool HousesCanSupply(const std::span cargoes) { - for (uint i = 0; i < length; i++) { - CargoID cid = cargoes[i]; + for (const CargoID cid : cargoes) { if (!IsValidCargoID(cid)) continue; TownProductionEffect tpe = CargoSpec::Get(cid)->town_production_effect; if (tpe == TPE_PASSENGERS || tpe == TPE_MAIL) return true; @@ -2707,11 +2695,10 @@ struct IndustryCargoesWindow : public Window { /** * Can houses be used as customers of the produced cargoes? - * @param cargoes Base address of the cargo array. - * @param length Number of cargoes in the array. + * @param cargoes Span of cargo list. * @return Houses can accept at least one of the cargoes. */ - static bool HousesCanAccept(const CargoID *cargoes, uint length) + static bool HousesCanAccept(const std::span cargoes) { HouseZones climate_mask; switch (_settings_game.game_creation.landscape) { @@ -2721,14 +2708,14 @@ struct IndustryCargoesWindow : public Window { case LT_TOYLAND: climate_mask = HZ_TOYLND; break; default: NOT_REACHED(); } - for (uint i = 0; i < length; i++) { - if (!IsValidCargoID(cargoes[i])) continue; + for (const CargoID cid : cargoes) { + if (!IsValidCargoID(cid)) continue; for (const auto &hs : HouseSpec::Specs()) { if (!hs.enabled || !(hs.building_availability & climate_mask)) continue; for (uint j = 0; j < lengthof(hs.accepts_cargo); j++) { - if (hs.cargo_acceptance[j] > 0 && cargoes[i] == hs.accepts_cargo[j]) return true; + if (hs.cargo_acceptance[j] > 0 && cid == hs.accepts_cargo[j]) return true; } } } @@ -2738,17 +2725,16 @@ struct IndustryCargoesWindow : public Window { /** * Count how many industries have accepted cargoes in common with one of the supplied set. * @param cargoes Cargoes to search. - * @param length Number of cargoes in \a cargoes. * @return Number of industries that have an accepted cargo in common with the supplied set. */ - static int CountMatchingAcceptingIndustries(const CargoID *cargoes, uint length) + static int CountMatchingAcceptingIndustries(const std::span cargoes) { int count = 0; for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) { const IndustrySpec *indsp = GetIndustrySpec(it); if (!indsp->enabled) continue; - if (HasCommonValidCargo(cargoes, length, indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) count++; + if (HasCommonValidCargo(cargoes, indsp->accepts_cargo)) count++; } return count; } @@ -2756,17 +2742,16 @@ struct IndustryCargoesWindow : public Window { /** * Count how many industries have produced cargoes in common with one of the supplied set. * @param cargoes Cargoes to search. - * @param length Number of cargoes in \a cargoes. * @return Number of industries that have a produced cargo in common with the supplied set. */ - static int CountMatchingProducingIndustries(const CargoID *cargoes, uint length) + static int CountMatchingProducingIndustries(const std::span cargoes) { int count = 0; for (IndustryType it = 0; it < NUM_INDUSTRYTYPES; it++) { const IndustrySpec *indsp = GetIndustrySpec(it); if (!indsp->enabled) continue; - if (HasCommonValidCargo(cargoes, length, indsp->produced_cargo, lengthof(indsp->produced_cargo))) count++; + if (HasCommonValidCargo(cargoes, indsp->produced_cargo)) count++; } return count; } @@ -2841,18 +2826,18 @@ struct IndustryCargoesWindow : public Window { first_row.columns[4].MakeHeader(STR_INDUSTRY_CARGOES_CUSTOMERS); const IndustrySpec *central_sp = GetIndustrySpec(displayed_it); - bool houses_supply = HousesCanSupply(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo)); - bool houses_accept = HousesCanAccept(central_sp->produced_cargo, lengthof(central_sp->produced_cargo)); + bool houses_supply = HousesCanSupply(central_sp->accepts_cargo); + bool houses_accept = HousesCanAccept(central_sp->produced_cargo); /* Make a field consisting of two cargo columns. */ - int num_supp = CountMatchingProducingIndustries(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo)) + houses_supply; - int num_cust = CountMatchingAcceptingIndustries(central_sp->produced_cargo, lengthof(central_sp->produced_cargo)) + houses_accept; + int num_supp = CountMatchingProducingIndustries(central_sp->accepts_cargo) + houses_supply; + int num_cust = CountMatchingAcceptingIndustries(central_sp->produced_cargo) + houses_accept; int num_indrows = std::max(3, std::max(num_supp, num_cust)); // One is needed for the 'it' industry, and 2 for the cargo labels. for (int i = 0; i < num_indrows; i++) { CargoesRow &row = this->fields.emplace_back(); row.columns[0].MakeEmpty(CFT_EMPTY); - row.columns[1].MakeCargo(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo)); + row.columns[1].MakeCargo(central_sp->accepts_cargo); row.columns[2].MakeEmpty(CFT_EMPTY); - row.columns[3].MakeCargo(central_sp->produced_cargo, lengthof(central_sp->produced_cargo)); + row.columns[3].MakeCargo(central_sp->produced_cargo); row.columns[4].MakeEmpty(CFT_EMPTY); } /* Add central industry. */ @@ -2872,12 +2857,12 @@ struct IndustryCargoesWindow : public Window { const IndustrySpec *indsp = GetIndustrySpec(it); if (!indsp->enabled) continue; - if (HasCommonValidCargo(central_sp->accepts_cargo, lengthof(central_sp->accepts_cargo), indsp->produced_cargo, lengthof(indsp->produced_cargo))) { + if (HasCommonValidCargo(central_sp->accepts_cargo, indsp->produced_cargo)) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); _displayed_industries.set(it); supp_count++; } - if (HasCommonValidCargo(central_sp->produced_cargo, lengthof(central_sp->produced_cargo), indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { + if (HasCommonValidCargo(central_sp->produced_cargo, indsp->accepts_cargo)) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 4, it); _displayed_industries.set(it); cust_count++; @@ -2917,15 +2902,16 @@ struct IndustryCargoesWindow : public Window { first_row.columns[3].MakeEmpty(CFT_SMALL_EMPTY); first_row.columns[4].MakeEmpty(CFT_SMALL_EMPTY); - bool houses_supply = HousesCanSupply(&cid, 1); - bool houses_accept = HousesCanAccept(&cid, 1); - int num_supp = CountMatchingProducingIndustries(&cid, 1) + houses_supply + 1; // Ensure room for the cargo label. - int num_cust = CountMatchingAcceptingIndustries(&cid, 1) + houses_accept; + auto cargoes = std::span(&cid, 1); + bool houses_supply = HousesCanSupply(cargoes); + bool houses_accept = HousesCanAccept(cargoes); + int num_supp = CountMatchingProducingIndustries(cargoes) + houses_supply + 1; // Ensure room for the cargo label. + int num_cust = CountMatchingAcceptingIndustries(cargoes) + houses_accept; int num_indrows = std::max(num_supp, num_cust); for (int i = 0; i < num_indrows; i++) { CargoesRow &row = this->fields.emplace_back(); row.columns[0].MakeEmpty(CFT_EMPTY); - row.columns[1].MakeCargo(&cid, 1); + row.columns[1].MakeCargo(cargoes); row.columns[2].MakeEmpty(CFT_EMPTY); row.columns[3].MakeEmpty(CFT_EMPTY); row.columns[4].MakeEmpty(CFT_EMPTY); @@ -2940,12 +2926,12 @@ struct IndustryCargoesWindow : public Window { const IndustrySpec *indsp = GetIndustrySpec(it); if (!indsp->enabled) continue; - if (HasCommonValidCargo(&cid, 1, indsp->produced_cargo, lengthof(indsp->produced_cargo))) { + if (HasCommonValidCargo(cargoes, indsp->produced_cargo)) { this->PlaceIndustry(1 + supp_count * num_indrows / num_supp, 0, it); _displayed_industries.set(it); supp_count++; } - if (HasCommonValidCargo(&cid, 1, indsp->accepts_cargo, lengthof(indsp->accepts_cargo))) { + if (HasCommonValidCargo(cargoes, indsp->accepts_cargo)) { this->PlaceIndustry(1 + cust_count * num_indrows / num_cust, 2, it); _displayed_industries.set(it); cust_count++; From f6b38e8e06547d39b193cc98b33a9b258347c1fb Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Mon, 25 Mar 2024 21:07:34 +0000 Subject: [PATCH 68/70] Codechange: Remove optional MakeCargo() parameters that are never changed. Default values are always used, so don't need to be parameters. --- src/industry_gui.cpp | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/industry_gui.cpp b/src/industry_gui.cpp index 66f5ad12b7..6beffe9a73 100644 --- a/src/industry_gui.cpp +++ b/src/industry_gui.cpp @@ -2089,23 +2089,20 @@ struct CargoesField { /** * Make a piece of cargo column. - * @param cargoes Span of #CargoID (may contain #INVALID_CARGO). - * @param count Number of cargoes to display (should be at least the number of valid cargoes, or \c -1 to let the method compute it). - * @param top_end This is the first cargo field of this column. - * @param bottom_end This is the last cargo field of this column. + * @param cargoes Span of #CargoID (may contain #INVALID_CARGO). * @note #supp_cargoes and #cust_cargoes should be filled in later. */ - void MakeCargo(const std::span cargoes, int count = -1, bool top_end = false, bool bottom_end = false) + void MakeCargo(const std::span cargoes) { this->type = CFT_CARGO; assert(std::size(cargoes) <= std::size(this->u.cargo.vertical_cargoes)); auto insert = std::copy_if(std::begin(cargoes), std::end(cargoes), std::begin(this->u.cargo.vertical_cargoes), IsValidCargoID); - this->u.cargo.num_cargoes = (count < 0) ? static_cast(insert - std::begin(this->u.cargo.vertical_cargoes)) : count; + this->u.cargo.num_cargoes = static_cast(std::distance(std::begin(this->u.cargo.vertical_cargoes), insert)); CargoIDComparator comparator; std::sort(std::begin(this->u.cargo.vertical_cargoes), insert, comparator); std::fill(insert, std::end(this->u.cargo.vertical_cargoes), INVALID_CARGO); - this->u.cargo.top_end = top_end; - this->u.cargo.bottom_end = bottom_end; + this->u.cargo.top_end = false; + this->u.cargo.bottom_end = false; this->u.cargo.supp_cargoes = 0; this->u.cargo.cust_cargoes = 0; } From bd2a92331b6cddb1aa885a77173543ac22074e6b Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Wed, 29 Nov 2023 22:42:35 +0000 Subject: [PATCH 69/70] Codechange: Use inline and std::array for old industry structures. This avoids separate declaration/definition, and less C-style arrays. --- src/saveload/industry_sl.cpp | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/src/saveload/industry_sl.cpp b/src/saveload/industry_sl.cpp index d55549afe4..0dc09a43c8 100644 --- a/src/saveload/industry_sl.cpp +++ b/src/saveload/industry_sl.cpp @@ -48,15 +48,11 @@ public: } /* Old array structure used for savegames before SLV_INDUSTRY_CARGO_REORGANISE. */ - static CargoID old_cargo[INDUSTRY_NUM_INPUTS]; - static uint16_t old_waiting[INDUSTRY_NUM_INPUTS]; - static TimerGameEconomy::Date old_last_accepted[INDUSTRY_NUM_INPUTS]; + static inline std::array old_cargo; + static inline std::array old_waiting; + static inline std::array old_last_accepted; }; -/* static */ CargoID SlIndustryAccepted::old_cargo[INDUSTRY_NUM_INPUTS]; -/* static */ uint16_t SlIndustryAccepted::old_waiting[INDUSTRY_NUM_INPUTS]; -/* static */ TimerGameEconomy::Date SlIndustryAccepted::old_last_accepted[INDUSTRY_NUM_INPUTS]; - class SlIndustryProducedHistory : public DefaultSaveLoadHandler { public: inline static const SaveLoad description[] = { @@ -121,23 +117,15 @@ public: } /* Old array structure used for savegames before SLV_INDUSTRY_CARGO_REORGANISE. */ - static CargoID old_cargo[INDUSTRY_NUM_OUTPUTS]; - static uint16_t old_waiting[INDUSTRY_NUM_OUTPUTS]; - static uint8_t old_rate[INDUSTRY_NUM_OUTPUTS]; - static uint16_t old_this_month_production[INDUSTRY_NUM_OUTPUTS]; - static uint16_t old_this_month_transported[INDUSTRY_NUM_OUTPUTS]; - static uint16_t old_last_month_production[INDUSTRY_NUM_OUTPUTS]; - static uint16_t old_last_month_transported[INDUSTRY_NUM_OUTPUTS]; + static inline std::array old_cargo; + static inline std::array old_waiting; + static inline std::array old_rate; + static inline std::array old_this_month_production; + static inline std::array old_this_month_transported; + static inline std::array old_last_month_production; + static inline std::array old_last_month_transported; }; -/* static */ CargoID SlIndustryProduced::old_cargo[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint16_t SlIndustryProduced::old_waiting[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint8_t SlIndustryProduced::old_rate[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint16_t SlIndustryProduced::old_this_month_production[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint16_t SlIndustryProduced::old_this_month_transported[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint16_t SlIndustryProduced::old_last_month_production[INDUSTRY_NUM_OUTPUTS]; -/* static */ uint16_t SlIndustryProduced::old_last_month_transported[INDUSTRY_NUM_OUTPUTS]; - static const SaveLoad _industry_desc[] = { SLE_CONDVAR(Industry, location.tile, SLE_FILE_U16 | SLE_VAR_U32, SL_MIN_VERSION, SLV_6), SLE_CONDVAR(Industry, location.tile, SLE_UINT32, SLV_6, SL_MAX_VERSION), From f79ec7955ac06d1821f2087f814c65a0e3dfb9a6 Mon Sep 17 00:00:00 2001 From: Peter Nelson Date: Wed, 29 Nov 2023 22:49:34 +0000 Subject: [PATCH 70/70] Codechange: Explicitly reset old industry data before loading games. --- src/saveload/industry_sl.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/saveload/industry_sl.cpp b/src/saveload/industry_sl.cpp index 0dc09a43c8..693fe7160f 100644 --- a/src/saveload/industry_sl.cpp +++ b/src/saveload/industry_sl.cpp @@ -51,6 +51,13 @@ public: static inline std::array old_cargo; static inline std::array old_waiting; static inline std::array old_last_accepted; + + static void ResetOldStructure() + { + SlIndustryAccepted::old_cargo.fill(INVALID_CARGO); + SlIndustryAccepted::old_waiting.fill(0); + SlIndustryAccepted::old_last_accepted.fill(0); + } }; class SlIndustryProducedHistory : public DefaultSaveLoadHandler { @@ -124,6 +131,17 @@ public: static inline std::array old_this_month_transported; static inline std::array old_last_month_production; static inline std::array old_last_month_transported; + + static void ResetOldStructure() + { + SlIndustryProduced::old_cargo.fill(INVALID_CARGO); + SlIndustryProduced::old_waiting.fill(0); + SlIndustryProduced::old_rate.fill(0); + SlIndustryProduced::old_this_month_production.fill(0); + SlIndustryProduced::old_this_month_transported.fill(0); + SlIndustryProduced::old_last_month_production.fill(0); + SlIndustryProduced::old_this_month_production.fill(0); + } }; static const SaveLoad _industry_desc[] = { @@ -223,6 +241,8 @@ struct INDYChunkHandler : ChunkHandler { int index; + SlIndustryAccepted::ResetOldStructure(); + SlIndustryProduced::ResetOldStructure(); Industry::ResetIndustryCounts(); while ((index = SlIterateArray()) != -1) {