diff --git a/regression/regression/main.nut b/regression/regression/main.nut index 0434524d2c..5eb65b08f1 100644 --- a/regression/regression/main.nut +++ b/regression/regression/main.nut @@ -426,7 +426,7 @@ function Regression::Company() print(" GetCompanyHQ(): " + AICompany.GetCompanyHQ(AICompany.COMPANY_SELF)); print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(129, 129))); print(" GetCompanyHQ(): " + AICompany.GetCompanyHQ(AICompany.COMPANY_SELF)); - print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(129, 128))); + print(" BuildCompanyHQ(): " + AICompany.BuildCompanyHQ(AIMap.GetTileIndex(239, 76))); print(" GetLastErrorString(): " + AIError.GetLastErrorString()); print(" GetAutoRenewStatus(); " + AICompany.GetAutoRenewStatus(AICompany.COMPANY_SELF)); print(" SetAutoRenewStatus(true); " + AICompany.SetAutoRenewStatus(true)); diff --git a/regression/regression/result.txt b/regression/regression/result.txt index 52d957faf9..2153cdaade 100644 --- a/regression/regression/result.txt +++ b/regression/regression/result.txt @@ -7327,7 +7327,7 @@ ERROR: IsEnd() is invalid as Begin() is never called IsBuoyTile(): true IsLockTile(): true IsCanalTile(): true - GetBankBalance(): 1999965070 + GetBankBalance(): 1999965040 --AIWaypointList(BUOY)-- Count(): 1 @@ -7346,7 +7346,7 @@ ERROR: IsEnd() is invalid as Begin() is never called IsBuoyTile(): false IsLockTile(): false IsCanalTile(): false - GetBankBalance(): 1999959675 + GetBankBalance(): 1999959645 BuildWaterDepot(): true BuildDock(): true diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp index 6fa0791102..016d039b94 100644 --- a/src/aircraft_cmd.cpp +++ b/src/aircraft_cmd.cpp @@ -963,6 +963,9 @@ static bool AircraftController(Aircraft *v) return false; } + /* Vehicle is now at the airport. + * Helicopter has arrived at the target landing pad, so the current position is also where it should land. + * Except for Oilrigs which are special due to being a 1x1 station, and helicopters land outside it. */ if (st->airport.type != AT_OILRIG) { x = v->x_pos; y = v->y_pos; @@ -1115,8 +1118,12 @@ static bool AircraftController(Aircraft *v) z = GetAircraftFlightLevel(v); } - /* Some airports (like a rotated intercontinental) are non-rectangular and their primary (north-most) tile might not be at the same height as the runway. - * Therefore, as the hangar must be on flat ground (and we must have a hangar, as we're landing/braking and so not a helicopter), use that as the z position instead. */ + /* NewGRF airports (like a rotated intercontinental from OpenGFX+Airports) can be non-rectangular + * and their primary (north-most) tile does not have to be part of the airport. + * As such, the height of the primary tile can be different from the rest of the airport. + * Given we are landing/breaking, and as such are not a helicopter, we know that there has to be a hangar. + * We also know that the airport itself has to be completely flat (otherwise it is not a valid airport). + * Therefore, use the height of this hangar to calculate our z-value. */ int airport_z = v->z_pos; if ((amd.flag & (AMED_LAND | AMED_BRAKE)) && st != nullptr) { assert(st->airport.HasHangar()); @@ -1395,7 +1402,7 @@ static void CrashAirplane(Aircraft *v) AI::NewEvent(v->owner, new ScriptEventVehicleCrashed(v->index, v->tile, st == nullptr ? ScriptEventVehicleCrashed::CRASH_AIRCRAFT_NO_AIRPORT : ScriptEventVehicleCrashed::CRASH_PLANE_LANDING)); Game::NewEvent(new ScriptEventVehicleCrashed(v->index, v->tile, st == nullptr ? ScriptEventVehicleCrashed::CRASH_AIRCRAFT_NO_AIRPORT : ScriptEventVehicleCrashed::CRASH_PLANE_LANDING)); - AddVehicleNewsItem(newsitem, NT_ACCIDENT, v->index, st != nullptr ? st->index : INVALID_STATION); + AddTileNewsItem(newsitem, NT_ACCIDENT, v->tile, nullptr, st != nullptr ? st->index : INVALID_STATION); ModifyStationRatingAround(v->tile, v->owner, -160, 30); if (_settings_client.sound.disaster) SndPlayVehicleFx(SND_12_EXPLOSION, v); diff --git a/src/command_type.h b/src/command_type.h index 2c3ec0054f..f474540dbd 100644 --- a/src/command_type.h +++ b/src/command_type.h @@ -471,7 +471,7 @@ enum DoCommandFlag { DC_AUTO = 0x002, ///< don't allow building on structures DC_QUERY_COST = 0x004, ///< query cost only, don't build. DC_NO_WATER = 0x008, ///< don't allow building on water - DC_NO_RAIL_OVERLAP = 0x010, ///< don't allow overlap of rails (used in buildrail) + // 0x010 is unused DC_NO_TEST_TOWN_RATING = 0x020, ///< town rating does not disallow you from building DC_BANKRUPT = 0x040, ///< company bankrupts, skip money check, skip vehicle on tile check in some cases DC_AUTOREPLACE = 0x080, ///< autoreplace/autorenew is in progress, this shall disable vehicle limits when building, and ignore certain restrictions when undoing things (like vehicle attach callback) diff --git a/src/company_gui.cpp b/src/company_gui.cpp index c99324b98a..425e78ca44 100644 --- a/src/company_gui.cpp +++ b/src/company_gui.cpp @@ -2185,30 +2185,30 @@ static const NWidgetPart _nested_company_widgets[] = { EndContainer(), NWidget(NWID_VERTICAL), SetPIP(4, 2, 4), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_C_SELECT_VIEW_BUILD_HQ), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_C_VIEW_HQ), SetFill(1, 0), SetDataTip(STR_COMPANY_VIEW_VIEW_HQ_BUTTON, STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP), - NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_C_BUILD_HQ), SetFill(1, 0), SetDataTip(STR_COMPANY_VIEW_BUILD_HQ_BUTTON, STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_C_VIEW_HQ), SetDataTip(STR_COMPANY_VIEW_VIEW_HQ_BUTTON, STR_COMPANY_VIEW_VIEW_HQ_TOOLTIP), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_C_BUILD_HQ), SetDataTip(STR_COMPANY_VIEW_BUILD_HQ_BUTTON, STR_COMPANY_VIEW_BUILD_HQ_TOOLTIP), EndContainer(), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_C_SELECT_RELOCATE), - NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_C_RELOCATE_HQ), SetFill(1, 0), SetDataTip(STR_COMPANY_VIEW_RELOCATE_HQ, STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS), - NWidget(NWID_SPACER), SetMinimalSize(90, 0), + NWidget(WWT_TEXTBTN, COLOUR_GREY, WID_C_RELOCATE_HQ), SetDataTip(STR_COMPANY_VIEW_RELOCATE_HQ, STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS), + NWidget(NWID_SPACER), EndContainer(), NWidget(NWID_SPACER), SetFill(0, 1), EndContainer(), EndContainer(), NWidget(WWT_TEXT, COLOUR_GREY, WID_C_DESC_COMPANY_VALUE), SetDataTip(STR_COMPANY_VIEW_COMPANY_VALUE, STR_NULL), SetFill(1, 0), - NWidget(NWID_VERTICAL), SetPIP(4, 2, 4), - NWidget(NWID_HORIZONTAL), SetPIP(0, 4, 0), - NWidget(NWID_VERTICAL), - NWidget(WWT_TEXT, COLOUR_GREY, WID_C_DESC_INFRASTRUCTURE), SetDataTip(STR_COMPANY_VIEW_INFRASTRUCTURE, STR_NULL), - NWidget(NWID_SPACER), SetFill(0, 1), - EndContainer(), - NWidget(WWT_EMPTY, INVALID_COLOUR, WID_C_DESC_INFRASTRUCTURE_COUNTS), SetMinimalTextLines(5, 0), SetFill(1, 0), - NWidget(NWID_VERTICAL), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_C_VIEW_INFRASTRUCTURE), SetDataTip(STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON, STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP), - NWidget(NWID_SPACER), SetFill(0, 1), SetMinimalSize(90, 0), - EndContainer(), + NWidget(NWID_VERTICAL), SetPIP(4, 2, 4), + NWidget(NWID_HORIZONTAL), SetPIP(0, 4, 0), + NWidget(NWID_VERTICAL), + NWidget(WWT_TEXT, COLOUR_GREY, WID_C_DESC_INFRASTRUCTURE), SetDataTip(STR_COMPANY_VIEW_INFRASTRUCTURE, STR_NULL), + NWidget(NWID_SPACER), SetFill(0, 1), + EndContainer(), + NWidget(WWT_EMPTY, INVALID_COLOUR, WID_C_DESC_INFRASTRUCTURE_COUNTS), SetMinimalTextLines(5, 0), SetFill(1, 0), + NWidget(NWID_VERTICAL), + NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_C_VIEW_INFRASTRUCTURE), SetDataTip(STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON, STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP), + NWidget(NWID_SPACER), EndContainer(), EndContainer(), + EndContainer(), NWidget(NWID_HORIZONTAL), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_C_SELECT_DESC_OWNERS), NWidget(NWID_VERTICAL), SetPIP(5, 5, 4), @@ -2431,6 +2431,21 @@ struct CompanyWindow : Window break; } + case WID_C_VIEW_HQ: + case WID_C_BUILD_HQ: + case WID_C_RELOCATE_HQ: + case WID_C_VIEW_INFRASTRUCTURE: + case WID_C_COMPANY_PASSWORD: + case WID_C_COMPANY_JOIN: + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_VIEW_HQ_BUTTON).width); + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_BUILD_HQ_BUTTON).width); + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_RELOCATE_HQ).width); + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON).width); + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_PASSWORD).width); + size->width = max(size->width, GetStringBoundingBox(STR_COMPANY_VIEW_JOIN).width); + break; + + case WID_C_HAS_PASSWORD: *size = maxdim(*size, GetSpriteSize(SPR_LOCK)); break; @@ -2687,7 +2702,7 @@ struct CompanyWindow : Window default: NOT_REACHED(); case WID_C_GIVE_MONEY: - DoCommandP(0, (strtoull(str, nullptr, 10) / _currency->rate), this->window_number, CMD_GIVE_MONEY | CMD_MSG(STR_ERROR_INSUFFICIENT_FUNDS), CcGiveMoney, str); + DoCommandP(0, (strtoull(str, nullptr, 10) / _currency->rate), this->window_number, CMD_GIVE_MONEY | CMD_MSG(STR_ERROR_CAN_T_GIVE_MONEY), CcGiveMoney, str); break; case WID_C_PRESIDENT_NAME: diff --git a/src/disaster_vehicle.cpp b/src/disaster_vehicle.cpp index 13a9e40d16..d6020bb07c 100644 --- a/src/disaster_vehicle.cpp +++ b/src/disaster_vehicle.cpp @@ -265,7 +265,7 @@ static bool DisasterTick_Zeppeliner(DisasterVehicle *v) v->age = 0; SetDParam(0, GetStationIndex(v->tile)); - AddVehicleNewsItem(STR_NEWS_DISASTER_ZEPPELIN, NT_ACCIDENT, v->index); // Delete the news, when the zeppelin is gone + AddTileNewsItem(STR_NEWS_DISASTER_ZEPPELIN, NT_ACCIDENT, v->tile); AI::NewEvent(GetTileOwner(v->tile), new ScriptEventDisasterZeppelinerCrashed(GetStationIndex(v->tile))); } } @@ -400,7 +400,7 @@ static bool DisasterTick_Ufo(DisasterVehicle *v) if (u->crashed_ctr == 0) { u->Crash(); - AddVehicleNewsItem(STR_NEWS_DISASTER_SMALL_UFO, NT_ACCIDENT, u->index); // delete the news, when the roadvehicle is gone + AddTileNewsItem(STR_NEWS_DISASTER_SMALL_UFO, NT_ACCIDENT, u->tile); AI::NewEvent(u->owner, new ScriptEventVehicleCrashed(u->index, u->tile, ScriptEventVehicleCrashed::CRASH_RV_UFO)); Game::NewEvent(new ScriptEventVehicleCrashed(u->index, u->tile, ScriptEventVehicleCrashed::CRASH_RV_UFO)); @@ -479,7 +479,7 @@ static bool DisasterTick_Aircraft(DisasterVehicle *v, uint16 image_override, boo DestructIndustry(i); SetDParam(0, i->town->index); - AddIndustryNewsItem(news_message, NT_ACCIDENT, i->index); // delete the news, when the industry closes + AddTileNewsItem(news_message, NT_ACCIDENT, v->dest_tile); if (_settings_client.sound.disaster) SndPlayTileFx(SND_12_EXPLOSION, i->location.tile); } } else if (v->current_order.GetDestination() == 0) { diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 496868c4a2..397682f590 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -2197,8 +2197,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} he STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} het 'n nuwe maatskappy gestig (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} het die spel verlaat ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} het sy/haar naam verander na {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} het jou besigheid {2:CURRENCY_LONG} gegee -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Jy het {1:STRING} {2:CURRENCY_LONG} gegee STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Die verskaffer het die sessie toegemaak STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Die verskaffer is besig om te weerbegin...{}Wag asb... STR_NETWORK_MESSAGE_KICKED :*** {STRING} is geskop. Rede: ({STRING}) diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index 3c56a92e8d..4c9ae67743 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -1725,7 +1725,6 @@ STR_NETWORK_SERVER :خادم STR_NETWORK_CLIENT :عميل STR_NETWORK_SPECTATORS :المشاهدين - # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}لا تحفظ كلمة المرور المدخلة STR_COMPANY_PASSWORD_OK :{BLACK}اعط الشركة كلمة المرور الجديدة @@ -1815,8 +1814,6 @@ 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_NAME_CHANGE :*** {STRING} قد غير اسمه / اسمها الى {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} اعطى شركتك : {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** انت اعطيت {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}اقفل الخادم الجلسة STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}يتم بدأ الخادم من جديد ...{} الرجاء الأنتظار diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 5a81e9c3de..e3fa00197c 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -2066,8 +2066,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ik STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} konpainia berria sortu du (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} jokoa utzi du ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING}-k bere izena {STRING}-ra aldatu du -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} zure empresa eman {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Zuk eman diozu {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Zebitzariak saioa itxi du STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Zerbitzaria berriro hasten ari da...{}Mesedez itxaron... diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index 0f74f1fbf1..58f5ebf564 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -2507,8 +2507,6 @@ 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_NAME_CHANGE :*** {STRING} зьмяніў сваё імя на {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} перадаў вашай кампаніі {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Вы перадалі {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Гэты сэрвэр закрыў сэсію STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Гэты сэрвэр перазапускаецца...{}Пачакайце, калі ласка diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 7184971985..e5b8b2c91b 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -2207,8 +2207,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} es STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} abriu uma nova companhia (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} saiu do jogo ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} mudou seu nome para {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} deu à sua companhia{2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Você deu a {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor fechou a sessão STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor está reiniciando...{}Aguarde... STR_NETWORK_MESSAGE_KICKED :*** {STRING} foi kickado. Motivo: ({STRING}) diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index 769a480f21..7fcedea372 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -2116,8 +2116,6 @@ 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_NAME_CHANGE :*** {STRING} си промени името на {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} изпрати {2:CURRENCY_LONG} на твоята компания -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Ти даде {2:CURRENCY_LONG} на {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Сървърът прекъсна сесията STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Сървърът се рестартира...{}Моля изчакайте... diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index ef6543d4f9..f5ee157178 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -2233,8 +2233,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} s' STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ha començat una nova companyia (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ha deixat la partida ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ha canviat el seu nom a {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ha donat a la teva companyia {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Has donat {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}El servidor ha tancat la sessió STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}El servidor està reiniciant...{}Espera un moment... STR_NETWORK_MESSAGE_KICKED :*** S'ha expulsat {STRING}. Motiu: {STRING} diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index 545da39068..88899f2d55 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -2302,8 +2302,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} je osnovao novu tvrtku (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} je izašao iz igre ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} je promijenio/la ime u {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} je dao vašoj tvrtki {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dao si {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Poslužitelj je zatvorio sesiju STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Poslužitelj se ponovno pokreće...{}Molimo pričekajte... STR_NETWORK_MESSAGE_KICKED :*** {STRING} je izbačen. Razlog: ({STRING}) diff --git a/src/lang/czech.txt b/src/lang/czech.txt index 9832b43769..a83824c37f 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -2554,9 +2554,9 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} zakládá novou společnost (č. {2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} opouští hru ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} si mění jméno na {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} poslal(a) tvé společnosti {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY_RECEIVE :*** {STRING} poslal(a) tvé společnosti {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dal(a) jsi {1:STRING} {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_MONEY_GIVEN :*** {STRING} dal {1:STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} dal {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_MONEY_GIVE_SRC_DESCRIPTION :{STRING} ({COMPANY}) STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server ukončil relaci STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server se restartuje...{}Počkejte prosím... diff --git a/src/lang/danish.txt b/src/lang/danish.txt index d3616cd3cf..e1ad95047c 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -2207,8 +2207,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} har startet et nyt selskab (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} har forladt spillet ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} har ændret sit navn til {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gav dit selskab {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du gav {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serveren har lukket ned for dette spil STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Serveren genstarter...{}Vent venligst... STR_NETWORK_MESSAGE_KICKED :*** {STRING} blev sparket ud. Grund: ({STRING}) diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index 8f074405e4..f6046e069f 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -2206,8 +2206,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ki STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} heeft een nieuw bedrijf opgericht (nr. {2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} heeft het spel verlaten ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} heeft zijn/haar naam gewijzigd naar {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gaf je bedrijf {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Je gaf {2:CURRENCY_LONG} aan {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}De server heeft de sessie gesloten STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}De server wordt opnieuw gestart...{}Wacht alstublieft... STR_NETWORK_MESSAGE_KICKED :*** {STRING} is eruit geschopt. Reden: ({STRING}) diff --git a/src/lang/english.txt b/src/lang/english.txt index 0cb24e5754..59e100b5ec 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -1622,6 +1622,8 @@ STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS :Keep building t STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT :Keep the building tools for bridges, tunnels, etc. open after use STR_CONFIG_SETTING_EXPENSES_LAYOUT :Group expenses in company finance window: {STRING2} STR_CONFIG_SETTING_EXPENSES_LAYOUT_HELPTEXT :Define the layout for the company expenses window +STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS :Automatically remove signals during rail construction: {STRING2} +STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT :Automatically remove signals during rail construction if the signals are in the way. Note that this can potentially lead to train crashes. STR_CONFIG_SETTING_ENABLE_BUILD_RIVER :Enable building rivers: {STRING2} STR_CONFIG_SETTING_ENABLE_BUILD_RIVER_HELPTEXT :Enable building rivers outside of the scenario editor @@ -2550,9 +2552,9 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {RAW_STRING STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {RAW_STRING} has started a new company (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {RAW_STRING} has left the game ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {RAW_STRING} has changed his/her name to {RAW_STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {RAW_STRING} gave your company {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY_RECEIVE :*** {RAW_STRING} gave your company {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** You gave {1:RAW_STRING} {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_MONEY_GIVEN :*** {RAW_STRING} gave {1:RAW_STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {RAW_STRING} gave {2:CURRENCY_LONG} to {1:RAW_STRING} STR_NETWORK_MESSAGE_MONEY_GIVE_SRC_DESCRIPTION :{RAW_STRING} ({COMPANY}) STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}The server closed the session STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}The server is restarting...{}Please wait... @@ -5407,6 +5409,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... no l STR_ERROR_CURRENCY_REQUIRED :{WHITE}... {CURRENCY_LONG} required STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Can't repay loan... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Can't give away money that is loaned from the bank... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}Can't give away money to this company... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Can't buy company... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Can't build company headquarters... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Can't buy 25% share in this company... diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index fa785b6396..8974695db6 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -2124,8 +2124,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} has started a new company (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} has left the game ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} has changed his/her name to {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gave your company {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** You gave {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}The server closed the session STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}The server is restarting...{}Please wait... diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 385d387308..93a98befdf 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -2203,8 +2203,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} has started a new company (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} has left the game ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} has changed his/her name to {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gave your company {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** You gave {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}The server closed the session STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}The server is restarting...{}Please wait... diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index f883e6a033..5ab3331e12 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -1705,7 +1705,6 @@ STR_NETWORK_SERVER :Servilo STR_NETWORK_CLIENT :Kliento STR_NETWORK_SPECTATORS :Spektantoj - # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}Ne konservu la pasvorton. STR_COMPANY_PASSWORD_OK :{BLACK}Donu la novan pasvorton al la kompanio. @@ -1793,8 +1792,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} i STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ekis novan kompanion (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ĉesis la ludon ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ŝanĝis sian nomon al {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} donis al via kompanio {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Vi donis {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}La servilo fermis la seancon STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}La servilo restartiĝas...{}Bonvolu atendi... diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index 0ffc4e9464..7082f8f76e 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -2221,8 +2221,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} li STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} alustas uue ettevõtte (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} lahkus mängust ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} uus nimi on {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} andis su ettevõttele {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Sa andsid {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server sulges sessiooni STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server restardib...{}Palun oota... diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index 08bd58aabb..da80ead370 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -1873,7 +1873,6 @@ STR_NETWORK_SERVER :Servari STR_NETWORK_CLIENT :Klient STR_NETWORK_SPECTATORS :Eygleiðarar - # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}Goym ikki skrivaða loyniorðið STR_COMPANY_PASSWORD_OK :{BLACK}Gev fyritøkuni tað nýggja loyniorðið @@ -1973,8 +1972,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} er STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} hevur stovnað eina nýggja fyritøku (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} er farin úr spælinum ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} hevur broytt sítt navn til {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} handaði tínari fyritøku {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Tú handaði {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Servarin endaði setuna STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Servarin endurbyrjar...{}Vinarliga bíða... diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index 7ba6cb43c8..1cf4a0d9d3 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -2232,8 +2232,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} on STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} on aloittanut uuden yhtiön (nro {2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} on poistunut pelistä ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} on muuttanut nimekseen {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} antoi yhtiöllesi {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Annoit yhtiölle {1:STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} antoi {2:CURRENCY_LONG} yhtiölle {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Palvelin sulki istunnon STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Palvelin käynnistyy uudelleen...{}Odota, ole hyvä... STR_NETWORK_MESSAGE_KICKED :{STRING} potkaistiin ulos. Syy: ({STRING}) @@ -3375,6 +3374,7 @@ STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Rakenna STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Yksityiskohdat STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Näytä tarkka infrastruktuurin määrä STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Anna rahaa +STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Anna rahaa tälle yhtiölle STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Uudet kasvot STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Valitse uudet kasvot pääjohtajalle @@ -3392,7 +3392,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Myy 25{N STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Yhtiön nimi STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Pääjohtajan nimi -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Syötä rahamäärä, jonka haluat antaa +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Syötä annettava rahamäärä STR_BUY_COMPANY_MESSAGE :{WHITE}Etsimme kuljetusyhtiötä, joka ottaisi haltuunsa yhtiömme{}{}Haluatko ostaa yhtiön {COMPANY} hintaan {CURRENCY_LONG}? @@ -4344,6 +4344,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... ei l STR_ERROR_CURRENCY_REQUIRED :{WHITE}... tarvitaan {CURRENCY_LONG}. STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Lainaa ei voi lyhentää... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Pankista lainattua rahaa ei voi antaa pois... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}Tälle yhtiölle ei voi antaa rahaa… STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Yhtiötä ei voi ostaa... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Yhtiön päärakennusta ei voi rakentaa... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Tästä yhtiöstä ei voi ostaa 25{NBSP}%:n osuutta... diff --git a/src/lang/french.txt b/src/lang/french.txt index d9a3607726..c6a7ee2ff5 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -2233,8 +2233,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} a STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} a lancé une nouvelle compagnie (n°{NBSP}{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} a quitté la partie ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} a changé son nom en {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} a donné {2:CURRENCY_LONG} à votre compagnie -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Vous avez donné {2:CURRENCY_LONG} à {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Le serveur a fermé la session STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Le serveur redémarre...{}Veuillez patienter... STR_NETWORK_MESSAGE_KICKED :*** {STRING} a été exclu. Raison{NBSP}: ({STRING}) diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index 975da0671f..5be8065162 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -2361,8 +2361,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** Ghabh {STRI STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** Stèidhich {STRING} companaidh ùr ({2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** Dh'fhalbh {STRING} an geama ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** Dh'atharraich {0:STRING} (a h-)ainm gu {1:STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** Thug {STRING} {2:CURRENCY_LONG} dhan chompanaidh agad -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Thug thu {2:CURRENCY_LONG} dha {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Dhùin am frithealaiche an seisean STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Tha am frithealaiche ag ath-thòiseachadh...{}Fuirich greis... diff --git a/src/lang/galician.txt b/src/lang/galician.txt index e717c64cd5..8b192e22bc 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -2198,8 +2198,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} un STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} comezou unha nova compañía (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} saiu da partida ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} cambiou o seu nome a {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} deu á túa companía {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Diches a {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor pechou a sesión STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor estase a reiniciar...{}Agarda por favor... diff --git a/src/lang/german.txt b/src/lang/german.txt index 87924efab5..ea8c6d0e8f 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -2535,9 +2535,9 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} is STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} hat eine neue Firma gegründet (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} hat das Spiel verlassen ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} hat seinen/ihren Namen in {STRING} geändert -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gab der eigenen Firma {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY_RECEIVE :*** {STRING} gab der eigenen Firma {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Die eigene Firma übergab {1:STRING} {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_MONEY_GIVEN :*** {STRING} gab {1:STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gab {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_MONEY_GIVE_SRC_DESCRIPTION :{STRING} ({COMPANY}) STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Der Server hat das Spiel beendet STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Der Server startet neu...{}Bitte warten... diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 0bda878e92..2bf1227eb9 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -2291,8 +2291,6 @@ 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_NAME_CHANGE :*** {STRING} άλλαξαν το όνομά τους σε {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} έδωσαν στην εταιρία σας {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Δώσατε {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Ο διακομιστής έκλεισε την συνεδρία STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Ο διακομιστής επανεκκινεί...{}Παρακαλώ περιμένετε... diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index c0c5a2c560..e7a07f9692 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -2175,8 +2175,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :.הצטרף ל STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :{2:NUM} הקים חברה חדשה {NBSP}{0:STRING} *** STR_NETWORK_MESSAGE_CLIENT_LEFT :({2:STRING}) עזב את המשחק {NBSP}{0:STRING} *** STR_NETWORK_MESSAGE_NAME_CHANGE :{STRING} שינה את שמו ל {STRING} *** -STR_NETWORK_MESSAGE_GIVE_MONEY :{2:CURRENCY_LONG} נתן לחברתך {NBSP}{0:STRING} *** -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :{2:CURRENCY_LONG} {1:STRING} נתת ל *** STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}השרת סגר את המשחק STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}השרת מופעל מחדש...{}אנא המתן... diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 9917413c7c..91dc193ea6 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -2270,8 +2270,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} cs STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} új vállalatot alapított (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} kilépett a játékból ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} nevet változtatott. Új neve: {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} a következő összeget utalta vállalatodnak: {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} vállalatnak sikeresen átutaltál {2:CURRENCY_LONG}-t STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}A szerver leállította a játékot STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}A szerver újraindul...{}Türelem... STR_NETWORK_MESSAGE_KICKED :*** {STRING} ki lett rúgva. Oka: ({STRING}) diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index 498263b4b4..27d1394e7e 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -2008,8 +2008,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ho STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} stofnaði nýtt fyrirtæki (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} yfirgefur leikinn ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} heitir nú {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} sendi þér {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Þú gafst {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Þjónninn sleit tengingunni STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Verið er að endurræsa þjóninn...{}Vinsamlega bíðið... diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index 846c33132f..f97ca86cfe 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -2206,8 +2206,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} be STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} mulai mendirikan perusahaan (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} meninggalkan permainan ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} telah mengganti namanya menjadi {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} telah memberi perusahaanmu {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Anda telah memberi {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server menutup sesi STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server memulai ulang...{}Tunggulah... STR_NETWORK_MESSAGE_KICKED :*** {STRING} telah dikeluarkan. Alasan: ({STRING}) diff --git a/src/lang/irish.txt b/src/lang/irish.txt index 578072997e..021f2f7803 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -2149,8 +2149,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** Tá {STRING STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** Thosaigh {STRING} cuideachta nua (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** D'fhág {STRING} an cluiche ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** D'athraigh {STRING} a (h)ainm go {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** Thug {STRING} {2:CURRENCY_LONG} dod' chuideachta -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Thug tú {2:CURRENCY_LONG} do {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Dhún an freastalaí an seisiún STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Tá an freastalaí á atosú...{}Fan go fóill... diff --git a/src/lang/italian.txt b/src/lang/italian.txt index 6ad7fd26c9..9d50f475e0 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -2230,8 +2230,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} è STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ha avviato una nuova compagnia (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ha abbandonato la partita ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ha cambiato nome in {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ha donato alla tua compagnia {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Hai donato {2:CURRENCY_LONG} a {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Il server ha chiuso la sessione STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Il server si sta riavviando...{}Attendere prego... STR_NETWORK_MESSAGE_KICKED :*** {STRING} è stato espulso. Motivo: ({STRING}) diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index c4494b921f..0b54f1f316 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -2157,8 +2157,6 @@ 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_NAME_CHANGE :*** {STRING} は名前を {STRING} に変更しました -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} が {2:CURRENCY_LONG} を送金してくれました -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} に {2:CURRENCY_LONG} を送金しました STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}サーバがセッションを終了しました STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}このサーバーは再起動中です…{}しばらくお待ちください… diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 15a7ba228c..2c390ed4a4 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -2542,9 +2542,9 @@ 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_NAME_CHANGE :*** {STRING} 님의 이름이 {STRING}(으)로 바뀌었습니다 -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} 님이 당신에게 {2:CURRENCY_LONG}만큼의 돈을 보내셨습니다 +STR_NETWORK_MESSAGE_GIVE_MONEY_RECEIVE :*** {STRING} 님이 당신에게 {2:CURRENCY_LONG}만큼의 돈을 보내셨습니다 STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} 님에게 {2:CURRENCY_LONG}만큼의 돈을 보냈습니다 -STR_NETWORK_MESSAGE_MONEY_GIVEN :*** {STRING} 님이 {1:STRING}에게 {2:CURRENCY_LONG}만큼의 돈을 보내셨습니다. +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {0:STRING} 님이 {1:STRING}에게 {2:CURRENCY_LONG}만큼의 돈을 보내셨습니다 STR_NETWORK_MESSAGE_MONEY_GIVE_SRC_DESCRIPTION :{STRING} ({COMPANY}) STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}서버가 게임을 종료하였습니다 STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}서버가 재시작되고 있습니다...{}기다려주세요... @@ -4174,7 +4174,7 @@ STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}회사 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_GIVE_MONEY_TOOLTIP :{BLACK}이 회사에 돈을 보냅니다 STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}새 얼굴 STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}사장의 얼굴을 선택합니다 @@ -4192,7 +4192,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}이 회 STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :회사 이름 STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :사장 이름 -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :송금하고 싶은 양을 입력하세요. +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :보내고자 하는 돈의 액수를 입력하세요 STR_BUY_COMPANY_MESSAGE :{WHITE}저희 회사를 거두어주실 운송 회사를 찾고있습니다.{}{}저희 {COMPANY} 회사를 {CURRENCY_LONG}의 가격으로 인수합병하시겠습니까? @@ -5399,6 +5399,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... 값 STR_ERROR_CURRENCY_REQUIRED :{WHITE}... {CURRENCY_LONG} 만큼의 돈이 필요합니다 STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}대출금을 갚을 수 없습니다... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}은행에서 빌린 돈은 송금할 수 없습니다... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}이 회사에 돈을 보낼 수 없습니다... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}회사를 인수할 수 없습니다... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}본사를 건설할 수 없습니다... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}이 회사 지분의 25%를 매입할 수 없습니다... diff --git a/src/lang/latin.txt b/src/lang/latin.txt index d826bb0811..279f94071a 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -2369,8 +2369,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} sp STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} novam societatem incipit (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ludum disiungit ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} nomen suum mutat ad {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} tuae societati largitur {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Largiris {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Servatrum iam clausum est STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Servatrum resumit...{}Maneas... diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index ed3e8d94ec..7be2edd327 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -2236,8 +2236,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ir STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ir nodibinājis jaunu uzņēmumu (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ir pametis spēli ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ir nomainījis savu nosaukumu uz {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} iedeva jūsu uzņēmumam {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Jūs iedevāt {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serveris beidza sesiju STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Serveris pārstartējas...{}Lūdzu uzgaidiet... STR_NETWORK_MESSAGE_KICKED :*** {STRING} tika izmests. Iemesls: ({STRING}) @@ -2550,6 +2548,12 @@ STR_TREES_RANDOM_TYPE :{BLACK}Nejauši STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Izvietot nejaušus kokus. Shift pārslēdz būve/rādīt izmaksu tāmi STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Nejauši koki STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Stādīt nejaušus kokus visā ainavā +STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normāls +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK}Stādiet atsevišķus kokus, velkot pāri ainavai. +STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Birze +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Stādiet mazus mežus, velkot pāri ainavai. +STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Mežs +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Stādiet lielos mežus, velkot pāri ainavai. # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Zemes radīšana @@ -3183,10 +3187,10 @@ STR_GOALS_COMPANY_TITLE :{BLACK}Uzņēmu STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}Klikšķināt uz mērķa, lai centrētu galveno skatu uz ražotni/pilsētu/lauciņu. Ctrl+klikšķis atver jaunu skatvietu uz ražotni/pilsētu/lauciņu # Goal question window -STR_GOAL_QUESTION_CAPTION_QUESTION :Jautājums -STR_GOAL_QUESTION_CAPTION_INFORMATION :Informācija -STR_GOAL_QUESTION_CAPTION_WARNING :Brīdinājums -STR_GOAL_QUESTION_CAPTION_ERROR :Kļūda +STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}Jautājums +STR_GOAL_QUESTION_CAPTION_INFORMATION :{BLACK}Informācija +STR_GOAL_QUESTION_CAPTION_WARNING :{BLACK}Brīdinājums +STR_GOAL_QUESTION_CAPTION_ERROR :{YELLOW}Kļūda ############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :Atcelt @@ -3379,6 +3383,7 @@ STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Pārcelt STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Sīkāk STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Skatīt detalizētāku infrastruktūras uzskaiti STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Iedot naudu +STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Iedot naudu šai kompānijai STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Jauna seja STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Izvēlēties jaunu seju vadītājam @@ -3396,7 +3401,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Pārdot STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Uzņēmuma nosaukums STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Vadītāja vārds -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Ievadiet cik daudz naudas vēlaties dot +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Ievadiet naudas daudzumu, kuru vēlaties atdot STR_BUY_COMPANY_MESSAGE :{WHITE}Mēs meklējam transporta uzņēmumu, kurš vēlētos pārņemt mūsējo.{}{}Vai Jūs vēlaties pirkt {COMPANY} par {CURRENCY_LONG}? @@ -4349,6 +4354,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... nav STR_ERROR_CURRENCY_REQUIRED :{WHITE}...{CURRENCY_LONG} nepieciešams STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Nevar atmaksāt aizdevumu... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Bankas aizdoto naudu nevar dot projām... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}Nav iespējams atdot naudu šai kompānijai... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Nevar nopirkt uzņēmumu... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Nevar uzbūvēt uzņēmuma biroju... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Nevar nopirkt 25% daļu šajā uzņēmumā... diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 22ab536e88..15f8d3f025 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -2378,8 +2378,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} pr STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} pradėjo naują kompaniją (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} paliko žaidimą ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} pasikeitė vardą į {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} turi savo kompaniją {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Jūs gavote {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serveris užsidarė STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Serveris persikrauna...{}Prašau palaukti... diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index 54694fb8d2..729cfbb0d2 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -2205,8 +2205,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} as STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} huet eng nei Firma gegrënnt (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} huet d'Spill verlooss ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} huet säin Numm op {STRING} gewiesselt -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} huet ärer Firma {2:CURRENCY_LONG} ginn -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du hues dem {1:STRING} {2:CURRENCY_LONG} ginn STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}De Server huet d'Sessioun zougemaach STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}De Server gëtt nei gestart...{}W.e.g. waarden... STR_NETWORK_MESSAGE_KICKED :*** {STRING} gouf gekickt. Grond: ({STRING}) diff --git a/src/lang/malay.txt b/src/lang/malay.txt index 4a19dd5d79..72621b4197 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -1809,7 +1809,6 @@ STR_NETWORK_SERVER :Pelayan STR_NETWORK_CLIENT :Klien STR_NETWORK_SPECTATORS :Penyaksi - # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}Jangan simpan kata laluan ini STR_COMPANY_PASSWORD_OK :{BLACK}Berikan syarikat kata laluan yang baru @@ -1909,8 +1908,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} te STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} telah menubuhkan syarikat baru (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} sudah meninggalkan permainan ini ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} telah menukar namanya kepada {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} telah memberi syarikat anda {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Anda memberi {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Pelayan telah menutup sesi ini STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Pelayan sedang dimulakan semula...{}Harap bersabar... diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 82e23856f3..8390c17d48 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -2208,8 +2208,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} har startet et nytt firma (nr. {2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} har forlatt spillet ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} har forandret sitt navn til {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ga {2:CURRENCY_LONG} til ditt firma -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du ga {2:CURRENCY_LONG} til {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Tjeneren avsluttet spillet STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Tjeneren starter på nytt...{}Vennligst vent... diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index fc75a75af0..01740a0c42 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -2073,8 +2073,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} har starta eit nytt firma (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} har forlatt spelet ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} har endra namnet sitt til {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gav firmaet ditt {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Du gav {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Tenaren avslutta spelet STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Tenaren startar om att...{}Vær venleg og vent... diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 082648328e..a5924b6fe1 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -2612,8 +2612,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} do STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} założył nową firmę (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} opuścił grę ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} zmienił/zmieniła swoje imię na {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} dał/dała twojemu przedsiębiorstwu {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dałeś {1:STRING} {2:CURRENCY_LONG} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** Firma {STRING} przekazała firmie {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serwer zamknął sesję STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Restart serwera...{}Proszę czekać... STR_NETWORK_MESSAGE_KICKED :*** {STRING} został wyrzucony. Powód: ({STRING}) @@ -3048,23 +3047,23 @@ STR_LAI_RAIL_DESCRIPTION_TRACK :{G=m}Tor kolejo STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_SIGNALS :Tor kolejowy z semaforam blokowymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRESIGNALS :Tor kolejowy z semaforami wejściowymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXITSIGNALS :Tor kolejowy z semaforem wyjściowym -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :Tor kolejowy z semaforami złożonymi (combo) +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBOSIGNALS :Tor kolejowy z semaforami złożonymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBSSIGNALS :Tor kolejowy z semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NOENTRYSIGNALS :Tor kolejowy z jednokierunkowymi semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PRESIGNALS :Tor kolejowy z semaforami blokowymi i semaforami wejścia STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_EXITSIGNALS :Tor kolejowy z semaforami blokowymi i semaforami wyjścia -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :Tor kolejowy z semaforami blokowymi i semaforami złożonymi (combo) +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_COMBOSIGNALS :Tor kolejowy z semaforami blokowymi i semaforami złożonymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_PBSSIGNALS :Tor kolejowy z semaforami blokowymi i semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_NORMAL_NOENTRYSIGNALS :Tor kolejowy z semaforami blokowymi i jednokierunkowymi semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_EXITSIGNALS :Tor kolejowy z semaforami wejścia i wyjścia -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :Tor kolejowy z semaforami wejścia i semaforami złożonymi (combo) +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_COMBOSIGNALS :Tor kolejowy z semaforami wejścia i semaforami złożonymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_PBSSIGNALS :Tor kolejowy z semaforami wejścia i semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PRE_NOENTRYSIGNALS :Tor kolejowy z semaforami wejścia i jednokierunkowymi semaforami trasy -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :Tor kolejowy z semaforami wyjścia i semaforami złożonymi (combo) +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_COMBOSIGNALS :Tor kolejowy z semaforami wyjścia i semaforami złożonymi STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_PBSSIGNALS :Tor kolejowy z semaforami wyjścia i semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_EXIT_NOENTRYSIGNALS :Tor kolejowy z semaforami wyjścia i jednokierunkowymi semaforami trasy -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :Tor kolejowy z semaforami złożonymi (combo) i semaforami trasy -STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :Tor kolejowy z semaforami złożonymi (combo) i jednokierunkowymi semaforami trasy +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_PBSSIGNALS :Tor kolejowy z semaforami złożonymi i semaforami trasy +STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_COMBO_NOENTRYSIGNALS :Tor kolejowy z semaforami złożonymi i jednokierunkowymi semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRACK_WITH_PBS_NOENTRYSIGNALS :Tor kolejowy z semaforami trasy i jednokierunkowymi semaforami trasy STR_LAI_RAIL_DESCRIPTION_TRAIN_DEPOT :{G=f}Warsztaty kolejowe @@ -3447,7 +3446,7 @@ STR_NEWGRF_BROKEN :{WHITE}Zachowan STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Zmieniony stan wagonu silnikowego '{1:ENGINE}', gdy był poza halą warsztatów STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}Zmiana długości pojazdu '{1:ENGINE}' , który nie jest zatrzymany w hali STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Zmieniono ładowność pojazdu na '{1:ENGINE}', kiedy nie był w hali warsztatów lub w trakcie przebudowy -STR_BROKEN_VEHICLE_LENGTH :{WHITE}Pociąg '{VEHICLE}' należący do '{COMPANY}' ma niepoprawną długość. Prawdopodobnie spowodowane jest to problemami z NewGRF'ami. Gra może się odsychronizować lub się zawiesić +STR_BROKEN_VEHICLE_LENGTH :{WHITE}Pociąg '{VEHICLE}' należący do '{COMPANY}' ma niepoprawną długość. Prawdopodobnie spowodowane jest to problemami z NewGRF'ami. Gra może się odsychronizować lub zawiesić STR_NEWGRF_BUGGY :{WHITE}NewGRF '{0:STRING}' dostarcza niepoprawnych danych STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}Informacje o ładunku/naprawie dla '{1:ENGINE}' różnią się od listy zakupu po zbudowaniu. Może to spowodować, że autoodnowienie/-zamiana nie wykona remontu poprawnie @@ -3754,7 +3753,8 @@ STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Przenie STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Zbuduj siedzibę główną w innym miejscu za cenę 1% wartości firmy. Shift+klik pokazuje szacunkowy koszt bez przenoszenia siedziby STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Szczegóły STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Zobacz szczegółowe wartości infrastruktury -STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Przekazanie pieniędzy +STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Przekaż pieniądze +STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Przekaż część pieniędzy tej firmie STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nowa twarz STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Wybierz nową twarz prezesa @@ -3772,7 +3772,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Sprzedaj STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nazwa firmy STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nazwisko prezesa -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Wprowadź ilość pieniędzy, które chcesz przekazać +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Wpisz kwotę, jaką chcesz przekazać STR_BUY_COMPANY_MESSAGE :{WHITE}Szukamy firmy transportowej, która przejęłaby naszą firmę.{}{}Chcesz zakupić {COMPANY} za {CURRENCY_LONG}? @@ -4730,6 +4730,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... poż STR_ERROR_CURRENCY_REQUIRED :{WHITE}...{CURRENCY_LONG} wymagane STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}Nie można zwrócić pożyczki... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}Nie możesz wydać pieniędzy, które są pożyczone z banku... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}Nie możesz przekazać pieniędzy tej firmie... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}Nie można kupić firmy... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}Nie można zbudować siedziby firmy... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}Nie można kupić 25% udziałów w tej firmie... diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 6380793dfc..eb353d2ba0 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -2193,8 +2193,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} en STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} iniciou uma nova empresa (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} deixou o jogo ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} mudou o seu nome para {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} deu à sua empresa {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Deu {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}O servidor fechou a sessão STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}O servidor está a reiniciar...{}Por favor espere... diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index 965ef90939..64cf69bd42 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -2142,8 +2142,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} a STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} a început o companie nouă (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} a ieşit din joc ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} şi-a schimbat numele în {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} a dat companiei tale {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Ai dat {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Serverul a închis conexiunea STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Serverul este repornit...{}Vă rugăm aşteptaţi... diff --git a/src/lang/russian.txt b/src/lang/russian.txt index adf1765110..3e1dbdf409 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -2387,8 +2387,6 @@ 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_NAME_CHANGE :*** {STRING} изменил имя на {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} передал вашей компании {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Вы передали {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Сервер закрыл сессию STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Сервер перезапускается...{}Пожалуйста, подождите... STR_NETWORK_MESSAGE_KICKED :*** {STRING} был исключён из игры. Причина: ({STRING}) diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 7d395fd004..abbca219f0 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -2356,8 +2356,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} je osnovao novo preduzeće (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} je napustio partiju ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} je promenio/la ime u {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} je dao vašem preduzeću {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dali ste {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server je zatvorio sesiju STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server se ponovo pokreće...{}Molimo sačekajte... diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 730c38a1bc..7ec35a1d71 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -2206,8 +2206,6 @@ 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_NAME_CHANGE :*** {STRING} 已更改姓名为 {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} 送给您的公司 {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** 您送了 {2:CURRENCY_LONG} 给 {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}服务器关闭了进程 STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}服务器正在重新启动。{}请等待…… STR_NETWORK_MESSAGE_KICKED :*** {STRING} 被踢出服务器。原因:({STRING}) diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index 3af7232137..a1ab537df4 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -2300,8 +2300,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} sa STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} založil novú spoločnosť (č. {2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} opustil hru ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} zmenil/-a svoje meno na {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} dal ti spoločnosť {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Dal si {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server ukoncil relaciu STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server sa reštartuje...{}Čakajte prosím... STR_NETWORK_MESSAGE_KICKED :*** Hráč {STRING} bol vyhodený. Dôvod: ({STRING}) diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index c471b84b78..63c1fd65cd 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -2305,8 +2305,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} na novo ustvarja podjetje (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} odstopa od igre ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} je opravil/a spremembo imena v {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} je podarilo tvojemu podjetju {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Podjetju {1:STRING} je bil podarjen znesek {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Strežnik je zaprl sejo STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Strežnik se zaganja...{}Prosim počakaj... diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index eb1258ef9b..8450e0006c 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -315,8 +315,15 @@ STR_SORT_BY_CARGO_CAPACITY :Capacidad de ca STR_SORT_BY_RANGE :Alcance STR_SORT_BY_POPULATION :Población STR_SORT_BY_RATING :Calificación +STR_SORT_BY_NUM_VEHICLES :Número de automóviles +STR_SORT_BY_TOTAL_PROFIT_LAST_YEAR :Beneficios total del último año +STR_SORT_BY_TOTAL_PROFIT_THIS_YEAR :Beneficio total este año +STR_SORT_BY_AVERAGE_PROFIT_LAST_YEAR :Beneficios medio el año pasado +STR_SORT_BY_AVERAGE_PROFIT_THIS_YEAR :Beneficios medio este año # Group by options for vehicle list +STR_GROUP_BY_NONE :Ninguna +STR_GROUP_BY_SHARED_ORDERS :Órdenes compartidas # Tooltips for the main toolbar STR_TOOLBAR_TOOLTIP_PAUSE_GAME :{BLACK}Pausar juego @@ -773,6 +780,7 @@ STR_SMALLMAP_TOOLTIP_ENABLE_ALL_CARGOS :{BLACK}Muestra STR_STATUSBAR_TOOLTIP_SHOW_LAST_NEWS :{BLACK}Mostrar último mensaje/noticia STR_STATUSBAR_COMPANY_NAME :{SILVER}- - {COMPANY} - - STR_STATUSBAR_PAUSED :{YELLOW}* * PAUSADO * * +STR_STATUSBAR_PAUSED_LINK_GRAPH :{ORANGE} * * EN PAUSA (esperando la actualización del gráfico de vínculos) * * STR_STATUSBAR_AUTOSAVE :{RED}AUTOGUARDADO STR_STATUSBAR_SAVING_GAME :{RED}* * GUARDANDO JUEGO * * @@ -1556,6 +1564,10 @@ STR_CONFIG_SETTING_ENDING_YEAR :Año de clasifi STR_CONFIG_SETTING_ENDING_YEAR_HELPTEXT :Año en el que finaliza el juego para establecer la clasificación. Al final de este año se guarda la puntuación de las empresas y se muestra la pantalla de las puntuaciones más altas, aunque se puede continuar jugando la partida.{}Si este año es posterior al año de comienzo, la pantalla de puntuaciones más altas no se mostrará nunca. STR_CONFIG_SETTING_ENDING_YEAR_VALUE :{NUM} STR_CONFIG_SETTING_ENDING_YEAR_ZERO :Nunca +STR_CONFIG_SETTING_ECONOMY_TYPE :Tipo de economía: {STRING} +STR_CONFIG_SETTING_ECONOMY_TYPE_HELPTEXT :La economía fluida hace que los cambios de producción sean más frecuentes y en pasos más pequeños. La economía congelada detiene los cambios de producción y los cierres de industrias. Esta configuración puede no tener efecto si los tipos de industria los proporciona un NewGRF. +STR_CONFIG_SETTING_ECONOMY_TYPE_SMOOTH :Suave +STR_CONFIG_SETTING_ECONOMY_TYPE_FROZEN :Congelado STR_CONFIG_SETTING_ALLOW_SHARES :Permitir comprar acciones de otras empresas: {STRING} STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Cuando se activa, permite comprar y vender acciones de empresas. Las acciones de una empresa solamente estarán disponibles cuando la empresa cumpla una edad determinada STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Edad mínima de una empresa para comerciar con sus acciones: {STRING} @@ -1607,6 +1619,9 @@ STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineal STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Crecimiento de árboles durante el juego: {STRING} STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Controla la aparición aleatoria de árboles durante la partida. Esto puede afectar a industrias que dependen del crecimiento de árboles, como los aserraderos +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NO_SPREAD :Crecer, pero no extienda {RED}(rompe al aserradero) +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_SPREAD_ALL :Crece y difunde por todas partes +STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_NO_GROWTH_NO_SPREAD :No crezcas, no te extiendas {RED}(rompe el aserradero) STR_CONFIG_SETTING_TOOLBAR_POS :Posición de la barra de herramientas principal: {STRING} STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT :Posicionamiento horizontal de la barra de herramientas principal en la parte superior de la pantalla @@ -1673,6 +1688,7 @@ STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT :Cada vez que se STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL :Imperial (mph) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_METRIC :Métrico (km/h) STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_SI :SI (m/s) +STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_GAMEUNITS :Unidades de juego (fichas/día) STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER :Unidades de potencia de vehículos: {STRING} STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT :Cada vez que se muestra la potencia de un vehículo en la interfaz de usuario, se emplean las unidades seleccionadas @@ -1968,6 +1984,10 @@ STR_NETWORK_SERVER_LIST_JOIN_GAME :{BLACK}Unirme a STR_NETWORK_SERVER_LIST_REFRESH :{BLACK}Recargar servidor STR_NETWORK_SERVER_LIST_REFRESH_TOOLTIP :{BLACK}Recargar información del servidor +STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET :Buscar en línea +STR_NETWORK_SERVER_LIST_SEARCH_SERVER_INTERNET_TOOLTIP :{BLACK} Buscar servidores públicos en Internet +STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN :{BLACK}Buscar en LAN +STR_NETWORK_SERVER_LIST_SEARCH_SERVER_LAN_TOOLTIP :{BLACK}Buscar en LAN para los servidores STR_NETWORK_SERVER_LIST_ADD_SERVER :{BLACK}Añadir servidor STR_NETWORK_SERVER_LIST_ADD_SERVER_TOOLTIP :{BLACK}Añade el servidor a una lista que siempre será comprobada para buscar juegos en marcha STR_NETWORK_SERVER_LIST_START_SERVER :{BLACK}Comenzar servidor @@ -2193,11 +2213,13 @@ STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_1 :Juego todavía STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_2 :Juego todavía pausado ({STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_3 :Juego todavía pausado ({STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_4 :Juego todavía pausado ({STRING}, {STRING}, {STRING}, {STRING}) +STR_NETWORK_SERVER_MESSAGE_GAME_STILL_PAUSED_5 :Juego todavia pausado ({STRING}, {STRING}, {STRING}, {STRING}, {STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_UNPAUSED :Juego reanudado ({STRING}) STR_NETWORK_SERVER_MESSAGE_GAME_REASON_NOT_ENOUGH_PLAYERS :número de jugadores STR_NETWORK_SERVER_MESSAGE_GAME_REASON_CONNECTING_CLIENTS :clientes conectándose STR_NETWORK_SERVER_MESSAGE_GAME_REASON_MANUAL :manual STR_NETWORK_SERVER_MESSAGE_GAME_REASON_GAME_SCRIPT :script de juego +STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :Esperando por actualizacion del link graph ############ End of leave-in-this-order STR_NETWORK_MESSAGE_CLIENT_LEAVING :abandonando STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} se ha unido al juego @@ -2207,8 +2229,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ha creado una nueva empresa (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ha abandonado el juego ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} ha cambiado su nombre a {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} da a tu empresa {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Entregas a la empresa {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}El servidor ha cerrado la sesión STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Se está reiniciando el servidor...{}Espere por favor... STR_NETWORK_MESSAGE_KICKED :*** {STRING} ha sido expulsado. Razón: ({STRING}) @@ -2521,6 +2541,12 @@ STR_TREES_RANDOM_TYPE :{BLACK}Tipo ale STR_TREES_RANDOM_TYPE_TOOLTIP :{BLACK}Colocar distintos árboles al azar. Mayús permite mostrar una estimación del precio STR_TREES_RANDOM_TREES_BUTTON :{BLACK}Árboles al azar STR_TREES_RANDOM_TREES_TOOLTIP :{BLACK}Planta árboles al azar sobre el terreno +STR_TREES_MODE_NORMAL_BUTTON :{BLACK}Normal +STR_TREES_MODE_NORMAL_TOOLTIP :{BLACK} Plantar árboles solteros por arrastrando sobre el paisaje. +STR_TREES_MODE_FOREST_SM_BUTTON :{BLACK}Falta +STR_TREES_MODE_FOREST_SM_TOOLTIP :{BLACK}Plante pequeños bosques arrastrándolo por el paisaje. +STR_TREES_MODE_FOREST_LG_BUTTON :{BLACK}Bosque +STR_TREES_MODE_FOREST_LG_TOOLTIP :{BLACK}Plantar bosques grandes por arrastrando sobre el paisaje. # Land generation window (SE) STR_TERRAFORM_TOOLBAR_LAND_GENERATION_CAPTION :{WHITE}Generación de terrenos @@ -3361,7 +3387,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Vender 2 STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nombre Empresa STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nombre del Presidente -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Introduce la cantidad de dinero que deseas dar +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Entrar el cantidad de dinero que quieres dar STR_BUY_COMPANY_MESSAGE :{WHITE}Estamos buscando una empresa de transportes para adquirir la nuestra{}{}¿Desea comprar {COMPANY} por {CURRENCY_LONG}? @@ -4232,6 +4258,7 @@ STR_GAME_SAVELOAD_ERROR_TOO_NEW_SAVEGAME :La partida guar STR_GAME_SAVELOAD_ERROR_FILE_NOT_READABLE :Archivo no legible STR_GAME_SAVELOAD_ERROR_FILE_NOT_WRITEABLE :No se puede escribir en el archivo STR_GAME_SAVELOAD_ERROR_DATA_INTEGRITY_CHECK_FAILED :Comprobación de integridad de los datos fallida +STR_GAME_SAVELOAD_ERROR_PATCHPACK :La partida guardada ha sido realizada cona una versión modificada.. STR_GAME_SAVELOAD_NOT_AVAILABLE : STR_WARNING_LOADGAME_REMOVED_TRAMS :{WHITE}El juego se ha guardado en una versión sin soporte para tranvías. Todos los tranvías han sido eliminados @@ -4312,6 +4339,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... no h STR_ERROR_CURRENCY_REQUIRED :{WHITE}... {CURRENCY_LONG} requerido STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}No es posible pagar préstamo... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}No se puede dar dinero que ha sido prestado de un banco... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}No se puede dar dinero a este empresa... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}No se puede comprar la empresa... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}No puede construirse la sede de la empresa... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}No se puede comprar el 25% de acciones... @@ -5029,6 +5057,7 @@ STR_FORMAT_BUOY_NAME :Boya {TOWN} STR_FORMAT_BUOY_NAME_SERIAL :Boya {TOWN} #{COMMA} STR_FORMAT_COMPANY_NUM :(Empresa {COMMA}) STR_FORMAT_GROUP_NAME :Grupo {COMMA} +STR_FORMAT_GROUP_VEHICLE_NAME :{GROUP} #{COMMA} STR_FORMAT_INDUSTRY_NAME :{TOWN}, {STRING} STR_FORMAT_WAYPOINT_NAME :Punto de ruta {TOWN} STR_FORMAT_WAYPOINT_NAME_SERIAL :Punto de ruta {TOWN} #{COMMA} diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index e90129dae0..572e064435 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -2233,8 +2233,7 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} creó una nueva empresa (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} salió de la partida ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} cambió su nombre a {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} le dio a tu empresa {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {2:CURRENCY_LONG} cedidos a la empresa {1:STRING} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} le transfirió {2:CURRENCY_LONG} a {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}El servidor ha cerrado la sesión STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Se está reiniciando el servidor...{}Espera por favor... STR_NETWORK_MESSAGE_KICKED :*** {STRING} ha sido expulsado. Razón: ({STRING}) @@ -3375,7 +3374,8 @@ STR_COMPANY_VIEW_RELOCATE_HQ :{BLACK}Reubicar STR_COMPANY_VIEW_RELOCATE_COMPANY_HEADQUARTERS :{BLACK}Reubicar la sede de la empresa a cualquier otro lugar con el costo del 1% del valor total de la empresa. Mayús+Clic muestra una estimación del precio sin mover la sede STR_COMPANY_VIEW_INFRASTRUCTURE_BUTTON :{BLACK}Detalles STR_COMPANY_VIEW_INFRASTRUCTURE_TOOLTIP :{BLACK}Ver informe detallado de infraestructura -STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Dar dinero +STR_COMPANY_VIEW_GIVE_MONEY_BUTTON :{BLACK}Transferir capital +STR_COMPANY_VIEW_GIVE_MONEY_TOOLTIP :{BLACK}Transferir capital a esta empresa STR_COMPANY_VIEW_NEW_FACE_BUTTON :{BLACK}Nueva cara STR_COMPANY_VIEW_NEW_FACE_TOOLTIP :{BLACK}Elegir nueva cara para el presidente @@ -3393,7 +3393,7 @@ STR_COMPANY_VIEW_SELL_SHARE_TOOLTIP :{BLACK}Vender 2 STR_COMPANY_VIEW_COMPANY_NAME_QUERY_CAPTION :Nombre de la empresa STR_COMPANY_VIEW_PRESIDENT_S_NAME_QUERY_CAPTION :Nombre del presidente -STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Introducir la cantidad de dinero a dar +STR_COMPANY_VIEW_GIVE_MONEY_QUERY_CAPTION :Cantidad de dinero a transferir STR_BUY_COMPANY_MESSAGE :{WHITE}Buscamos una empresa de transportes que quiera adquirir la nuestra.{}{}¿Comprar {COMPANY} por {CURRENCY_LONG}? @@ -4345,6 +4345,7 @@ STR_ERROR_LOAN_ALREADY_REPAYED :{WHITE}... no h STR_ERROR_CURRENCY_REQUIRED :{WHITE}... se requieren {CURRENCY_LONG} STR_ERROR_CAN_T_REPAY_LOAN :{WHITE}No se puede pagar préstamo... STR_ERROR_INSUFFICIENT_FUNDS :{WHITE}No se puede regalar dinero que fue prestado de un banco... +STR_ERROR_CAN_T_GIVE_MONEY :{WHITE}No se puede transferir capital a esta empresa... STR_ERROR_CAN_T_BUY_COMPANY :{WHITE}No se puede comprar la empresa... STR_ERROR_CAN_T_BUILD_COMPANY_HEADQUARTERS :{WHITE}No se puede construir la sede de la empresa... STR_ERROR_CAN_T_BUY_25_SHARE_IN_THIS :{WHITE}No se puede comprar el 25% de acciones... diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index 257fa855d9..ed79c6b27f 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -2206,8 +2206,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} ha STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} har startat ett nytt företag (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} har lämnat spelet ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} har ändrat hans/hennes namn till {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} gav ditt företag {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** You gave {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Servern avslutade sessionen STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Servern startar om...{}Var vänlig vänta... STR_NETWORK_MESSAGE_KICKED :*** {STRING} kastades ut. Orsak: ({STRING}) diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 1edaea9aa4..98bad75e2f 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -1983,8 +1983,6 @@ 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_NAME_CHANGE :*** {STRING} அவரது/அவளது பெயரினை {STRING} என்று மாற்றினார் -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} தங்கள் நிறுவனத்திற்கு {2:CURRENCY_LONG} கொடுத்தார் -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** நீங்கள் கொடுத்தீற்கள் {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}சர்வர் ஆட்டத்தினை முடித்தது STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}சர்வர் மீண்டும் தொடங்குகிறது...{}சற்று பொறுக்கவும்... STR_NETWORK_MESSAGE_KICKED :*** {STRING} வெளியேற்றப்பட்டார். காரணம்: ({STRING}) diff --git a/src/lang/thai.txt b/src/lang/thai.txt index 45866de4fe..d2baac895c 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -2098,8 +2098,6 @@ 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_NAME_CHANGE :*** {STRING} ได้ทำการเปลี่ยนชื่อเป็น {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} ยกบริษัทให้คุณ {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** คุณให้ {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}เซิฟเวอร์ปืดเซสซั่นนี้ STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}เซิฟเวอร์กำลังทำการเริ่มต้นใหม่...{}กรุณารอซักครู่... diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index e075ebbc28..41b5d3c657 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -2152,8 +2152,6 @@ 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_NAME_CHANGE :*** {STRING} 已修改其名稱為 {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} 付給你的公司 {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** 你付給 {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}伺服器關閉連線 STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}伺服器重新啟動中...{}請稍候... diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 37595bba0b..8e3b89a09e 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -2207,8 +2207,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} g STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} yeni bir şirket kurdu (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} oyunu terketti ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} adını {STRING} olarak değiştirdi -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} şirketinize {2:CURRENCY_LONG} verdi -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** {1:STRING} oyuncusuna {2:CURRENCY_LONG} verdiniz STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Sunucu kapandı STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Sunucu baştan başlatılıyor...{}Lütfen bekleyin... STR_NETWORK_MESSAGE_KICKED :*** {STRING} atıldı. Sebep: ({STRING}) diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 5dc06be2ff..e95f0746b8 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -2334,8 +2334,6 @@ 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_NAME_CHANGE :*** {STRING} змінив(-ла) своє ім'я на {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} дав Вашій компанії {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Ви дали {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Сервер закрив сеанс STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Перезавантаження сервера...{}Зачекайте... STR_NETWORK_MESSAGE_KICKED :*** {STRING} відключено. Причина: ({STRING}) diff --git a/src/lang/unfinished/chuvash.txt b/src/lang/unfinished/chuvash.txt index 63cdc1e619..71e04a7fa3 100644 --- a/src/lang/unfinished/chuvash.txt +++ b/src/lang/unfinished/chuvash.txt @@ -787,7 +787,6 @@ STR_NETWORK_START_SERVER_SET_PASSWORD :{BLACK}Вырн # Network client list - # Network set password # Network company info join/password diff --git a/src/lang/unfinished/frisian.txt b/src/lang/unfinished/frisian.txt index 3a3bbd365a..1943f4131b 100644 --- a/src/lang/unfinished/frisian.txt +++ b/src/lang/unfinished/frisian.txt @@ -1943,7 +1943,6 @@ STR_NETWORK_COMPANY_LIST_NEW_COMPANY :{WHITE}Nei Bedr # Network client list STR_NETWORK_CLIENTLIST_KICK :Skoppe -STR_NETWORK_CLIENTLIST_GIVE_MONEY :Jouw jild STR_NETWORK_CLIENTLIST_SPEAK_TO_ALL :Tsjin elkenien prate STR_NETWORK_CLIENTLIST_SPEAK_TO_COMPANY :Praat mei bedriuw STR_NETWORK_CLIENTLIST_SPEAK_TO_CLIENT :Priveeberjocht @@ -1952,7 +1951,6 @@ STR_NETWORK_SERVER :Tsjinner STR_NETWORK_CLIENT :Kliïnt STR_NETWORK_SPECTATORS :Taskôgers - # Network set password STR_COMPANY_PASSWORD_OK :{BLACK}Jou it bedriuw it nije wachtwurd STR_COMPANY_PASSWORD_CAPTION :{WHITE}Bedriuwswachtwurd diff --git a/src/lang/unfinished/ido.txt b/src/lang/unfinished/ido.txt index 5c5abad31e..15d02f916b 100644 --- a/src/lang/unfinished/ido.txt +++ b/src/lang/unfinished/ido.txt @@ -636,7 +636,6 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x # Network client list - # Network set password # Network company info join/password diff --git a/src/lang/unfinished/macedonian.txt b/src/lang/unfinished/macedonian.txt index 2c6c95aeba..41f2383c47 100644 --- a/src/lang/unfinished/macedonian.txt +++ b/src/lang/unfinished/macedonian.txt @@ -994,7 +994,6 @@ STR_NETWORK_SERVER_LIST_MAP_SIZE_SHORT :{BLACK}{COMMA}x # Network client list - # Network set password # Network company info join/password diff --git a/src/lang/unfinished/maltese.txt b/src/lang/unfinished/maltese.txt index 543b378d81..b0ae522a14 100644 --- a/src/lang/unfinished/maltese.txt +++ b/src/lang/unfinished/maltese.txt @@ -564,7 +564,6 @@ STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} # Network client list - # Network set password # Network company info join/password diff --git a/src/lang/unfinished/marathi.txt b/src/lang/unfinished/marathi.txt index ae831f3b02..667139501d 100644 --- a/src/lang/unfinished/marathi.txt +++ b/src/lang/unfinished/marathi.txt @@ -961,7 +961,6 @@ STR_NETWORK_CONNECTING_DOWNLOADING_2 :{BLACK}{BYTES} # Network client list - # Network set password # Network company info join/password diff --git a/src/lang/unfinished/persian.txt b/src/lang/unfinished/persian.txt index a353560fa7..8637fcb801 100644 --- a/src/lang/unfinished/persian.txt +++ b/src/lang/unfinished/persian.txt @@ -225,6 +225,7 @@ STR_TOOLTIP_FILTER_CRITERIA :{BLACK}انتخ STR_BUTTON_SORT_BY :{BLACK}مرتب کردن بر اساس STR_BUTTON_LOCATION :{BLACK}مختصات STR_BUTTON_RENAME :{BLACK}نام گزاری +STR_BUTTON_CATCHMENT :{BLACK}تحت پوشش STR_TOOLTIP_CLOSE_WINDOW :{BLACK}بستن پنجره STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}عنوان پنجره - پرای جابجا کردن پنجره این قسمت را بکشید. @@ -299,6 +300,7 @@ STR_SORT_BY_CARGO_CAPACITY :ظرفیت مح STR_SORT_BY_RANGE :بازه STR_SORT_BY_POPULATION :جمعیت STR_SORT_BY_RATING :نرخ +STR_SORT_BY_AVERAGE_PROFIT_LAST_YEAR :میانگین سود سال گذشته # Group by options for vehicle list @@ -461,6 +463,7 @@ STR_ABOUT_MENU_SEPARATOR : STR_ABOUT_MENU_TOGGLE_CONSOLE :باز و بسته کردن کنسول STR_ABOUT_MENU_AI_DEBUG :خطایابی هوش مصنوعی STR_ABOUT_MENU_SCREENSHOT :تصویر از بازی +STR_ABOUT_MENU_SHOW_FRAMERATE :نمایش دادن frame rate STR_ABOUT_MENU_ABOUT_OPENTTD :'OpenTTD' درباره STR_ABOUT_MENU_SPRITE_ALIGNER :تراز کردن تصویر گرافیکی STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :باز/بسته کردن محدوده جعبه ها @@ -1459,6 +1462,7 @@ STR_INTRO_TOOLTIP_SUB_TROPICAL_LANDSCAPE :{BLACK}انتخ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}انتخاب «سرزمین اسباب بازی‌ها» برای سبک بازی STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}نشان دادن تنظیمات بازی +STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}نمایش جدول بالاترین امتیازات STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}نمایش تنظیمات NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}بررسی وجود مجموعه ها و به روز رسانی های جدید در اینترنت STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}نمایش تنظیمات هوش مصنوعی و اسکریپت های بازی @@ -1468,6 +1472,7 @@ STR_INTRO_TRANSLATION :{BLACK}این # Quit window STR_QUIT_CAPTION :{WHITE}خروج +STR_QUIT_ARE_YOU_SURE_YOU_WANT_TO_EXIT_OPENTTD :{YELLOW}آیا مطمئن هستی که میخواهی از OpenTTD خارج شوی؟ STR_QUIT_YES :{BLACK}بله STR_QUIT_NO :{BLACK}خیر @@ -1863,8 +1868,6 @@ 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_NAME_CHANGE :*** {STRING} نامش را به {STRING} تغییر داد -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} به شرکت شما {2:CURRENCY_LONG} پول داد -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** شما {1:STRING}به شرکت {2:CURRENCY_LONG} دادید STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}سرویس دهنده جلسه را تعطیل کرد STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}راه اندازی مجدد سرویس دهنده...{}لطفا صبر کنید... @@ -2359,6 +2362,8 @@ STR_ABOUT_VERSION :{BLACK}OpenTTD STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD {COPYRIGHT}2002-{STRING} The OpenTTD team # Framerate display window +STR_FRAMERATE_MEMORYUSE :{WHITE}حافظه +STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} ms ############ Leave those lines in this order!! ############ End of leave-in-this-order ############ Leave those lines in this order!! @@ -2699,7 +2704,7 @@ STR_GOALS_COMPANY_TITLE :{BLACK}اهدا STR_GOALS_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}روی هدف کلیک کنید تا نمای اصلی را به مرکز صنایع/شهر/قطعه ببرد. Ctrl+Click یک نمای جدید از محل صنایع/شهر قطعه باز می کند # Goal question window -STR_GOAL_QUESTION_CAPTION_QUESTION :سوال +STR_GOAL_QUESTION_CAPTION_QUESTION :{BLACK}سوال ############ Start of Goal Question button list STR_GOAL_QUESTION_BUTTON_CANCEL :لغو @@ -2733,6 +2738,7 @@ STR_SUBSIDIES_TOOLTIP_CLICK_ON_SERVICE_TO_CENTER :{BLACK}روی # Story book window STR_STORY_BOOK_SPECTATOR_CAPTION :{WHITE}کتابچه راهنمای عمومی +STR_STORY_BOOK_SPECTATOR :کتاب داستان جهانی STR_STORY_BOOK_INVALID_GOAL_REF :{RED}رجوع به هدف نامعتبر # Station list window @@ -2762,6 +2768,7 @@ STR_STATION_VIEW_SUPPLY_RATINGS_TITLE :{BLACK}تولی STR_STATION_VIEW_CARGO_SUPPLY_RATING :{WHITE}{STRING}: {YELLOW}{COMMA} / {STRING} ({COMMA}%) STR_STATION_VIEW_GROUP :{BLACK}همگروه با +STR_STATION_VIEW_WAITING_STATION :ایستگاه: منتظر است STR_STATION_VIEW_FROM :{YELLOW}{CARGO_SHORT} از {STATION} STR_STATION_VIEW_VIA :{YELLOW}{CARGO_SHORT} ازطریق {STATION} STR_STATION_VIEW_TO :{YELLOW}{CARGO_SHORT} به {STATION} @@ -2923,6 +2930,7 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_CAPTION :ماشین ها ############ range for vehicle availability starts STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :وسایل ریل خط آهن +STR_BUY_VEHICLE_SHIP_CAPTION :کشتی های جدید STR_BUY_VEHICLE_AIRCRAFT_CAPTION :هواپیمای جدید ############ range for vehicle availability ends @@ -2937,6 +2945,7 @@ STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}لیست STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_BUTTON :{BLACK}ساخت وسیله نقلیه STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}خرید وسیله نقلیه +STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}خرید کشتی STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}خرید هواپیما @@ -3040,6 +3049,7 @@ STR_REPLACE_VEHICLE_AVAILABLE_VEHICLES_TOOLTIP :{BLACK} ستو STR_REPLACE_HELP_STOP_BUTTON :{BLACK}برای توقف جایگزین کردن برای نوع انتخاب شده در سمت چپ کلیک کنید +STR_REPLACE_ENGINES :موتور ها STR_REPLACE_ELRAIL_VEHICLES :وسایل نقلیه ریلی برقی @@ -3226,9 +3236,11 @@ STR_TIMETABLE_CLEAR_TIME :{BLACK}پاک # AI debug window STR_AI_DEBUG :{WHITE}رفع اشکالات کد هوش مصنوعی STR_AI_DEBUG_NAME_TOOLTIP :{BLACK}نام کد +STR_AI_DEBUG_SETTINGS :{BLACK}تنظیمات STR_AI_DEBUG_RELOAD :{BLACK}بازگشایی مجدد هوش مصنوعی STR_AI_DEBUG_RELOAD_TOOLTIP :{BLACK}از بین بردن هوش مصنوعی. بازگشایی اسکریپت. و شروع مجدد هوش مصنوعی STR_AI_DEBUG_BREAK_STR_ON_OFF_TOOLTIP :{BLACK}فعالسازی/غیر فعال سازی توقف هنگامی که هوش مصنوعی گزارشی با متن توقف تولید می کند +STR_AI_DEBUG_CONTINUE :{BLACK}ادامه STR_AI_GAME_SCRIPT :{BLACK}کدبازی STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}دیدن گزارش های کد بازی @@ -3242,6 +3254,10 @@ STR_AI_CONFIG_HUMAN_PLAYER :بازیکن آ STR_AI_CONFIG_RANDOM_AI :انتخاب هوش مصنوعی به صورت اتفاقی STR_AI_CONFIG_NONE :(هیچکدام) +STR_AI_CONFIG_MOVE_UP :حرکت به بالا +STR_AI_CONFIG_MOVE_UP_TOOLTIP :{BLACK}حرکت دادن AI انتخاب شده به سمت بالا در لیست +STR_AI_CONFIG_MOVE_DOWN :{BLACK}حرکت به پایین +STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}حرکت دادن AI انتخاب شده به سمت پایین در لیست STR_AI_CONFIG_GAMESCRIPT :{SILVER}کدبازی STR_AI_CONFIG_AI :{SILVER}هوشهای مصنوعی @@ -3315,6 +3331,7 @@ STR_ERROR_HEIGHTMAP_TOO_LARGE :{WHITE}تصوی # Soundset messages # Screenshot related messages +STR_WARNING_SCREENSHOT_SIZE_CAPTION :{WHITE}اسکرین شات بزرگ STR_MESSAGE_SCREENSHOT_SUCCESSFULLY :{WHITE}تصویر با موفقیت در {STRING} ذخیره شد STR_ERROR_SCREENSHOT_FAILED :{WHITE}تصویر از بازی ذخیره نشد @@ -3681,10 +3698,10 @@ STR_INDUSTRY_NAME_SUGAR_MINE :معدن شکر ##id 0x6000 STR_SV_EMPTY : STR_SV_UNNAMED :بی نام -STR_SV_TRAIN_NAME :قطار {COMMA} -STR_SV_ROAD_VEHICLE_NAME :خودرو جاده ای {COMMA} -STR_SV_SHIP_NAME :کشتی {COMMA} -STR_SV_AIRCRAFT_NAME :هواپیما {COMMA} +STR_SV_TRAIN_NAME :قطار #{COMMA} +STR_SV_ROAD_VEHICLE_NAME :خودرو جاده ای #{COMMA} +STR_SV_SHIP_NAME :کشتی #{COMMA} +STR_SV_AIRCRAFT_NAME :هواپیما #{COMMA} STR_SV_STNAME :{STRING} STR_SV_STNAME_NORTH :{STRING} شمال diff --git a/src/lang/unfinished/urdu.txt b/src/lang/unfinished/urdu.txt index e14856bf8d..6472998c4a 100644 --- a/src/lang/unfinished/urdu.txt +++ b/src/lang/unfinished/urdu.txt @@ -1657,7 +1657,6 @@ STR_NETWORK_SERVER :سرور STR_NETWORK_CLIENT :کلائینٹ STR_NETWORK_SPECTATORS :ناظرین - # Network set password STR_COMPANY_PASSWORD_CANCEL :{BLACK}بتایا گیا پاس ورڈ محفوظ نہ کریں STR_COMPANY_PASSWORD_OK :{BLACK}کمپنی کا نیا پاس ورڈ رکھیں @@ -1757,8 +1756,6 @@ 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_NAME_CHANGE :*** {STRING} نے اپنا نام بدل کر {STRING} رکھ لیا ہے -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} نے آپ کی کمپنی کو {2:CURRENCY_LONG} دئیے ہیں -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** آپ نے {1:STRING} کو {2:CURRENCY_LONG} دئیے ہیں STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}سرور نے سیشن بند کر دیا STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}سرور دوبارہ سے سٹارٹ ہو رہا ہے - - -{}برائے مہربانی انتظار فرمائیے ۔ ۔ ۔ diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index 97f5f3df34..249d302d6a 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -2208,8 +2208,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} v STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} khai trương công ty mới (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} rời bỏ ván chơi ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** {STRING} đổi tên thành {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** {STRING} tặng công ty bạn {2:CURRENCY_LONG} -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Bạn cho {1:STRING} {2:CURRENCY_LONG} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Server kết thúc phiên STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Server khởi động lại...{}Xin chờ... STR_NETWORK_MESSAGE_KICKED :*** {STRING} đã bị đá khỏi ván chơi. Lý do: ({STRING}) diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index e05866738c..db4ce65ab3 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -2157,8 +2157,6 @@ STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** Mae {STRING STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** Mae {STRING} wedi dechrau cwmni newydd (#{2:NUM}) STR_NETWORK_MESSAGE_CLIENT_LEFT :*** Mae {STRING} wedi gadael y gêm ({2:STRING}) STR_NETWORK_MESSAGE_NAME_CHANGE :*** Mae {STRING} wedi newid ei (h)enw i {STRING} -STR_NETWORK_MESSAGE_GIVE_MONEY :*** Rhoddodd {STRING} {2:CURRENCY_LONG} i'ch cwmni -STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY :*** Fe roddoch chi {2:CURRENCY_LONG} {1:STRING} STR_NETWORK_MESSAGE_SERVER_SHUTDOWN :{WHITE}Fe gaewyd y sesiwn gan y gweinydd STR_NETWORK_MESSAGE_SERVER_REBOOT :{WHITE}Mae'r gweinydd yn ailgychwyn...{}Arhoswch... diff --git a/src/network/network.cpp b/src/network/network.cpp index c2d67bd8c0..c6dcf9a13b 100644 --- a/src/network/network.cpp +++ b/src/network/network.cpp @@ -258,9 +258,9 @@ void NetworkTextMessage(NetworkAction action, TextColour colour, bool self_send, if (self_send) { strid = STR_NETWORK_MESSAGE_GAVE_MONEY_AWAY; } else if ((CompanyID) (data.auxdata & 0xFFFF) == _local_company) { - strid = STR_NETWORK_MESSAGE_GIVE_MONEY; + strid = STR_NETWORK_MESSAGE_GIVE_MONEY_RECEIVE; } else { - strid = STR_NETWORK_MESSAGE_MONEY_GIVEN; + strid = STR_NETWORK_MESSAGE_GIVE_MONEY; SetDParam(3, data.auxdata & 0xFFFF); } break; diff --git a/src/news_func.h b/src/news_func.h index 352193f1ed..2131c8a749 100644 --- a/src/news_func.h +++ b/src/news_func.h @@ -42,9 +42,9 @@ static inline void AddVehicleAdviceNewsItem(StringID string, VehicleID vehicle) AddNewsItem(string, NT_ADVICE, NF_INCOLOUR | NF_SMALL | NF_VEHICLE_PARAM0, NR_VEHICLE, vehicle); } -static inline void AddTileNewsItem(StringID string, NewsType type, TileIndex tile, void *free_data = nullptr) +static inline void AddTileNewsItem(StringID string, NewsType type, TileIndex tile, void *free_data = nullptr, StationID station = INVALID_STATION) { - AddNewsItem(string, type, NF_NO_TRANSPARENT | NF_SHADE | NF_THIN, NR_TILE, tile, NR_NONE, UINT32_MAX, free_data); + AddNewsItem(string, type, NF_NO_TRANSPARENT | NF_SHADE | NF_THIN, NR_TILE, tile, station == INVALID_STATION ? NR_NONE : NR_STATION, station, free_data); } static inline void AddIndustryNewsItem(StringID string, NewsType type, IndustryID industry) diff --git a/src/object_cmd.cpp b/src/object_cmd.cpp index eb8450b586..d3a984f3f8 100644 --- a/src/object_cmd.cpp +++ b/src/object_cmd.cpp @@ -251,7 +251,14 @@ CommandCost CmdBuildObject(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3 } else { if (!allow_ground) return_cmd_error(STR_ERROR_MUST_BE_BUILT_ON_WATER); /* For non-water tiles, we'll have to clear it before building. */ - cost.AddCost(DoCommand(t, 0, 0, flags & ~DC_EXEC, CMD_LANDSCAPE_CLEAR)); + + /* When relocating HQ, allow it to be relocated (partial) on itself. */ + if (!(type == OBJECT_HQ && + IsTileType(t, MP_OBJECT) && + IsTileOwner(t, _current_company) && + IsObjectType(t, OBJECT_HQ))) { + cost.AddCost(DoCommand(t, 0, 0, flags & ~DC_EXEC, CMD_LANDSCAPE_CLEAR)); + } } } diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp index a538de078b..f8eb346477 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -303,15 +303,6 @@ static CommandCost CheckTrackCombination(TileIndex tile, TrackBits to_build, Rai return CommandCost(); } - /* Let's see if we may build this */ - if ((flags & DC_NO_RAIL_OVERLAP) || HasSignals(tile)) { - /* If we are not allowed to overlap (flag is on for ai companies or we have - * signals on the tile), check that */ - if (future != TRACK_BIT_HORZ && future != TRACK_BIT_VERT) { - return_cmd_error((flags & DC_NO_RAIL_OVERLAP) ? STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION : STR_ERROR_MUST_REMOVE_SIGNALS_FIRST); - } - } - RailType rt = INVALID_RAILTYPE; if (current == TRACK_BIT_HORZ || current == TRACK_BIT_VERT) { RailType rt1 = GetRailType(tile); @@ -561,7 +552,9 @@ static inline bool ValParamTrackOrientation(Track track) * @param tile tile to build on * @param flags operation to perform * @param p1 railtype of being built piece (normal, mono, maglev) - * @param p2 rail track to build + * @param p2 various bitstuffed elements + * - (bit 0- 2) - track-orientation, valid values: 0-5 (@see Track) + * - (bit 3) - 0 = error on signal in the way, 1 = auto remove signals when in the way * @param text unused * @return the cost of this operation or an error */ @@ -569,6 +562,7 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u { RailType railtype = Extract(p1); Track track = Extract(p2); + bool auto_remove_signals = HasBit(p2, 3); bool disable_custom_bridge_heads = HasBit(p2, 4); bool disable_dual_rail_type = HasBit(p2, 5); CommandCost cost(EXPENSES_CONSTRUCTION); @@ -606,6 +600,19 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u return ret; } + if (HasSignals(tile) && TracksOverlap(GetTrackBits(tile) | TrackToTrackBits(track))) { + /* If adding the new track causes any overlap, all signals must be removed first */ + if (!auto_remove_signals) return_cmd_error(STR_ERROR_MUST_REMOVE_SIGNALS_FIRST); + + for (Track track_it = TRACK_BEGIN; track_it < TRACK_END; track_it++) { + if (HasTrack(tile, track_it) && HasSignalOnTrack(tile, track_it)) { + CommandCost ret_remove_signals = DoCommand(tile, track_it, 0, flags, CMD_REMOVE_SIGNALS); + if (ret_remove_signals.Failed()) return ret_remove_signals; + cost.AddCost(ret_remove_signals); + } + } + } + ret = CheckRailSlope(tileh, trackbit, GetTrackBits(tile), tile); if (ret.Failed()) return ret; cost.AddCost(ret); @@ -658,9 +665,9 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u if (existing == future) return_cmd_error(STR_ERROR_ALREADY_BUILT); - if (flags & DC_NO_RAIL_OVERLAP || IsTunnelBridgeWithSignalSimulation(tile)) { + if (IsTunnelBridgeWithSignalSimulation(tile)) { if (future != TRACK_BIT_HORZ && future != TRACK_BIT_VERT) { - return_cmd_error((flags & DC_NO_RAIL_OVERLAP) ? STR_ERROR_IMPOSSIBLE_TRACK_COMBINATION : STR_ERROR_MUST_REMOVE_SIGNALS_FIRST); + return_cmd_error(STR_ERROR_MUST_REMOVE_SIGNALS_FIRST); } } @@ -1147,6 +1154,7 @@ static CommandCost ValidateAutoDrag(Trackdir *trackdir, TileIndex start, TileInd * - p2 = (bit 6-8) - track-orientation, valid values: 0-5 (Track enum) * - p2 = (bit 9) - 0 = build, 1 = remove tracks * - p2 = (bit 10) - 0 = build up to an obstacle, 1 = fail if an obstacle is found (used for AIs). + * - p2 = (bit 13) - 0 = error on signal in the way, 1 = auto remove signals when in the way * @param text unused * @return the cost of this operation or an error */ @@ -1159,6 +1167,7 @@ static CommandCost CmdRailTrackHelper(TileIndex tile, DoCommandFlag flags, uint3 bool fail_if_obstacle = HasBit(p2, 10); bool no_custom_bridge_heads = HasBit(p2, 11); bool no_dual_rail_type = HasBit(p2, 12); + bool auto_remove_signals = HasBit(p2, 13); _rail_track_endtile = INVALID_TILE; @@ -1174,7 +1183,7 @@ static CommandCost CmdRailTrackHelper(TileIndex tile, DoCommandFlag flags, uint3 CommandCost last_error = CMD_ERROR; for (;;) { TileIndex last_endtile = _rail_track_endtile; - CommandCost ret = DoCommand(tile, remove ? 0 : railtype, TrackdirToTrack(trackdir) | (no_custom_bridge_heads ? 1 << 4 : 0) | (no_dual_rail_type ? 1 << 5 : 0), flags, remove ? CMD_REMOVE_SINGLE_RAIL : CMD_BUILD_SINGLE_RAIL); + CommandCost ret = DoCommand(tile, remove ? 0 : railtype, TrackdirToTrack(trackdir) | (auto_remove_signals << 3) | (no_custom_bridge_heads ? 1 << 4 : 0) | (no_dual_rail_type ? 1 << 5 : 0), flags, remove ? CMD_REMOVE_SINGLE_RAIL : CMD_BUILD_SINGLE_RAIL); if (ret.Failed()) { last_error = ret; diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp index ccc126eff2..25c97116f9 100644 --- a/src/rail_gui.cpp +++ b/src/rail_gui.cpp @@ -104,7 +104,7 @@ static CommandContainer GenericPlaceRailCmd(TileIndex tile, Track track) CommandContainer ret = NewCommandContainerBasic( tile, // tile _cur_railtype, // p1 - track, // p2 + track | (_settings_client.gui.auto_remove_signals << 3), // p2 (uint32) (_remove_button_clicked ? CMD_REMOVE_SINGLE_RAIL | CMD_MSG(STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK) : CMD_BUILD_SINGLE_RAIL | CMD_MSG(STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK)), // cmd @@ -123,10 +123,11 @@ static CommandContainer GenericPlaceRailCmd(TileIndex tile, Track track) */ static void PlaceExtraDepotRail(TileIndex tile, DiagDirection dir, Track track) { - if (GetRailTileType(tile) != RAIL_TILE_NORMAL) return; + if (GetRailTileType(tile) == RAIL_TILE_DEPOT) return; + if (GetRailTileType(tile) == RAIL_TILE_SIGNALS && !_settings_client.gui.auto_remove_signals) return; if ((GetTrackBits(tile) & DiagdirReachesTracks(dir)) == 0) return; - DoCommandP(tile, _cur_railtype, track, CMD_BUILD_SINGLE_RAIL); + DoCommandP(tile, _cur_railtype, track | (_settings_client.gui.auto_remove_signals << 3), CMD_BUILD_SINGLE_RAIL); } /** Additional pieces of track to add at the entrance of a depot. */ @@ -388,7 +389,7 @@ static CommandContainer DoRailroadTrackCmd(TileIndex start_tile, TileIndex end_t CommandContainer ret = NewCommandContainerBasic( start_tile, // tile end_tile, // p1 - (uint32) (_cur_railtype | (track << 6)), // p2 + (uint32) (_cur_railtype | (track << 6) | (_settings_client.gui.auto_remove_signals << 13)), // p2 (uint32) (_remove_button_clicked ? CMD_REMOVE_RAILROAD_TRACK | CMD_MSG(STR_ERROR_CAN_T_REMOVE_RAILROAD_TRACK) : CMD_BUILD_RAILROAD_TRACK | CMD_MSG(STR_ERROR_CAN_T_BUILD_RAILROAD_TRACK)), // cmd diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp index 78b4cfdb8d..78497d7c7d 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -1609,7 +1609,8 @@ CommandCost CmdRemoveLongRoad(TileIndex start_tile, DoCommandFlag flags, uint32 FlushDeferredUpdateRoadCachedOneWayStates(); }); - Money money = GetAvailableMoneyForCommand(); + Money money_available = GetAvailableMoneyForCommand(); + Money money_spent = 0; TileIndex tile = start_tile; CommandCost last_error = CMD_ERROR; bool had_success = false; @@ -1626,8 +1627,8 @@ CommandCost CmdRemoveLongRoad(TileIndex start_tile, DoCommandFlag flags, uint32 CommandCost ret = RemoveRoad(tile, flags & ~DC_EXEC, bits, rtt, true); if (ret.Succeeded()) { if (flags & DC_EXEC) { - money -= ret.GetCost(); - if (money < 0) { + money_spent += ret.GetCost(); + if (money_spent > 0 && money_spent > money_available) { _additional_cash_required = DoCommand(start_tile, end_tile, p2, flags & ~DC_EXEC, CMD_REMOVE_LONG_ROAD).GetCost(); return cost; } @@ -2939,6 +2940,17 @@ CommandCost CmdConvertRoad(TileIndex tile, DoCommandFlag flags, uint32 p1, uint3 } } + /* Base the ability to replace town roads and bridges on the town's + * acceptance of destructive actions. */ + if (owner == OWNER_TOWN) { + Town *t = ClosestTownFromTile(tile, _settings_game.economy.dist_local_authority); + CommandCost ret = CheckforTownRating(DC_NONE, t, tt == MP_TUNNELBRIDGE ? TUNNELBRIDGE_REMOVE : ROAD_REMOVE); + if (ret.Failed()) { + error = ret; + continue; + } + } + /* Vehicle on the tile when not converting normal <-> powered * Tunnels and bridges have special check later */ if (tt != MP_TUNNELBRIDGE) { diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp index c2c35f3e06..d3fbeeb820 100644 --- a/src/roadveh_cmd.cpp +++ b/src/roadveh_cmd.cpp @@ -616,12 +616,8 @@ static void RoadVehCrash(RoadVehicle *v) Game::NewEvent(new ScriptEventVehicleCrashed(v->index, v->tile, ScriptEventVehicleCrashed::CRASH_RV_LEVEL_CROSSING)); SetDParam(0, pass); - AddVehicleNewsItem( - (pass == 1) ? - STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER : STR_NEWS_ROAD_VEHICLE_CRASH, - NT_ACCIDENT, - v->index - ); + StringID newsitem = (pass == 1) ? STR_NEWS_ROAD_VEHICLE_CRASH_DRIVER : STR_NEWS_ROAD_VEHICLE_CRASH; + AddTileNewsItem(newsitem, NT_ACCIDENT, v->tile); ModifyStationRatingAround(v->tile, v->owner, -160, 22); if (_settings_client.sound.disaster) SndPlayVehicleFx(SND_12_EXPLOSION, v); diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 6444f81a59..e134d0ad55 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -1770,6 +1770,7 @@ static SettingsContainer &GetSettingsTree() company->Add(new SettingEntry("gui.default_signal_type")); company->Add(new SettingEntry("gui.cycle_signal_types")); company->Add(new SettingEntry("gui.drag_signals_fixed_distance")); + company->Add(new SettingEntry("gui.auto_remove_signals")); company->Add(new SettingEntry("gui.new_nonstop")); company->Add(new SettingEntry("gui.stop_location")); company->Add(new SettingEntry("gui.starting_colour")); diff --git a/src/settings_type.h b/src/settings_type.h index 102b9815e3..c2c19b3f4f 100644 --- a/src/settings_type.h +++ b/src/settings_type.h @@ -196,6 +196,7 @@ struct GUISettings : public TimeSettings { uint8 osk_activation; ///< Mouse gesture to trigger the OSK. byte starting_colour; ///< default color scheme for the company to start a new game with bool show_newgrf_name; ///< Show the name of the NewGRF in the build vehicle window + bool auto_remove_signals; ///< automatically remove signals when in the way during rail construction bool show_vehicle_route_steps; ///< when a window related to a specific vehicle is focused, show route steps bool show_vehicle_list_company_colour; ///< show the company colour of vehicles which have an owner different to the owner of the vehicle list bool enable_single_veh_shared_order_gui; ///< enable showing a single vehicle in the shared order GUI window diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index c4eb479dee..d166fda74e 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -2766,8 +2766,10 @@ CommandCost CmdBuildDock(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 if (IsBridgeAbove(slope_tile) && !_settings_game.construction.allow_docks_under_bridges) return_cmd_error(STR_ERROR_MUST_DEMOLISH_BRIDGE_FIRST); + CommandCost cost(EXPENSES_CONSTRUCTION, _price[PR_BUILD_STATION_DOCK]); ret = DoCommand(slope_tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR); if (ret.Failed()) return ret; + cost.AddCost(ret); if (!IsTileType(flat_tile, MP_WATER) || !IsTileFlat(flat_tile)) { return_cmd_error(STR_ERROR_SITE_UNSUITABLE); @@ -2821,7 +2823,7 @@ CommandCost CmdBuildDock(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 ZoningMarkDirtyStationCoverageArea(st); } - return CommandCost(EXPENSES_CONSTRUCTION, _price[PR_BUILD_STATION_DOCK]); + return cost; } void RemoveDockingTile(TileIndex t) diff --git a/src/table/settings.ini b/src/table/settings.ini index 6548f506cb..3393fe890e 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini @@ -4143,6 +4143,14 @@ str = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR strhelp = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT strval = STR_COLOUR_DARK_BLUE +[SDTC_BOOL] +var = gui.auto_remove_signals +flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS +strhelp = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT +cat = SC_ADVANCED + [SDTC_BOOL] var = gui.prefer_teamchat flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index 57f2b788fc..db03eb8f96 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -768,7 +768,28 @@ static void TileLoop_Town(TileIndex tile) ClearTownHouse(t, tile); /* Rebuild with another house? */ - if (GB(r, 24, 8) >= 12) BuildTownHouse(t, tile); + if (GB(r, 24, 8) >= 12) { + /* If we are multi-tile houses, make sure to replace the house + * closest to city center. If we do not do this, houses tend to + * wander away from roads and other houses. */ + if (hs->building_flags & BUILDING_HAS_2_TILES) { + /* House tiles are always the most north tile. Move the new + * house to the south if we are north of the city center. */ + TileIndexDiffC grid_pos = TileIndexToTileIndexDiffC(t->xy, tile); + int x = Clamp(grid_pos.x, 0, 1); + int y = Clamp(grid_pos.y, 0, 1); + + if (hs->building_flags & TILE_SIZE_2x2) { + tile = TILE_ADDXY(tile, x, y); + } else if (hs->building_flags & TILE_SIZE_1x2) { + tile = TILE_ADDXY(tile, 0, y); + } else if (hs->building_flags & TILE_SIZE_2x1) { + tile = TILE_ADDXY(tile, x, 0); + } + } + + BuildTownHouse(t, tile); + } } cur_company.Restore(); @@ -1311,10 +1332,15 @@ static bool GrowTownWithBridge(const Town *t, const TileIndex tile, const DiagDi const int delta = TileOffsByDiagDir(bridge_dir); + /* To prevent really small towns from building disproportionately + * long bridges, make the max a function of its population. */ + int base_bridge_length = 5; + int max_bridge_length = t->cache.population / 1000 + base_bridge_length; + if (slope == SLOPE_FLAT) { /* Bridges starting on flat tiles are only allowed when crossing rivers, rails or one-way roads. */ do { - if (bridge_length++ >= 4) { + if (bridge_length++ >= base_bridge_length) { /* Allow to cross rivers, not big lakes, nor large amounts of rails or one-way roads. */ return false; } @@ -1322,8 +1348,8 @@ static bool GrowTownWithBridge(const Town *t, const TileIndex tile, const DiagDi } while (IsValidTile(bridge_tile) && ((IsWaterTile(bridge_tile) && !IsSea(bridge_tile)) || IsPlainRailTile(bridge_tile) || (IsNormalRoadTile(bridge_tile) && GetDisallowedRoadDirections(bridge_tile) != DRD_NONE))); } else { do { - if (bridge_length++ >= 11) { - /* Max 11 tile long bridges */ + if (bridge_length++ >= max_bridge_length) { + /* Ensure the bridge is not longer than the max allowed length. */ return false; } bridge_tile += delta; diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index 2ebba32ad8..1c98245343 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -4580,7 +4580,7 @@ static bool CheckTrainCollision(Train *v) if (tcc.num == 0) return false; SetDParam(0, tcc.num); - AddVehicleNewsItem(STR_NEWS_TRAIN_CRASH, NT_ACCIDENT, v->index); + AddTileNewsItem(STR_NEWS_TRAIN_CRASH, NT_ACCIDENT, v->tile); ModifyStationRatingAround(v->tile, v->owner, -160, 30); if (_settings_client.sound.disaster) SndPlayVehicleFx(SND_13_BIG_CRASH, v); diff --git a/src/vehicle_cmd.cpp b/src/vehicle_cmd.cpp index f8f79f30c0..971f6f8ae3 100644 --- a/src/vehicle_cmd.cpp +++ b/src/vehicle_cmd.cpp @@ -1510,7 +1510,12 @@ CommandCost CmdCloneVehicle(TileIndex tile, DoCommandFlag flags, uint32 p1, uint * the vehicle refitted before doing this, otherwise the moved * cargo types might not match (passenger vs non-passenger) */ - DoCommand(0, w_front->index | (p2 & 1 ? CO_SHARE : CO_COPY) << 30, v_front->index, flags, CMD_CLONE_ORDER); + CommandCost result = DoCommand(0, w_front->index | (p2 & 1 ? CO_SHARE : CO_COPY) << 30, v_front->index, flags, CMD_CLONE_ORDER); + if (result.Failed()) { + /* The vehicle has already been bought, so now it must be sold again. */ + DoCommand(w_front->tile, w_front->index | 1 << 20, 0, flags, GetCmdSellVeh(w_front)); + return result; + } /* Now clone the vehicle's name, if it has one. */ if (!v_front->name.empty()) CloneVehicleName(v_front, w_front); diff --git a/src/video/cocoa/cocoa_v.h b/src/video/cocoa/cocoa_v.h index f3e484b01b..f5d1756407 100644 --- a/src/video/cocoa/cocoa_v.h +++ b/src/video/cocoa/cocoa_v.h @@ -18,7 +18,6 @@ extern bool _cocoa_video_started; class VideoDriver_Cocoa : public VideoDriver { private: - bool fullscreen_on_mainloop; ///< Switch to fullscreen once the main loop is running? Dimension orig_res; ///< Saved window size for non-fullscreen mode. public: diff --git a/src/video/cocoa/cocoa_v.mm b/src/video/cocoa/cocoa_v.mm index c7c5a308eb..eae1acbc99 100644 --- a/src/video/cocoa/cocoa_v.mm +++ b/src/video/cocoa/cocoa_v.mm @@ -156,6 +156,7 @@ static void QZ_UpdateVideoModes() static CocoaSubdriver *QZ_CreateSubdriver(int width, int height, int bpp, bool fullscreen, bool fallback) { CocoaSubdriver *ret = QZ_CreateWindowQuartzSubdriver(width, height, bpp); + if (ret != nullptr && fullscreen) ret->ToggleFullscreen(fullscreen); if (ret != nullptr) return ret; if (!fallback) return nullptr; @@ -209,9 +210,6 @@ const char *VideoDriver_Cocoa::Start(const StringList &parm) return "The cocoa quartz subdriver only supports 8 and 32 bpp."; } - /* Defer fullscreen toggle until the main loop is running, - * as otherwise a grey bar will be stuck on top of the window. */ - this->fullscreen_on_mainloop = _fullscreen; _cocoa_subdriver = QZ_CreateSubdriver(width, height, bpp, _fullscreen, true); if (_cocoa_subdriver == NULL) { Stop(); @@ -569,7 +567,8 @@ bool WindowQuartzSubdriver::SetVideoMode(int width, int height, int bpp) [ this->window setContentSize:contentRect.size ]; /* Ensure frame height - title bar height >= view height */ - contentRect.size.height = Clamp(height, 0, (int)[ this->window frame ].size.height - 22 /* 22 is the height of title bar of window*/); + float content_height = [ this->window contentRectForFrameRect:[ this->window frame ] ].size.height; + contentRect.size.height = Clamp(height, 0, (int)content_height); if (this->cocoaview != nil) { height = (int)contentRect.size.height; diff --git a/src/video/cocoa/event.mm b/src/video/cocoa/event.mm index 5aeb7f18b3..aad049541e 100644 --- a/src/video/cocoa/event.mm +++ b/src/video/cocoa/event.mm @@ -655,12 +655,6 @@ void VideoDriver_Cocoa::GameLoop() while (QZ_PollEvent()) {} - /* If we do that right after window creation, a grey bar will be left at the top. */ - if (this->fullscreen_on_mainloop) { - this->fullscreen_on_mainloop = false; - _cocoa_subdriver->ToggleFullscreen(true); - } - if (_exit_game) { /* Restore saved resolution if in fullscreen mode. */ if (_cocoa_subdriver->IsFullscreen()) _cur_resolution = this->orig_res; diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp index ab1eccaa48..5ec1f1db0c 100644 --- a/src/water_cmd.cpp +++ b/src/water_cmd.cpp @@ -1005,7 +1005,7 @@ static void FloodVehicle(Vehicle *v) AI::NewEvent(v->owner, new ScriptEventVehicleCrashed(v->index, v->tile, ScriptEventVehicleCrashed::CRASH_FLOODED)); Game::NewEvent(new ScriptEventVehicleCrashed(v->index, v->tile, ScriptEventVehicleCrashed::CRASH_FLOODED)); SetDParam(0, pass); - AddVehicleNewsItem(STR_NEWS_DISASTER_FLOOD_VEHICLE, NT_ACCIDENT, v->index); + AddTileNewsItem(STR_NEWS_DISASTER_FLOOD_VEHICLE, NT_ACCIDENT, v->tile); CreateEffectVehicleRel(v, 4, 4, 8, EV_EXPLOSION_LARGE); if (_settings_client.sound.disaster) SndPlayVehicleFx(SND_12_EXPLOSION, v); }