From 89cf0d5da8a73e27efcae6b8f58d8a10f660cdfc Mon Sep 17 00:00:00 2001 From: Henry Wilson Date: Wed, 2 Nov 2022 17:31:10 +0000 Subject: [PATCH 01/16] Codechange: Factor cargotype weight conversion magic numbers --- src/build_vehicle_gui.cpp | 4 ++-- src/cargotype.cpp | 6 ++++++ src/cargotype.h | 7 +++++++ src/roadveh.h | 2 +- src/script/api/script_cargo.cpp | 2 +- src/train.h | 2 +- 6 files changed, 18 insertions(+), 5 deletions(-) diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp index 04392c9b03..bef76b4186 100644 --- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -590,7 +590,7 @@ static int DrawRailWagonPurchaseInfo(int left, int right, int y, EngineID engine /* Wagon weight - (including cargo) */ uint weight = e->GetDisplayWeight(); SetDParam(0, weight); - uint cargo_weight = (e->CanCarryCargo() ? CargoSpec::Get(te.cargo)->weight * te.capacity / 16 : 0); + uint cargo_weight = (e->CanCarryCargo() ? CargoSpec::Get(te.cargo)->WeightOfNUnitsInTrain(te.capacity) : 0); SetDParam(1, cargo_weight + weight); DrawString(left, right, y, STR_PURCHASE_INFO_WEIGHT_CWEIGHT); y += FONT_HEIGHT_NORMAL; @@ -684,7 +684,7 @@ static int DrawRoadVehPurchaseInfo(int left, int right, int y, EngineID engine_n /* Road vehicle weight - (including cargo) */ int16 weight = e->GetDisplayWeight(); SetDParam(0, weight); - uint cargo_weight = (e->CanCarryCargo() ? CargoSpec::Get(te.cargo)->weight * te.capacity / 16 : 0); + uint cargo_weight = (e->CanCarryCargo() ? CargoSpec::Get(te.cargo)->WeightOfNUnits(te.capacity) : 0); SetDParam(1, cargo_weight + weight); DrawString(left, right, y, STR_PURCHASE_INFO_WEIGHT_CWEIGHT); y += FONT_HEIGHT_NORMAL; diff --git a/src/cargotype.cpp b/src/cargotype.cpp index e35c94d2fe..1bb490a2cf 100644 --- a/src/cargotype.cpp +++ b/src/cargotype.cpp @@ -12,6 +12,7 @@ #include "newgrf_cargo.h" #include "string_func.h" #include "strings_func.h" +#include "settings_type.h" #include "table/sprites.h" #include "table/strings.h" @@ -209,3 +210,8 @@ void InitializeSortedCargoSpecs() _sorted_standard_cargo_specs = { _sorted_cargo_specs.data(), nb_standard_cargo }; } +uint64 CargoSpec::WeightOfNUnitsInTrain(uint32 n) const +{ + if (this->is_freight) n *= _settings_game.vehicle.freight_trains; + return this->WeightOfNUnits(n); +} diff --git a/src/cargotype.h b/src/cargotype.h index 54d24f1d7a..6e73f36958 100644 --- a/src/cargotype.h +++ b/src/cargotype.h @@ -123,6 +123,13 @@ struct CargoSpec { SpriteID GetCargoIcon() const; + inline uint64 WeightOfNUnits(uint32 n) const + { + return n * this->weight / 16u; + } + + uint64 WeightOfNUnitsInTrain(uint32 n) const; + /** * Iterator to iterate all valid CargoSpec */ diff --git a/src/roadveh.h b/src/roadveh.h index 3ef17dfdac..249b8279c8 100644 --- a/src/roadveh.h +++ b/src/roadveh.h @@ -178,7 +178,7 @@ protected: // These functions should not be called outside acceleration code. */ inline uint16 GetWeight() const { - uint16 weight = (CargoSpec::Get(this->cargo_type)->weight * this->cargo.StoredCount()) / 16; + uint16 weight = CargoSpec::Get(this->cargo_type)->WeightOfNUnits(this->cargo.StoredCount()); /* Vehicle weight is not added for articulated parts. */ if (!this->IsArticulatedPart()) { diff --git a/src/script/api/script_cargo.cpp b/src/script/api/script_cargo.cpp index e5a80023f7..49fdc4f294 100644 --- a/src/script/api/script_cargo.cpp +++ b/src/script/api/script_cargo.cpp @@ -85,5 +85,5 @@ /* static */ int64 ScriptCargo::GetWeight(CargoID cargo_type, uint32 amount) { if (!IsValidCargo(cargo_type)) return -1; - return ::CargoSpec::Get(cargo_type)->weight * static_cast(amount) / 16; + return ::CargoSpec::Get(cargo_type)->WeightOfNUnits(amount); } diff --git a/src/train.h b/src/train.h index c2d311878c..60e1a2e281 100644 --- a/src/train.h +++ b/src/train.h @@ -213,7 +213,7 @@ protected: // These functions should not be called outside acceleration code. */ inline uint16 GetWeight() const { - uint16 weight = (CargoSpec::Get(this->cargo_type)->weight * this->cargo.StoredCount() * FreightWagonMult(this->cargo_type)) / 16; + uint16 weight = CargoSpec::Get(this->cargo_type)->WeightOfNUnitsInTrain(this->cargo.StoredCount()); /* Vehicle weight is not added for articulated parts. */ if (!this->IsArticulatedPart()) { From b304c06a4a7c666260b42e07d064b4ae32ff16a7 Mon Sep 17 00:00:00 2001 From: Henry Wilson Date: Fri, 4 Nov 2022 19:12:51 +0000 Subject: [PATCH 02/16] Codechange: Use override specifier for Train and RoadVehicle structs --- src/roadveh.h | 34 +++++++++++++++++----------------- src/train.h | 34 +++++++++++++++++----------------- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/src/roadveh.h b/src/roadveh.h index 249b8279c8..e1406cb7cb 100644 --- a/src/roadveh.h +++ b/src/roadveh.h @@ -124,28 +124,28 @@ struct RoadVehicle FINAL : public GroundVehicle { friend struct GroundVehicle; // GroundVehicle needs to use the acceleration functions defined at RoadVehicle. - void MarkDirty(); - void UpdateDeltaXY(); - ExpensesType GetExpenseType(bool income) const { return income ? EXPENSES_ROADVEH_REVENUE : EXPENSES_ROADVEH_RUN; } - bool IsPrimaryVehicle() const { return this->IsFrontEngine(); } - void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const; - int GetDisplaySpeed() const { return this->gcache.last_speed / 2; } - int GetDisplayMaxSpeed() const { return this->vcache.cached_max_speed / 2; } - Money GetRunningCost() const; + void MarkDirty() override; + void UpdateDeltaXY() override; + ExpensesType GetExpenseType(bool income) const override { return income ? EXPENSES_ROADVEH_REVENUE : EXPENSES_ROADVEH_RUN; } + bool IsPrimaryVehicle() const override { return this->IsFrontEngine(); } + void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const override; + int GetDisplaySpeed() const override { return this->gcache.last_speed / 2; } + int GetDisplayMaxSpeed() const override { return this->vcache.cached_max_speed / 2; } + Money GetRunningCost() const override; int GetDisplayImageWidth(Point *offset = nullptr) const; - bool IsInDepot() const { return this->state == RVSB_IN_DEPOT; } - bool Tick(); - void OnNewDay(); - uint Crash(bool flooded = false); - Trackdir GetVehicleTrackdir() const; - TileIndex GetOrderStationLocation(StationID station); - bool FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse); + bool IsInDepot() const override { return this->state == RVSB_IN_DEPOT; } + bool Tick() override; + void OnNewDay() override; + uint Crash(bool flooded = false) override; + Trackdir GetVehicleTrackdir() const override; + TileIndex GetOrderStationLocation(StationID station) override; + bool FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse) override; bool IsBus() const; - int GetCurrentMaxSpeed() const; + int GetCurrentMaxSpeed() const override; int UpdateSpeed(); - void SetDestTile(TileIndex tile); + void SetDestTile(TileIndex tile) override; protected: // These functions should not be called outside acceleration code. diff --git a/src/train.h b/src/train.h index 60e1a2e281..8ff597ebb8 100644 --- a/src/train.h +++ b/src/train.h @@ -107,23 +107,23 @@ struct Train FINAL : public GroundVehicle { friend struct GroundVehicle; // GroundVehicle needs to use the acceleration functions defined at Train. - void MarkDirty(); - void UpdateDeltaXY(); - ExpensesType GetExpenseType(bool income) const { return income ? EXPENSES_TRAIN_REVENUE : EXPENSES_TRAIN_RUN; } - void PlayLeaveStationSound() const; - bool IsPrimaryVehicle() const { return this->IsFrontEngine(); } - void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const; - int GetDisplaySpeed() const { return this->gcache.last_speed; } - int GetDisplayMaxSpeed() const { return this->vcache.cached_max_speed; } - Money GetRunningCost() const; + void MarkDirty() override; + void UpdateDeltaXY() override; + ExpensesType GetExpenseType(bool income) const override { return income ? EXPENSES_TRAIN_REVENUE : EXPENSES_TRAIN_RUN; } + void PlayLeaveStationSound() const override; + bool IsPrimaryVehicle() const override { return this->IsFrontEngine(); } + void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const override; + int GetDisplaySpeed() const override { return this->gcache.last_speed; } + int GetDisplayMaxSpeed() const override { return this->vcache.cached_max_speed; } + Money GetRunningCost() const override; int GetDisplayImageWidth(Point *offset = nullptr) const; - bool IsInDepot() const { return this->track == TRACK_BIT_DEPOT; } - bool Tick(); - void OnNewDay(); - uint Crash(bool flooded = false); - Trackdir GetVehicleTrackdir() const; - TileIndex GetOrderStationLocation(StationID station); - bool FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse); + bool IsInDepot() const override { return this->track == TRACK_BIT_DEPOT; } + bool Tick() override; + void OnNewDay() override; + uint Crash(bool flooded = false) override; + Trackdir GetVehicleTrackdir() const override; + TileIndex GetOrderStationLocation(StationID station) override; + bool FindClosestDepot(TileIndex *location, DestinationID *destination, bool *reverse) override; void ReserveTrackUnderConsist() const; @@ -135,7 +135,7 @@ struct Train FINAL : public GroundVehicle { void UpdateAcceleration(); - int GetCurrentMaxSpeed() const; + int GetCurrentMaxSpeed() const override; /** * Get the next real (non-articulated part and non rear part of dualheaded engine) vehicle in the consist. From 59dbcdb5ba0ada6a5a960a02d32d4aa57bc94231 Mon Sep 17 00:00:00 2001 From: Henry Wilson Date: Mon, 31 Oct 2022 19:47:25 +0000 Subject: [PATCH 03/16] Feature: Display power-to-weight ratio in ground vehicle details GUI --- src/lang/english.txt | 11 +++++++++++ src/roadveh.h | 6 ++++++ src/roadveh_cmd.cpp | 13 +++++++++++++ src/strings.cpp | 28 +++++++++++++++++++++++++++- src/table/control_codes.h | 1 + src/table/strgen_tables.h | 1 + src/train.h | 6 ++++++ src/train_cmd.cpp | 17 +++++++++++++++++ src/vehicle.cpp | 26 ++++++++++++++++++++++++++ src/vehicle_base.h | 12 ++++++++++++ src/vehicle_gui.cpp | 7 ++++++- 11 files changed, 126 insertions(+), 2 deletions(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index 34ea3b6775..f8ef8cb4fe 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -200,6 +200,16 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -4201,6 +4211,7 @@ STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}Weight: STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}Weight: {LTBLUE}{WEIGHT_SHORT} {BLACK}Power: {LTBLUE}{POWER}{BLACK} Max. speed: {LTBLUE}{VELOCITY} {BLACK}Max. T.E.: {LTBLUE}{FORCE} STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR :{BLACK}Profit this year: {LTBLUE}{CURRENCY_LONG} (last year: {CURRENCY_LONG}) +STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR_MIN_PERFORMANCE :{BLACK}Profit this year: {LTBLUE}{CURRENCY_LONG} (last year: {CURRENCY_LONG}) {BLACK}Min. performance: {LTBLUE}{POWER_TO_WEIGHT} STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Reliability: {LTBLUE}{COMMA}% {BLACK}Breakdowns since last service: {LTBLUE}{COMMA} STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Built: {LTBLUE}{NUM}{BLACK} Value: {LTBLUE}{CURRENCY_LONG} diff --git a/src/roadveh.h b/src/roadveh.h index e1406cb7cb..8dac7b5d51 100644 --- a/src/roadveh.h +++ b/src/roadveh.h @@ -189,6 +189,12 @@ protected: // These functions should not be called outside acceleration code. return weight; } + /** + * Calculates the weight value that this vehicle will have when fully loaded with its current cargo. + * @return Weight value in tonnes. + */ + uint16 GetMaxWeight() const override; + /** * Allows to know the tractive effort value that this vehicle will use. * @return Tractive effort value from the engine. diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp index 35558bd58d..ae09fda403 100644 --- a/src/roadveh_cmd.cpp +++ b/src/roadveh_cmd.cpp @@ -1753,3 +1753,16 @@ Trackdir RoadVehicle::GetVehicleTrackdir() const * otherwise transform it into a valid track direction */ return (Trackdir)((IsReversingRoadTrackdir((Trackdir)this->state)) ? (this->state - 6) : this->state); } + +uint16 RoadVehicle::GetMaxWeight() const +{ + uint16 weight = CargoSpec::Get(this->cargo_type)->WeightOfNUnits(this->GetEngine()->DetermineCapacity(this)); + + /* Vehicle weight is not added for articulated parts. */ + if (!this->IsArticulatedPart()) { + /* Road vehicle weight is in units of 1/4 t. */ + weight += GetVehicleProperty(this, PROP_ROADVEH_WEIGHT, RoadVehInfo(this->engine_type)->weight) / 4; + } + + return weight; +} diff --git a/src/strings.cpp b/src/strings.cpp index c589b0eef5..4c78e0fe7b 100644 --- a/src/strings.cpp +++ b/src/strings.cpp @@ -708,13 +708,26 @@ static const Units _units_velocity[] = { { {37888, 16}, STR_UNITS_VELOCITY_GAMEUNITS, 1 }, }; -/** Unit conversions for velocity. */ +/** Unit conversions for power. */ static const Units _units_power[] = { { { 1, 0}, STR_UNITS_POWER_IMPERIAL, 0 }, { {4153, 12}, STR_UNITS_POWER_METRIC, 0 }, { {6109, 13}, STR_UNITS_POWER_SI, 0 }, }; +/** Unit conversions for power to weight. */ +static const Units _units_power_to_weight[] = { + { { 29, 5}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL, 1}, + { { 1, 0}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC, 1}, + { { 1, 0}, STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI, 1}, + { { 59, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL, 1}, + { { 65, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC, 1}, + { { 65, 6}, STR_UNITS_POWER_METRIC_TO_WEIGHT_SI, 1}, + { { 173, 8}, STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL, 1}, + { { 3, 2}, STR_UNITS_POWER_SI_TO_WEIGHT_METRIC, 1}, + { { 3, 2}, STR_UNITS_POWER_SI_TO_WEIGHT_SI, 1}, +}; + /** Unit conversions for weight. */ static const UnitsLong _units_weight[] = { { {4515, 12}, STR_UNITS_WEIGHT_SHORT_IMPERIAL, STR_UNITS_WEIGHT_LONG_IMPERIAL }, @@ -1252,6 +1265,19 @@ static char *FormatString(char *buff, const char *str_arg, StringParameters *arg break; } + case SCC_POWER_TO_WEIGHT: { // {POWER_TO_WEIGHT} + auto setting = _settings_game.locale.units_power * 3u + _settings_game.locale.units_weight; + assert(setting < lengthof(_units_power_to_weight)); + + auto const &x = _units_power_to_weight[setting]; + + int64 args_array[] = {x.c.ToDisplay(args->GetInt64()), x.decimal_places}; + + StringParameters tmp_params(args_array); + buff = FormatString(buff, GetStringPtr(x.s), &tmp_params, last); + break; + } + case SCC_VELOCITY: { // {VELOCITY} assert(_settings_game.locale.units_velocity < lengthof(_units_velocity)); unsigned int decimal_places = _units_velocity[_settings_game.locale.units_velocity].decimal_places; diff --git a/src/table/control_codes.h b/src/table/control_codes.h index 7f42d2c4f6..ef3f8ff268 100644 --- a/src/table/control_codes.h +++ b/src/table/control_codes.h @@ -56,6 +56,7 @@ enum StringControlCode { SCC_CARGO_TINY, SCC_CARGO_LIST, SCC_POWER, + SCC_POWER_TO_WEIGHT, SCC_VOLUME_LONG, SCC_VOLUME_SHORT, SCC_WEIGHT_LONG, diff --git a/src/table/strgen_tables.h b/src/table/strgen_tables.h index 7ce480f6fa..19ce4b0a7d 100644 --- a/src/table/strgen_tables.h +++ b/src/table/strgen_tables.h @@ -78,6 +78,7 @@ static const CmdStruct _cmd_structs[] = { {"CARGO_TINY", EmitSingleChar, SCC_CARGO_TINY, 2, 1, C_NONE}, // tiny cargo description with only the amount, not a specifier for the amount or the actual cargo name {"CARGO_LIST", EmitSingleChar, SCC_CARGO_LIST, 1, -1, C_CASE}, {"POWER", EmitSingleChar, SCC_POWER, 1, 0, C_NONE}, + {"POWER_TO_WEIGHT", EmitSingleChar, SCC_POWER_TO_WEIGHT, 1, 0, C_NONE}, {"VOLUME_LONG", EmitSingleChar, SCC_VOLUME_LONG, 1, 0, C_NONE}, {"VOLUME_SHORT", EmitSingleChar, SCC_VOLUME_SHORT, 1, 0, C_NONE}, {"WEIGHT_LONG", EmitSingleChar, SCC_WEIGHT_LONG, 1, 0, C_NONE}, diff --git a/src/train.h b/src/train.h index 8ff597ebb8..4b0a739b01 100644 --- a/src/train.h +++ b/src/train.h @@ -228,6 +228,12 @@ protected: // These functions should not be called outside acceleration code. return weight; } + /** + * Calculates the weight value that this vehicle will have when fully loaded with its current cargo. + * @return Weight value in tonnes. + */ + uint16 GetMaxWeight() const override; + /** * Allows to know the tractive effort value that this vehicle will use. * @return Tractive effort value from the engine. diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index e5789d807f..eeae7f1e9d 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -4119,3 +4119,20 @@ Trackdir Train::GetVehicleTrackdir() const return TrackDirectionToTrackdir(FindFirstTrack(this->track), this->direction); } + +uint16 Train::GetMaxWeight() const +{ + uint16 weight = CargoSpec::Get(this->cargo_type)->WeightOfNUnitsInTrain(this->GetEngine()->DetermineCapacity(this)); + + /* Vehicle weight is not added for articulated parts. */ + if (!this->IsArticulatedPart()) { + weight += GetVehicleProperty(this, PROP_TRAIN_WEIGHT, RailVehInfo(this->engine_type)->weight); + } + + /* Powered wagons have extra weight added. */ + if (HasBit(this->flags, VRF_POWEREDWAGON)) { + weight += RailVehInfo(this->gcache.first_engine)->pow_wag_weight; + } + + return weight; +} diff --git a/src/vehicle.cpp b/src/vehicle.cpp index af4d4d9ff1..eeb22be5be 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -2987,3 +2987,29 @@ void GetVehicleSet(VehicleSet &set, Vehicle *v, uint8 num_vehicles) } } } + +/** + * Calculates the maximum weight of the ground vehicle when loaded. + * @return Weight in tonnes + */ +uint32 Vehicle::GetDisplayMaxWeight() const +{ + uint32 max_weight = 0; + + for (const Vehicle* u = this; u != nullptr; u = u->Next()) { + max_weight += u->GetMaxWeight(); + } + + return max_weight; +} + +/** + * Calculates the minimum power-to-weight ratio using the maximum weight of the ground vehicle + * @return power-to-weight ratio in 10ths of hp(I) per tonne + */ +uint32 Vehicle::GetDisplayMinPowerToWeight() const +{ + uint32 max_weight = GetDisplayMaxWeight(); + if (max_weight == 0) return 0; + return GetGroundVehicleCache()->cached_power * 10u / max_weight; +} diff --git a/src/vehicle_base.h b/src/vehicle_base.h index 9316a76477..63fc7b524b 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -346,6 +346,15 @@ public: mutable MutableSpriteCache sprite_cache; ///< Cache of sprites and values related to recalculating them, see #MutableSpriteCache + /** + * Calculates the weight value that this vehicle will have when fully loaded with its current cargo. + * @return Weight value in tonnes. + */ + virtual uint16 GetMaxWeight() const + { + return 0; + } + Vehicle(VehicleType type = VEH_INVALID); void PreDestructor(); @@ -1040,6 +1049,9 @@ public: * @return an iterable ensemble of orders of a vehicle */ IterateWrapper Orders() const { return IterateWrapper(this->orders); } + + uint32 GetDisplayMaxWeight() const; + uint32 GetDisplayMinPowerToWeight() const; }; /** diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index 49e57c605e..c840a09d71 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -2343,7 +2343,12 @@ struct VehicleDetailsWindow : Window { /* Draw profit */ SetDParam(0, v->GetDisplayProfitThisYear()); SetDParam(1, v->GetDisplayProfitLastYear()); - DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR); + if (v->IsGroundVehicle()) { + SetDParam(2, v->GetDisplayMinPowerToWeight()); + DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR_MIN_PERFORMANCE); + } else { + DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_VEHICLE_INFO_PROFIT_THIS_YEAR_LAST_YEAR); + } y += FONT_HEIGHT_NORMAL; /* Draw breakdown & reliability */ From a8a7f95665e13820d793ba163c182c78c6782f27 Mon Sep 17 00:00:00 2001 From: SamuXarick <43006711+SamuXarick@users.noreply.github.com> Date: Tue, 8 Nov 2022 20:04:14 +0000 Subject: [PATCH 04/16] Change: Allow to build dock on clearable watered object tiles (#8514) --- src/station_cmd.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index 500eb1fb4b..bb107461bb 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -2500,7 +2500,7 @@ CommandCost CmdBuildDock(DoCommandFlag flags, TileIndex tile, StationID station_ TileIndex tile_cur = tile + TileOffsByDiagDir(direction); - if (!IsTileType(tile_cur, MP_WATER) || !IsTileFlat(tile_cur)) { + if (!HasTileWaterGround(tile_cur) || !IsTileFlat(tile_cur)) { return_cmd_error(STR_ERROR_SITE_UNSUITABLE); } @@ -2509,8 +2509,10 @@ CommandCost CmdBuildDock(DoCommandFlag flags, TileIndex tile, StationID station_ /* Get the water class of the water tile before it is cleared.*/ WaterClass wc = GetWaterClass(tile_cur); + bool add_cost = !IsWaterTile(tile_cur); ret = Command::Do(flags, tile_cur); if (ret.Failed()) return ret; + if (add_cost) cost.AddCost(ret); tile_cur += TileOffsByDiagDir(direction); if (!IsTileType(tile_cur, MP_WATER) || !IsTileFlat(tile_cur)) { From 0d303d6c3fd2b514c6f941af2fc481f0db0283d9 Mon Sep 17 00:00:00 2001 From: stormcone <48624099+stormcone@users.noreply.github.com> Date: Tue, 8 Nov 2022 21:11:16 +0100 Subject: [PATCH 05/16] Feature: Add cargo filter support to vehicle list. (#8308) --- src/group_gui.cpp | 18 ++++- src/lang/english.txt | 5 ++ src/vehicle_gui.cpp | 135 +++++++++++++++++++++++++++++++++++ src/vehicle_gui_base.h | 33 ++++++--- src/widgets/group_widget.h | 1 + src/widgets/vehicle_widget.h | 2 + 6 files changed, 183 insertions(+), 11 deletions(-) diff --git a/src/group_gui.cpp b/src/group_gui.cpp index 197be9e2e7..b463a236b8 100644 --- a/src/group_gui.cpp +++ b/src/group_gui.cpp @@ -81,6 +81,7 @@ static const NWidgetPart _nested_group_widgets[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_GL_SORT_BY_ORDER), SetMinimalSize(81, 12), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_SORT_BY_DROPDOWN), SetMinimalSize(167, 12), SetDataTip(0x0, STR_TOOLTIP_SORT_CRITERIA), + NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_GL_FILTER_BY_CARGO), SetMinimalSize(167, 12), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_FILTER_CRITERIA), NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetResize(1, 0), EndContainer(), EndContainer(), NWidget(NWID_HORIZONTAL), @@ -118,7 +119,6 @@ private: VGC_END }; - VehicleID vehicle_sel; ///< Selected vehicle GroupID group_sel; ///< Selected group (for drag/drop) GroupID group_rename; ///< Group being renamed, INVALID_GROUP if none GroupID group_over; ///< Group over which a vehicle is dragged, INVALID_GROUP if none @@ -349,7 +349,6 @@ public: this->group_sb = this->GetScrollbar(WID_GL_LIST_GROUP_SCROLLBAR); this->vli.index = ALL_GROUP; - this->vehicle_sel = INVALID_VEHICLE; this->group_sel = INVALID_GROUP; this->group_rename = INVALID_GROUP; this->group_over = INVALID_GROUP; @@ -451,6 +450,10 @@ public: void SetStringParameters(int widget) const override { switch (widget) { + case WID_GL_FILTER_BY_CARGO: + SetDParam(0, this->cargo_filter_texts[this->cargo_filter_criteria]); + break; + case WID_GL_AVAILABLE_VEHICLES: SetDParam(0, STR_VEHICLE_LIST_AVAILABLE_TRAINS + this->vli.vtype); break; @@ -530,6 +533,9 @@ public: /* Set text of "sort by" dropdown widget. */ this->GetWidget(WID_GL_SORT_BY_DROPDOWN)->widget_data = this->GetVehicleSorterNames()[this->vehgroups.SortType()]; + /* Set text of filter by cargo dropdown */ + this->GetWidget(WID_GL_FILTER_BY_CARGO)->widget_data = this->cargo_filter_texts[this->cargo_filter_criteria]; + this->DrawWidgets(); } @@ -647,6 +653,10 @@ public: ShowDropDownMenu(this, this->GetVehicleSorterNames(), this->vehgroups.SortType(), WID_GL_SORT_BY_DROPDOWN, 0, (this->vli.vtype == VEH_TRAIN || this->vli.vtype == VEH_ROAD) ? 0 : (1 << 10)); return; + case WID_GL_FILTER_BY_CARGO: // Select filtering criteria dropdown menu + ShowDropDownMenu(this, this->cargo_filter_texts, this->cargo_filter_criteria, WID_GL_FILTER_BY_CARGO, 0, 0); + break; + case WID_GL_ALL_VEHICLES: // All vehicles button if (!IsAllGroupID(this->vli.index)) { this->vli.index = ALL_GROUP; @@ -930,6 +940,10 @@ public: this->vehgroups.SetSortType(index); break; + case WID_GL_FILTER_BY_CARGO: // Select a cargo filter criteria + this->SetCargoFilterIndex(index); + break; + case WID_GL_MANAGE_VEHICLES_DROPDOWN: assert(this->vehicles.size() != 0); diff --git a/src/lang/english.txt b/src/lang/english.txt index f8ef8cb4fe..8983b60402 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -3884,6 +3884,11 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Tra STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: {GOLD}{COMMA} tiles STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Aircraft type: {GOLD}{STRING} +###length 3 +STR_CARGO_TYPE_FILTER_ALL :All cargo types +STR_CARGO_TYPE_FILTER_FREIGHT :Freight +STR_CARGO_TYPE_FILTER_NONE :None + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list. Click on vehicle for information. Ctrl+Click for toggling hiding of the vehicle type STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list. Click on vehicle for information. Ctrl+Click for toggling hiding of the vehicle type diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index c840a09d71..789dd37929 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -139,6 +139,7 @@ const StringID BaseVehicleListWindow::vehicle_depot_name[] = { BaseVehicleListWindow::BaseVehicleListWindow(WindowDesc *desc, WindowNumber wno) : Window(desc), vli(VehicleListIdentifier::UnPack(wno)) { + this->vehicle_sel = INVALID_VEHICLE; this->grouping = _grouping[vli.type][vli.vtype]; this->UpdateSortingFromGrouping(); } @@ -195,6 +196,8 @@ void BaseVehicleListWindow::BuildVehicleList() max_unitnumber = std::max(max_unitnumber, (*it)->unitnumber); } this->unitnumber_digits = CountDigitsForAllocatingSpace(max_unitnumber); + + this->FilterVehicleList(); } else { /* Sort by the primary vehicle; we just want all vehicles that share the same orders to form a contiguous range. */ std::stable_sort(this->vehicles.begin(), this->vehicles.end(), [](const Vehicle * const &u, const Vehicle * const &v) { @@ -223,6 +226,118 @@ void BaseVehicleListWindow::BuildVehicleList() this->vscroll->SetCount(static_cast(this->vehgroups.size())); } + +/** Cargo filter functions */ +/** + * Check whether a vehicle can carry a specific cargo. + * @param vehgroup The vehicle group which contains the vehicle to be checked + * @param cid The cargo what we are looking for + * @return Whether the vehicle can carry the specified cargo or not + */ +static bool CDECL CargoFilter(const GUIVehicleGroup *vehgroup, const CargoID cid) +{ + const Vehicle *v = (*vehgroup).GetSingleVehicle(); + if (cid == BaseVehicleListWindow::CF_ANY) { + return true; + } else if (cid == BaseVehicleListWindow::CF_NONE) { + for (const Vehicle *w = v; w != nullptr; w = w->Next()) { + if (w->cargo_cap > 0) { + return false; + } + } + return true; + } else if (cid == BaseVehicleListWindow::CF_FREIGHT) { + bool have_capacity = false; + for (const Vehicle *w = v; w != nullptr; w = w->Next()) { + if (w->cargo_cap > 0) { + if (IsCargoInClass(w->cargo_type, CC_PASSENGERS)) { + return false; + } else { + have_capacity = true; + } + } + } + return have_capacity; + } else { + for (const Vehicle *w = v; w != nullptr; w = w->Next()) { + if (w->cargo_cap > 0 && w->cargo_type == cid) { + return true; + } + } + return false; + } +} + +static GUIVehicleGroupList::FilterFunction * const _filter_funcs[] = { + &CargoFilter, +}; + +/** + * Set cargo filter list item index. + * @param index The index to be set + */ +void BaseVehicleListWindow::SetCargoFilterIndex(byte index) +{ + if (this->cargo_filter_criteria != index) { + this->cargo_filter_criteria = index; + /* Deactivate filter if criteria is 'Show All', activate it otherwise. */ + this->vehgroups.SetFilterState(this->cargo_filter[this->cargo_filter_criteria] != CF_ANY); + this->vehgroups.SetFilterType(0); + this->vehgroups.ForceRebuild(); + } +} + +/** + *Populate the filter list and set the cargo filter criteria. + */ +void BaseVehicleListWindow::SetCargoFilterArray() +{ + byte filter_items = 0; + + /* Add item for disabling filtering. */ + this->cargo_filter[filter_items] = CF_ANY; + this->cargo_filter_texts[filter_items] = STR_CARGO_TYPE_FILTER_ALL; + this->cargo_filter_criteria = filter_items; + filter_items++; + + /* Add item for freight (i.e. vehicles with cargo capacity and with no passenger capacity). */ + this->cargo_filter[filter_items] = CF_FREIGHT; + this->cargo_filter_texts[filter_items] = STR_CARGO_TYPE_FILTER_FREIGHT; + filter_items++; + + /* Add item for vehicles not carrying anything, e.g. train engines. */ + this->cargo_filter[filter_items] = CF_NONE; + this->cargo_filter_texts[filter_items] = STR_CARGO_TYPE_FILTER_NONE; + filter_items++; + + /* Collect available cargo types for filtering. */ + for (const auto &cs : _sorted_cargo_specs) { + this->cargo_filter[filter_items] = cs->Index(); + this->cargo_filter_texts[filter_items] = cs->name; + filter_items++; + } + + /* Terminate the filter list. */ + this->cargo_filter_texts[filter_items] = INVALID_STRING_ID; + + this->vehgroups.SetFilterFuncs(_filter_funcs); + this->vehgroups.SetFilterState(this->cargo_filter[this->cargo_filter_criteria] != CF_ANY); +} + +/** + *Filter the engine list against the currently selected cargo filter. + */ +void BaseVehicleListWindow::FilterVehicleList() +{ + this->vehgroups.Filter(this->cargo_filter[this->cargo_filter_criteria]); + if (this->vehicles.size() == 0) { + /* No vehicle passed through the filter, invalidate the previously selected vehicle */ + this->vehicle_sel = INVALID_VEHICLE; + } else if (this->vehicle_sel != INVALID_VEHICLE && std::find(this->vehicles.begin(), this->vehicles.end(), Vehicle::Get(this->vehicle_sel)) == this->vehicles.end()) { // previously selected engine didn't pass the filter, remove selection + this->vehicle_sel = INVALID_VEHICLE; + } +} + /** * Compute the size for the Action dropdown. * @param show_autoreplace If true include the autoreplace item. @@ -248,6 +363,7 @@ Dimension BaseVehicleListWindow::GetActionDropdownSize(bool show_autoreplace, bo void BaseVehicleListWindow::OnInit() { this->order_arrow_width = GetStringBoundingBox(STR_TINY_RIGHT_ARROW).width; + this->SetCargoFilterArray(); } /** @@ -1391,6 +1507,9 @@ static const NWidgetPart _nested_vehicle_list[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_PUSHTXTBTN, COLOUR_GREY, WID_VL_SORT_ORDER), SetMinimalSize(81, 12), SetFill(0, 1), SetDataTip(STR_BUTTON_SORT_BY, STR_TOOLTIP_SORT_ORDER), NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_VL_SORT_BY_PULLDOWN), SetMinimalSize(167, 12), SetFill(0, 1), SetDataTip(0x0, STR_TOOLTIP_SORT_CRITERIA), + NWidget(NWID_SELECTION, INVALID_COLOUR, WID_VL_FILTER_BY_CARGO_SEL), + NWidget(WWT_DROPDOWN, COLOUR_GREY, WID_VL_FILTER_BY_CARGO), SetMinimalSize(167, 12), SetFill(0, 1), SetDataTip(STR_JUST_STRING, STR_TOOLTIP_FILTER_CRITERIA), + EndContainer(), NWidget(WWT_PANEL, COLOUR_GREY), SetMinimalSize(12, 12), SetFill(1, 1), SetResize(1, 0), EndContainer(), EndContainer(), @@ -1662,6 +1781,8 @@ public: { this->CreateNestedTree(); + this->GetWidget(WID_VL_FILTER_BY_CARGO_SEL)->SetDisplayedPlane((this->vli.type == VL_SHARED_ORDERS) ? SZSP_NONE : 0); + this->vscroll = this->GetScrollbar(WID_VL_SCROLLBAR); this->BuildVehicleList(); @@ -1736,6 +1857,10 @@ public: SetDParam(0, STR_VEHICLE_LIST_AVAILABLE_TRAINS + this->vli.vtype); break; + case WID_VL_FILTER_BY_CARGO: + SetDParam(0, this->cargo_filter_texts[this->cargo_filter_criteria]); + break; + case WID_VL_CAPTION: case WID_VL_CAPTION_SHARED_ORDERS: { switch (this->vli.type) { @@ -1819,6 +1944,8 @@ public: /* Set text of sort by dropdown widget. */ this->GetWidget(WID_VL_SORT_BY_PULLDOWN)->widget_data = this->GetVehicleSorterNames()[this->vehgroups.SortType()]; + this->GetWidget(WID_VL_FILTER_BY_CARGO)->widget_data = this->cargo_filter_texts[this->cargo_filter_criteria]; + this->DrawWidgets(); } @@ -1845,6 +1972,10 @@ public: (this->vli.vtype == VEH_TRAIN || this->vli.vtype == VEH_ROAD) ? 0 : (1 << 10)); return; + case WID_VL_FILTER_BY_CARGO: // Cargo filter dropdown + ShowDropDownMenu(this, this->cargo_filter_texts, this->cargo_filter_criteria, WID_VL_FILTER_BY_CARGO, 0, 0); + break; + case WID_VL_LIST: { // Matrix to show vehicles uint id_v = this->vscroll->GetScrolledRowFromWidget(pt.y, this, WID_VL_LIST); if (id_v >= this->vehgroups.size()) return; // click out of list bound @@ -1913,6 +2044,10 @@ public: this->vehgroups.SetSortType(index); break; + case WID_VL_FILTER_BY_CARGO: + this->SetCargoFilterIndex(index); + break; + case WID_VL_MANAGE_VEHICLES_DROPDOWN: assert(this->vehicles.size() != 0); diff --git a/src/vehicle_gui_base.h b/src/vehicle_gui_base.h index d724bc3433..73f2159d39 100644 --- a/src/vehicle_gui_base.h +++ b/src/vehicle_gui_base.h @@ -11,6 +11,7 @@ #define VEHICLE_GUI_BASE_H #include "core/smallvec_type.hpp" +#include "cargo_type.h" #include "date_type.h" #include "economy_type.h" #include "sortlist_type.h" @@ -22,7 +23,7 @@ #include #include -typedef GUIList GUIVehicleList; +typedef GUIList GUIVehicleList; struct GUIVehicleGroup { VehicleList::const_iterator vehicles_begin; ///< Pointer to beginning element of this vehicle group. @@ -65,7 +66,7 @@ struct GUIVehicleGroup { } }; -typedef GUIList GUIVehicleGroupList; +typedef GUIList GUIVehicleGroupList; struct BaseVehicleListWindow : public Window { @@ -76,14 +77,25 @@ struct BaseVehicleListWindow : public Window { GB_END, }; - GroupBy grouping; ///< How we want to group the list. - VehicleList vehicles; ///< List of vehicles. This is the buffer for `vehgroups` to point into; if this is structurally modified, `vehgroups` must be rebuilt. - GUIVehicleGroupList vehgroups; ///< List of (groups of) vehicles. This stores iterators of `vehicles`, and should be rebuilt if `vehicles` is structurally changed. - Listing *sorting; ///< Pointer to the vehicle type related sorting. - byte unitnumber_digits; ///< The number of digits of the highest unit number. + /** Special cargo filter criteria */ + enum CargoFilterSpecialType { + CF_NONE = CT_INVALID, ///< Show only vehicles which do not carry cargo (e.g. train engines) + CF_ANY = CT_NO_REFIT, ///< Show all vehicles independent of carried cargo (i.e. no filtering) + CF_FREIGHT = CT_AUTO_REFIT, ///< Show only vehicles which carry any freight (non-passenger) cargo + }; + + GroupBy grouping; ///< How we want to group the list. + VehicleList vehicles; ///< List of vehicles. This is the buffer for `vehgroups` to point into; if this is structurally modified, `vehgroups` must be rebuilt. + GUIVehicleGroupList vehgroups; ///< List of (groups of) vehicles. This stores iterators of `vehicles`, and should be rebuilt if `vehicles` is structurally changed. + Listing *sorting; ///< Pointer to the vehicle type related sorting. + byte unitnumber_digits; ///< The number of digits of the highest unit number. Scrollbar *vscroll; - VehicleListIdentifier vli; ///< Identifier of the vehicle list we want to currently show. - uint order_arrow_width; ///< Width of the arrow in the small order list. + VehicleListIdentifier vli; ///< Identifier of the vehicle list we want to currently show. + VehicleID vehicle_sel; ///< Selected vehicle + CargoID cargo_filter[NUM_CARGO + 3]; ///< Available cargo filters; CargoID or CF_ANY or CF_FREIGHT or CF_NONE + StringID cargo_filter_texts[NUM_CARGO + 4]; ///< Texts for filter_cargo, terminated by INVALID_STRING_ID + byte cargo_filter_criteria; ///< Selected cargo filter index + uint order_arrow_width; ///< Width of the arrow in the small order list. typedef GUIVehicleGroupList::SortFunction VehicleGroupSortFunction; typedef GUIVehicleList::SortFunction VehicleIndividualSortFunction; @@ -113,6 +125,9 @@ struct BaseVehicleListWindow : public Window { void UpdateVehicleGroupBy(GroupBy group_by); void SortVehicleList(); void BuildVehicleList(); + void SetCargoFilterIndex(byte index); + void SetCargoFilterArray(); + void FilterVehicleList(); Dimension GetActionDropdownSize(bool show_autoreplace, bool show_group); DropDownList BuildActionDropdownList(bool show_autoreplace, bool show_group); diff --git a/src/widgets/group_widget.h b/src/widgets/group_widget.h index 03ac61a48e..e097b5314e 100644 --- a/src/widgets/group_widget.h +++ b/src/widgets/group_widget.h @@ -17,6 +17,7 @@ enum GroupListWidgets { WID_GL_GROUP_BY_DROPDOWN, ///< Group by dropdown list. WID_GL_SORT_BY_ORDER, ///< Sort order. WID_GL_SORT_BY_DROPDOWN, ///< Sort by dropdown list. + WID_GL_FILTER_BY_CARGO, ///< Filter vehicles by cargo type. WID_GL_LIST_VEHICLE, ///< List of the vehicles. WID_GL_LIST_VEHICLE_SCROLLBAR, ///< Scrollbar for the list. WID_GL_AVAILABLE_VEHICLES, ///< Available vehicles. diff --git a/src/widgets/vehicle_widget.h b/src/widgets/vehicle_widget.h index 954e72f70e..375f914e10 100644 --- a/src/widgets/vehicle_widget.h +++ b/src/widgets/vehicle_widget.h @@ -69,6 +69,8 @@ enum VehicleListWidgets { WID_VL_GROUP_BY_PULLDOWN, ///< Group by dropdown list. WID_VL_SORT_ORDER, ///< Sort order. WID_VL_SORT_BY_PULLDOWN, ///< Sort by dropdown list. + WID_VL_FILTER_BY_CARGO, ///< Cargo filter dropdown list. + WID_VL_FILTER_BY_CARGO_SEL, ///< Cargo filter dropdown list panel selector. WID_VL_LIST, ///< List of the vehicles. WID_VL_SCROLLBAR, ///< Scrollbar for the list. WID_VL_HIDE_BUTTONS, ///< Selection to hide the buttons. From e2f661b2817cbbd604f23c93e90e44e66b7f6ec6 Mon Sep 17 00:00:00 2001 From: translators Date: Wed, 9 Nov 2022 18:50:46 +0000 Subject: [PATCH 06/16] Update: Translations from eints spanish: 24 changes by MontyMontana --- src/lang/afrikaans.txt | 3 ++ src/lang/arabic_egypt.txt | 3 ++ src/lang/basque.txt | 3 ++ src/lang/belarusian.txt | 3 ++ src/lang/brazilian_portuguese.txt | 3 ++ src/lang/bulgarian.txt | 3 ++ src/lang/catalan.txt | 3 ++ src/lang/chuvash.txt | 3 ++ src/lang/croatian.txt | 3 ++ src/lang/czech.txt | 3 ++ src/lang/danish.txt | 3 ++ src/lang/dutch.txt | 3 ++ src/lang/english_AU.txt | 3 ++ src/lang/english_US.txt | 3 ++ src/lang/esperanto.txt | 3 ++ src/lang/estonian.txt | 3 ++ src/lang/faroese.txt | 3 ++ src/lang/finnish.txt | 3 ++ src/lang/french.txt | 3 ++ src/lang/frisian.txt | 3 ++ src/lang/gaelic.txt | 3 ++ src/lang/galician.txt | 3 ++ src/lang/german.txt | 3 ++ src/lang/greek.txt | 3 ++ src/lang/hebrew.txt | 3 ++ src/lang/hindi.txt | 3 ++ src/lang/hungarian.txt | 3 ++ src/lang/icelandic.txt | 3 ++ src/lang/ido.txt | 3 ++ src/lang/indonesian.txt | 3 ++ src/lang/irish.txt | 3 ++ src/lang/italian.txt | 3 ++ src/lang/japanese.txt | 3 ++ src/lang/korean.txt | 3 ++ src/lang/latin.txt | 3 ++ src/lang/latvian.txt | 3 ++ src/lang/lithuanian.txt | 3 ++ src/lang/luxembourgish.txt | 3 ++ src/lang/macedonian.txt | 3 ++ src/lang/malay.txt | 3 ++ src/lang/maltese.txt | 3 ++ src/lang/marathi.txt | 3 ++ src/lang/norwegian_bokmal.txt | 3 ++ src/lang/norwegian_nynorsk.txt | 3 ++ src/lang/persian.txt | 3 ++ src/lang/polish.txt | 3 ++ src/lang/portuguese.txt | 3 ++ src/lang/romanian.txt | 3 ++ src/lang/russian.txt | 3 ++ src/lang/serbian.txt | 3 ++ src/lang/simplified_chinese.txt | 3 ++ src/lang/slovak.txt | 3 ++ src/lang/slovenian.txt | 3 ++ src/lang/spanish.txt | 47 ++++++++++++++++++------------- src/lang/spanish_MX.txt | 3 ++ src/lang/swedish.txt | 3 ++ src/lang/tamil.txt | 3 ++ src/lang/thai.txt | 3 ++ src/lang/traditional_chinese.txt | 3 ++ src/lang/turkish.txt | 3 ++ src/lang/ukrainian.txt | 3 ++ src/lang/urdu.txt | 3 ++ src/lang/vietnamese.txt | 3 ++ src/lang/welsh.txt | 3 ++ 64 files changed, 216 insertions(+), 20 deletions(-) diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 192daeafb7..7140d7adbf 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3607,6 +3608,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. Tr STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Afstand: {GOLD}{COMMA} teëls STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Vliegtuig tipe: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trein kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Pad voertuig kieslys - klik op voertuig vir inligting. CTRL+kliek vir wegsteek van die voertuig tipe diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index c13422ad45..6b1b85e531 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -199,6 +199,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ح STR_UNITS_POWER_METRIC :{COMMA}{NBSP}حصان STR_UNITS_POWER_SI :{COMMA}{NBSP}ك واط + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP} طن STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}طن STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}كجم @@ -3298,6 +3299,8 @@ STR_PURCHASE_INFO_ALL_BUT :الكل الا STR_PURCHASE_INFO_MAX_TE :{BLACK}تأثير الجذب القصى: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}نوع الطائرة:{GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}قائمة اختيار القطارات - اضغط على العربة لعرض معلوماتها STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}قائمة اختيار العربات - اضغط على العربة لاظهار معلوماتها diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 2cebdb853f..8985cfafb7 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3386,6 +3387,8 @@ STR_PURCHASE_INFO_ALL_BUT :Guztia {CARGO_L STR_PURCHASE_INFO_MAX_TE :{BLACK}Gehienezko trakzio indarra: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Irismena: {GOLD}{COMMA} lauki +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trenak aukeratzeko zerrenda - Klik xehetasunak ikusteko. Ctrl+Klik ibilgailu motaren ezkutapenaren artean aukeratzeko STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Errepide ibilbideak aukeratzeko zerrenda - Klik xehetasunak ikusteko diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index 14e4d062bb..9fdd7d15f5 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -511,6 +511,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг @@ -3953,6 +3954,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Далёкасьць: {GOLD}{COMMA} клет{P ка кi ак} STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Тып паветр. судна: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Сьпіс лакаматываў і вагонаў - пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа ТС. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Сьпіс аўтатранспарту - пстрыкніце для атрыманьня інфармацыі. Ctrl+пстрычка схавае/пакажа выбраны аўтамабіль. diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 9c2adf6248..0caa3a5507 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}T STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3870,6 +3871,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Tração STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} quadrados STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de trens - clique num trem para informações. Cltr+Clique para alterar a visibilidade do tipo de trem STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de automóveis - clique num automóvel para informações. Cltr+Clique para alterar a visibilidade do tipo de automóvel diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index a4130eb900..bc96af6f9b 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA} к.с. STR_UNITS_POWER_METRIC :{COMMA} к.с. STR_UNITS_POWER_SI :{COMMA} kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}т STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} т. STR_UNITS_WEIGHT_SHORT_SI :{COMMA} кг. @@ -3450,6 +3451,8 @@ STR_PURCHASE_INFO_ALL_BUT :Всичко о STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс. теглеща сила: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Обхват: {GOLD}{COMMA} полета +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Списък с влакове - натисни върху влак за информация STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Списък с избор на МПС-та - натисни върху МПС за информация diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index a97b604207..f526c4e592 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}cv STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Esforç STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Abast: {GOLD}{COMMA} cel·les STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipus d'aeronau: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Llista de selecció de trens i vagons. Clica al vehicle per més informació. Ctrl+Click per a alternar entre mostrar/ocultar el vehicle ferroviari STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Llista de models de vehicles de carretera. Clica sobre el model per més informació. Amb Ctrl+Clic, commuta entre mostrar o ocultar el model. diff --git a/src/lang/chuvash.txt b/src/lang/chuvash.txt index 6ef2181f73..b546148ec2 100644 --- a/src/lang/chuvash.txt +++ b/src/lang/chuvash.txt @@ -163,6 +163,7 @@ STR_UNITS_POWER_SI :{COMMA}кВт + # Common window strings @@ -1378,6 +1379,8 @@ STR_INDUSTRY_DIRECTORY_NONE :{ORANGE}- Ҫу ###length VEHICLE_TYPES +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index 9e281d9206..b687aed086 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -295,6 +295,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}KS STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KS STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3786,6 +3787,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK} Najveć STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} polja STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Vrsta zrakoplova: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Popis vlakova za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste vozila STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Popis cestovnih vozila za odabir. Klikni na vozilo za informacije. Ctrl+klik za uključivanje ili isključivanje prikaza vrste cestovnog vozila diff --git a/src/lang/czech.txt b/src/lang/czech.txt index d32f2a64f6..a34d4d858e 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -275,6 +275,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3962,6 +3963,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. ta STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} polí STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Typ letadla: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Seznam vlaků - pro informace klikni na vlak. Ctrl+kliknutí způsobí přepínání skrytí typů lokomotiv a vagónů. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Seznam silničních vozidel - klikni na vozidlo pro informace. Ctrl+kliknutí způsobí přepínání skrytí typu silničního vozidla. diff --git a/src/lang/danish.txt b/src/lang/danish.txt index e4553d8423..919f1a9c0d 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hk STR_UNITS_POWER_METRIC :{COMMA}hk STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3850,6 +3851,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. tr STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rækkevidde: {GOLD}{COMMA} felter STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Fly type: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Togvalgsliste - klik på et køretøj for mere information STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liste over køretøjstyper - klik på køretøj for information diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index f4f8650bce..d3a47b0a99 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tre STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Bereik: {GOLD}{COMMA} tegels STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Vliegtuigtype: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Spoorvoertuigkeuzelijst. Klik op een spoorvoertuig voor informatie. Ctrl+klik voor spoorvoertuigtype weergeven-verbergen. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Wegvoertuigkeuzelijst. Klik op wegvoertuig voor informatie. Ctrl+klik voor voertuigtype weergeven-verbergen. diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index cbe0ab07d4..8d3fe86eb7 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Tra STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: {GOLD}{COMMA} tiles STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Aircraft type: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list - click on vehicle for information STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list - click on vehicle for information diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 9ae489a81e..58b06c7436 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Tra STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: {GOLD}{COMMA} tiles STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Aircraft type: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list. Click on vehicle for information. Ctrl+Click to toggle hiding of the vehicle type STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Road vehicle selection list. Click on vehicle for information. Ctrl+Click to toggle hiding of the vehicle type diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index fa9b4fea94..03b992f27e 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ĉ STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ĉp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -2937,6 +2938,8 @@ STR_PURCHASE_INFO_ALL_TYPES :Ĉiaj ŝarĝoj STR_PURCHASE_INFO_ALL_BUT :Ĉio krom {CARGO_LIST} STR_PURCHASE_INFO_MAX_TE :{BLACK}Maksimuma Tiro: {GOLD}{FORCE} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Trajnveturila elektolisto - alklaku veturilon por informoj STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Stratveturilelektan liston - alklaku veturilon por informoj diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index 2f99ce115b..7e7beb7071 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -257,6 +257,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hj STR_UNITS_POWER_METRIC :{COMMA}hj STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3855,6 +3856,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Suurim v STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Tegevusradius: {GOLD}{COMMA} ruutu STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Õhusõiduki liik: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Nimekiri raudteesõidukitest - andmete saamiseks klõpsa raudteesõidukile STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Mootorsõidukite nimekiri - andmete saamiseks klõpsa sõidukile diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index f2f3bd6722..6bfcb84690 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3120,6 +3121,8 @@ STR_PURCHASE_INFO_ALL_BUT :Alt uttan {CARG STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. Dráttar ómak: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Vídd: {GOLD}{COMMA} puntar +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Tok úrvals yvirlit - trýst á eitt flutningstól fyri kunning STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Akfar úrvals yvirlit - trýst á eitt akfar fyri kunning diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index 0784fd4652..d2ea6f98c3 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hv STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3869,6 +3870,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Suurin v STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Toimintasäde: {GOLD}{COMMA} ruutua STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Ilma-alustyyppi: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Raideliikennevälineiden valintaluettelo. Napsauta kulkuneuvoa saadaksesi lisää tietoa. Ctrl+napsautus näyttää tai piilottaa kulkuneuvon tyypin. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Ajoneuvojen valintaluettelo. Napsauta ajoneuvoa saadaksesi lisää tietoja. Ctrl+napsautus näyttää tai piilottaa ajoneuvon tyypin. diff --git a/src/lang/french.txt b/src/lang/french.txt index e3a5602754..47d2797092 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ch STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{G=f}{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{G=f}{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3875,6 +3876,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Effort d STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rayon d'action{NBSP}: {GOLD}{COMMA}{NBSP}cases STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Type d'aéronef{NBSP}: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Choix du véhicule. Cliquer sur un véhicule pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de véhicule STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Choix du véhicule routier. Cliquer sur un véhicule pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de véhicule diff --git a/src/lang/frisian.txt b/src/lang/frisian.txt index 43c5f5ccfe..18f2e6cdaa 100644 --- a/src/lang/frisian.txt +++ b/src/lang/frisian.txt @@ -197,6 +197,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3348,6 +3349,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. L STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Berik: {GOLD}{COMMA} flakken STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Fleantúch type: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index 0274ccc40f..0be8a2fd72 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -385,6 +385,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3765,6 +3766,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Spàirn STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Astar: {GOLD}{COMMA} {P leac leac leacan leac} STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Seòrsa a' charbaid-adhair: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liosta airson carbadan-rèile a thaghadh. Briog air carbad airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa a’ charbaid fhalach gus nach tèid STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liosta airson carbadan-rathaid a thaghadh. Briog air carbad airson fiosrachaidh. Ctrl+briog gus toglachadh an tèid seòrsa a’ charbaid fhalach gus nach tèid diff --git a/src/lang/galician.txt b/src/lang/galician.txt index 4025800042..3fc46fb03d 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}cv STR_UNITS_POWER_METRIC :{COMMA}cv STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3870,6 +3871,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Esforzo STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Autonomía: {GOLD}{COMMA} cadros STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección de vehículos ferroviarios - pincha nun vehículo para obter información STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de selección de vehículos de estrada - pincha nun vehículo para obter información diff --git a/src/lang/german.txt b/src/lang/german.txt index 407dae78aa..0336b05827 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}PS STR_UNITS_POWER_METRIC :{COMMA}{NBSP}PS STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3875,6 +3876,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Zug STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Reichweite: {GOLD}{COMMA} Felder STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Flugzeugtyp: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Schienenfahrzeugsliste. Einzelheiten durch Anklicken des Fahrzeuges. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Fahrzeugtyps STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Straßenfahrzeugsliste. Für Einzelheiten auf ein Fahrzeug klicken. Strg+Klick schaltet um zwischen Verstecken und Zeigen des Fahrzeugtyps diff --git a/src/lang/greek.txt b/src/lang/greek.txt index 2ab316c2b4..fd47b26747 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -261,6 +261,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}τ. STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}τ. STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3957,6 +3958,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Μέγ. STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Εύρος: {GOLD}{COMMA} τετραγωνίδια STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Τύπος αεροσκάφους: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Λίστα επιλογής βαγονιού τρένου. Πατήστε σε ένα βαγόνι για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου βαγονιού STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Λίστα επιλογής οχήματος δρόμου. Πατήστε σε ένα όχημα για πληροφορίες. Ctrl+Click για εμφάνιση/απόκρυψη του τύπου οχήματος diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index 84ae492ec4..998adc2b97 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -211,6 +211,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}כ"ס STR_UNITS_POWER_METRIC :{COMMA}כ"ס STR_UNITS_POWER_SI :{COMMA}קילו וואט + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ט' STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}ט' STR_UNITS_WEIGHT_SHORT_SI :{COMMA}ק"ג @@ -3543,6 +3544,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}כוח STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}טווח: {GOLD}{COMMA} משבצות STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}סוג כלי טיס: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK} בחירת קרונות - לחץ על קרון לקבלת מידע STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}רשימת כלי הרכב - בחר כלי רכב למידע diff --git a/src/lang/hindi.txt b/src/lang/hindi.txt index 06d543ebdb..199f0cac27 100644 --- a/src/lang/hindi.txt +++ b/src/lang/hindi.txt @@ -72,6 +72,7 @@ STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp + # Common window strings @@ -1034,6 +1035,8 @@ STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :नई ट् STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}मूल्य : {GOLD}{CURRENCY_LONG}{BLACK} भार : {GOLD}{WEIGHT_SHORT} STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}भार : {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index e52f0eab1d..1aa715963a 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -263,6 +263,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}LE STR_UNITS_POWER_METRIC :{COMMA}{NBSP}LE STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3938,6 +3939,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maximál STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Hatótávolság: {GOLD}{COMMA} mező STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Típus: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Vasúti jármű kiválasztása - kattints egy járműre az adataihoz. Ctrl+kattintással a járműtípus elrejthető/felfedhető STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Közúti jármű kiválasztása - kattints egy járműre az adataihoz. Ctrl+kattintással a járműtípus elrejthető/felfedhető diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index 206f8d5f7d..7a8e1975f1 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hö. STR_UNITS_POWER_METRIC :{COMMA}hö. STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}tonn STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3279,6 +3280,8 @@ STR_PURCHASE_INFO_ALL_BUT :Allt nema {CARG STR_PURCHASE_INFO_MAX_TE :{BLACK}Hámarks togkrafur: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Drægni: {GOLD}{COMMA} reitir +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lestarlisti - smelltu á farartæki fyrir meiri upplýsingar STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Bifreiðalisti - ýttu á bifreið fyrir nánari upplýsingar diff --git a/src/lang/ido.txt b/src/lang/ido.txt index 36a9aade92..053266f153 100644 --- a/src/lang/ido.txt +++ b/src/lang/ido.txt @@ -196,6 +196,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}kp STR_UNITS_POWER_METRIC :{COMMA}kp STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -1226,6 +1227,8 @@ STR_GROUP_DEFAULT_AIRCRAFTS :Negrupigita aer ###length VEHICLE_TYPES +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index 1795bc4e3c..a7886a0414 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}dk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}dk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3869,6 +3870,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Traksi M STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Jangkauan: {GOLD}{COMMA} kotak STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Jenis pesawat: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Daftar pilihan kereta - klik pada kereta untuk menampilkan informasi STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Daftar pilihan kendaraan - klik pada kendaraan untuk menampilkan informasi diff --git a/src/lang/irish.txt b/src/lang/irish.txt index fa541d522c..ed7391fcf0 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3840,6 +3841,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Iarracht STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Raon: {GOLD}{COMMA} tíl STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Cineál aerárthaigh: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liosta chun feithicil traenach a roghnú - cliceáil ar fheithicil le faisnéis a fháil STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liosta chun feithicil bóthair a roghnú - cliceáil ar fheithicil le faisnéis a fháil diff --git a/src/lang/italian.txt b/src/lang/italian.txt index d0eab7c581..60b7deb44c 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -202,6 +202,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3911,6 +3912,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Sforzo d STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Autonomia: {GOLD}{COMMA} casell{P a e} STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo di aeromobile: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Elenco di selezione dei veicoli ferroviari - fare clic su un veicolo per informazioni. CTRL+clic mostra/nasconde il tipo di veicolo STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Elenco selezione automezzi - fare clic su un veicolo per informazioni. CTRL+clic mostra/nasconde il tipo di automezzo diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index ff627e6532..082c5484d2 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}英馬 STR_UNITS_POWER_METRIC :{COMMA}仏馬力 STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t. STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3850,6 +3851,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}最大 STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}航続距離: {GOLD}{COMMA} タイル STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}航空機の機種: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車リスト - 個々の情報を見るには列車をクリックします。Ctrl+クリックでその列車種の表示/非表示を切り替えます STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車両リスト - 個々の情報を見るには車両をクリックします。Ctrl+クリックでその車両種の表示/非表示を切り替えます diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 65cd65f3a7..9b878df623 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}마력 STR_UNITS_POWER_METRIC :{COMMA}마력 STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3875,6 +3876,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}최고 STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}항속거리: {GOLD}{COMMA}칸 STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}항공기 종류: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}열차 차량 구매 목록입니다. 차량의 정보를 보려면 클릭하세요. CTRL+클릭하면 해당 차량을 숨김/표시 처리할 수 있습니다 STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}차량 구매 목록입니다. 차량의 정보를 보려면 클릭하세요. CTRL+클릭하면 해당 차량을 숨김/표시 처리할 수 있습니다 diff --git a/src/lang/latin.txt b/src/lang/latin.txt index 37d0604167..5a5f636d88 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -387,6 +387,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3752,6 +3753,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Vis Trac STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Max. distantia volatus: {GOLD}{COMMA} tegulas STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Typus aeroplani: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Index electionis vehiculorum ferriviariorum. Preme in vehiculum ut plura indicia monstrentur. Ctrl+Preme ut typus vehiculi celetur STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Index electionis vehiculorum viariorum. Preme in vehiculum ut plura indicia monstrentur. Ctrl+Preme ut typus vehiculi celetur diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index 083d1e79ad..7d54e4914a 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -202,6 +202,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ZS STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ZS STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3880,6 +3881,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maksimā STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Apgabas: {GOLD}{COMMA} lauciņi STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Lidaparāta veids: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Vilciena vagonu atlasīšanas saraksts - klikšķināt uz transportlīdzekļa, lai iegūtu informāciju STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Autotransporta atlasīšanas saraksts - klikšķināt uz transportlīdzekļa, lai iegūtu informāciju diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index 32fa3552ec..f36a1a0729 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -395,6 +395,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}AG STR_UNITS_POWER_METRIC :{COMMA}{NBSP}AG STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -4005,6 +4006,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Didž. t STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Nuotolis: {GOLD}{COMMA} langeliai STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipas: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lokomotyvų ir vagonų sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, lokomotyvas ar vagonas bus slepiamas/rodomas sąraše STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Automobilių sąrašas. Spragtelėjus bus parodyta platesnė informacija. Spragtelėjus laikant nuspaustą Ctrl klavišą, automobilis bus slepiamas/rodomas sąraše diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index 34ea94e7c6..05ad859dfa 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bh STR_UNITS_POWER_METRIC :{COMMA}{NBSP}ps STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3846,6 +3847,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. Zé STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Distanz: {GOLD}{COMMA} Felder STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Fliger Typ: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Zuchlëscht - klick op en Zuch fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Stroossegefierlëscht - klick op en Gefier fir Informatiounen. Ctrl+Klick fir tëscht dem Verstoppen hin an hier ze sprangen diff --git a/src/lang/macedonian.txt b/src/lang/macedonian.txt index 25b2e5032c..1d656d80fd 100644 --- a/src/lang/macedonian.txt +++ b/src/lang/macedonian.txt @@ -197,6 +197,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}кс STR_UNITS_POWER_METRIC :{COMMA}кс STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -1692,6 +1693,8 @@ STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Нов авио STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Опсег: {GOLD}{COMMA} плочки +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_AIRCRAFT_LIST_TOOLTIP :{BLACK}Листа за селекција од авиони - кликни на авионот за информации diff --git a/src/lang/malay.txt b/src/lang/malay.txt index 42b6ae8a9f..365f0b4c30 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -197,6 +197,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}kk STR_UNITS_POWER_METRIC :{COMMA}kk STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3187,6 +3188,8 @@ STR_PURCHASE_INFO_ALL_BUT :Semua kecuali { STR_PURCHASE_INFO_MAX_TE :{BLACK}Usaha Penarikan Maks.: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Jarak: {GOLD}{COMMA} petak +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Senarai pilihan keretapi - Klik atas kenderaan untuk maklumat STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Senarai pilihan kenderaan jalanraya - klik atas kenderaan untuk maklumat diff --git a/src/lang/maltese.txt b/src/lang/maltese.txt index d944bacfa6..1a13d22f65 100644 --- a/src/lang/maltese.txt +++ b/src/lang/maltese.txt @@ -150,6 +150,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -1100,6 +1101,8 @@ STR_FINANCES_POSITIVE_INCOME :{BLACK}+{CURREN ###length VEHICLE_TYPES +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/marathi.txt b/src/lang/marathi.txt index aaaee7d916..9da5f18691 100644 --- a/src/lang/marathi.txt +++ b/src/lang/marathi.txt @@ -196,6 +196,7 @@ STR_UNITS_VELOCITY_SI :{COMMA} m/s STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ट STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}ट STR_UNITS_WEIGHT_SHORT_SI :{COMMA} किलो @@ -1535,6 +1536,8 @@ STR_PURCHASE_INFO_COST :{BLACK}कि STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}वजन: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT}) STR_PURCHASE_INFO_COST_SPEED :{BLACK}किंमत: {GOLD}{CURRENCY_LONG}{BLACK} गती: {GOLD}{VELOCITY} +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index 1fcb335ffa..a1009fd088 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -202,6 +202,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3854,6 +3855,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks tre STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rekkevidde: {GOLD}{COMMA} ruter STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Flytype: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Liste over tog/vogner - klikk på tog/vogn for mer informasjon. Ctrl+klikk for å skjule/vise denne typen STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Liste over kjøretøy - klikk på kjøretøy for mer informasjon. Ctrl+klikk for å skjule/vise kjøretøytypen diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index dcaf0d5aa4..e89b71204e 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -199,6 +199,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA} hk STR_UNITS_POWER_METRIC :{COMMA} hk STR_UNITS_POWER_SI :{COMMA} kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA} t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg @@ -3399,6 +3400,8 @@ STR_PURCHASE_INFO_ALL_BUT :Alt utanom {CAR STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. trekkraft: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rekkevidde: {GOLD}{COMMA} ruter +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Tog-/vognliste - klikk på tog/vogn for meir informasjon STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Køyretøyliste - klikk på køyretøy for meir informasjon diff --git a/src/lang/persian.txt b/src/lang/persian.txt index 897dcc6cc9..ec33f2aa5f 100644 --- a/src/lang/persian.txt +++ b/src/lang/persian.txt @@ -197,6 +197,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}ا STR_UNITS_POWER_METRIC :{COMMA}{NBSP}اسب بخار STR_UNITS_POWER_SI :{COMMA}{NBSP}کیلووات + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}تن STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}کیلوگرم @@ -3087,6 +3088,8 @@ STR_PURCHASE_INFO_SPEED_CANAL :{BLACK}سرعت STR_PURCHASE_INFO_REFITTABLE :(قابل تعمیر) STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}برد: {GOLD}{COMMA} قطعه +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}لیست انتخاب قطار - برای اطلاعات بیشتر روی وسیله کلیک کنید. برای مخفی یا پدیدار کردن انواع قطار کنترل+کلیک کنید STR_BUY_VEHICLE_SHIP_LIST_TOOLTIP :{BLACK}لیست انتخاب کشتی - برای اطلاعات بیشتر روی کشتی کلیک کنید. برای مخفی یا دوباره پدیدار کردن نوع کشتی ها، کنترل+کلیک کنید diff --git a/src/lang/polish.txt b/src/lang/polish.txt index 031b425e57..af95dc1545 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -579,6 +579,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}KM STR_UNITS_POWER_METRIC :{COMMA}{NBSP}KM STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -4254,6 +4255,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maks. si STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Zasięg: {GOLD}{COMMA} pól STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Typ samolotu: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista wyboru pociągów - kliknij na pojazd, aby uzyskać informacje. Ctrl+klik przełącza ukrywanie typu pojazdu STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista wyboru pojazdów drogowych - kliknij na pojazd, aby uzyskać więcej informacji. Ctrl+klik przełącza ukrywanie typu pojazdu diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 7a4fa9e3ec..032a20973c 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}cv STR_UNITS_POWER_METRIC :{COMMA}cv STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3875,6 +3876,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Máx. Fo STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} quadrados STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de veículos ferroviários - clique num veículo para informações STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de veículos rodoviários - clique num veículo para informações diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index 2d6364d1d8..f22592c5e4 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}cp STR_UNITS_POWER_METRIC :{COMMA}cp STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3869,6 +3870,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Efort tr STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rază acțiune: {GOLD}{COMMA} pătrățele STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tip de aeronavă: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selectie a componentelor trenului - clic pe vehicule pt. informatii STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Listă selecţie vehicule rutiere - apasă pe vehicul pentru informaţii diff --git a/src/lang/russian.txt b/src/lang/russian.txt index 708fe8408c..e0b9093c5c 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -326,6 +326,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}л STR_UNITS_POWER_METRIC :{COMMA}{NBSP}лс STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг @@ -4049,6 +4050,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальность: {GOLD}{COMMA} клет{P ка ки ок} STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Тип возд. судна: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список железнодорожного транспорта - щёлкните для получения информации. Ctrl+щелчок скроет/покажет ТС. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автотранспорта - щёлкните для получения информации. Ctrl+щелчок скроет/покажет выбранный автомобиль. diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 865d1cc5a0..69ffe665bd 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -388,6 +388,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}ks STR_UNITS_POWER_METRIC :{COMMA}ks STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -4041,6 +4042,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Najveća STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} pločica STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK} Tip aviona: {GOLD} {STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Spisak probranih šinskih vozila - kliknite na vozilo za više podataka STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Spisak probranih drumskih vozila - kliknite na vozilo za više podataka diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 3c07b7264e..1b851c34ea 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP} STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹马力 STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}英吨 STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}吨 STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}千克 @@ -3870,6 +3871,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}最大 STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}航行距离: {GOLD}{COMMA} 格 STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}飞机类型: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列车车辆选择列表。点击车辆查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏车辆的种类 STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}路面车辆选择列表。点击车辆查看详细信息,或者按住 Ctrl 键再点击以切换是否隐藏车辆的种类 diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index ca9ca1ada6..834445bdc8 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -264,6 +264,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}hp STR_UNITS_POWER_METRIC :{COMMA}hp STR_UNITS_POWER_SI :{COMMA}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}kg @@ -3942,6 +3943,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tra STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dolet: {GOLD}{COMMA} políčok STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Typ lietadla: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Výber vlakov. Pre získanie informácií klikni na vlak. CTRL+klik prepne skrytie typu vlaku. STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Výber cestných vozidiel. Pre získanie informácií klikni na vozidlo. CTRL+klik prepne skrytie typu vozidla. diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index 36d33d3091..9f599d9e3d 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -350,6 +350,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}KM STR_UNITS_POWER_METRIC :{COMMA}KM STR_UNITS_POWER_SI :{COMMA} kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} t STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg @@ -3653,6 +3654,8 @@ STR_PURCHASE_INFO_ALL_BUT :Vse, razen {CAR STR_PURCHASE_INFO_MAX_TE :{BLACK}Največja vlečna moč: {GOLD}{FORCE} STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Domet: {GOLD}{COMMA} polj +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Seznam železniških vozil - klikni na vozilo za informacije STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Seznam cestnih vozil - klikni na vozilo za informacije diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index 5279aec895..fb4297ee5e 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -228,7 +229,7 @@ STR_UNITS_HEIGHT_SI :{COMMA}{NBSP}m # Common window strings STR_LIST_FILTER_TITLE :{BLACK}Patrón de filtrado: STR_LIST_FILTER_OSKTITLE :{BLACK}Escribe un patrón de filtrado -STR_LIST_FILTER_TOOLTIP :{BLACK}Introduzca una palabra clave para filtrar la lista +STR_LIST_FILTER_TOOLTIP :{BLACK}Introduzca una o varias palabras clave para filtrar la lista STR_TOOLTIP_GROUP_ORDER :{BLACK}Selecciona la orden de agrupamiento STR_TOOLTIP_SORT_ORDER :{BLACK}Selecciona el orden de clasificación (descendiente/ascendiente) @@ -379,7 +380,7 @@ STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Construc STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Construcción de tranvía STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Plantar árboles. Mayús permite mostrar una estimación del precio STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Colocar letrero -STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Colocar objeto. Mayús permite mostrar una estimación del precio +STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Colocar objeto. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio # Scenario editor file menu ###length 7 @@ -2470,13 +2471,13 @@ STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :esperando actua STR_NETWORK_MESSAGE_CLIENT_LEAVING :abandonando STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} se ha unido a la partida -STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} se ha unido a la partida (Cliente #{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} se ha unido a la empresa #{2:NUM} +STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {0:STRING} se ha unido a la partida (Cliente #{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {0:STRING} se ha unido a la empresa #{2:NUM} STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se ha unido como espectador -STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {STRING} ha creado una empresa nueva (#{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {STRING} ha abandonado el juego ({2:STRING}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_NEW :*** {0:STRING} ha creado una empresa nueva (#{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {0: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} ha dado {2:CURRENCY_LONG} a {1:STRING} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {0:STRING} ha transferido {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}El servidor está reiniciando...{}Espera por favor... STR_NETWORK_MESSAGE_KICKED :*** {STRING} ha sido expulsado. Razón: ({STRING}) @@ -2591,6 +2592,7 @@ STR_LINKGRAPH_LEGEND_SATURATED :{TINY_FONT}{BLA STR_LINKGRAPH_LEGEND_OVERLOADED :{TINY_FONT}{BLACK}sobrecargado # Linkgraph tooltip +STR_LINKGRAPH_STATS_TOOLTIP_TIME_EXTENSION :{}Tiempo medio de viaje: {NUM}{NBSP}día{P "" s} # Base for station construction window(s) STR_STATION_BUILD_COVERAGE_AREA_TITLE :{BLACK}Mostrar área de cobertura @@ -2600,6 +2602,7 @@ STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}Oculta e STR_STATION_BUILD_COVERAGE_AREA_ON_TOOLTIP :{BLACK}Muestra área de cobertura del lugar propuesto STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Acepta: {GOLD}{CARGO_LIST} STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Suministra: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_INFRASTRUCTURE_COST :{BLACK}Coste de mantenimiento: {GOLD}{CURRENCY_SHORT}/año # Join station window STR_JOIN_STATION_CAPTION :{WHITE}Unir estación @@ -2787,11 +2790,11 @@ STR_LANDSCAPING_TOOLBAR :{WHITE}Terreno STR_LANDSCAPING_TOOLTIP_LOWER_A_CORNER_OF_LAND :{BLACK}Baja una esquina del terreno. Arrastrando se reduce la esquina seleccionada y se nivela el resto del terreno seleccionado a dicha altura. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio STR_LANDSCAPING_TOOLTIP_RAISE_A_CORNER_OF_LAND :{BLACK}Sube una esquina del terreno. Arrastrando se eleva la esquina seleccionada y se nivela el resto del terreno seleccionado a dicha altura. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio STR_LANDSCAPING_LEVEL_LAND_TOOLTIP :{BLACK}Nivela un área de terreno a la altura de la primera esquina seleccionada. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio -STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Compra el terreno para futuros usos. Mayús permite mostrar una estimación del precio +STR_LANDSCAPING_TOOLTIP_PURCHASE_LAND :{BLACK}Compra el terreno para futuros usos. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio # Object construction window STR_OBJECT_BUILD_CAPTION :{WHITE}Selección de Objeto -STR_OBJECT_BUILD_TOOLTIP :{BLACK}Selecciona el objeto a construir. Mayús permite mostrar una estimación del precio +STR_OBJECT_BUILD_TOOLTIP :{BLACK}Selecciona el objeto a construir. Ctrl permite seleccionar un área diagonalmente. Mayús permite mostrar una estimación del precio STR_OBJECT_BUILD_CLASS_TOOLTIP :{BLACK}Selecciona el tipo de objeto a construir STR_OBJECT_BUILD_PREVIEW_TOOLTIP :{BLACK}Vista previa del objeto STR_OBJECT_BUILD_SIZE :{BLACK}Tamaño: {GOLD}{NUM} x {NUM} casillas @@ -3320,15 +3323,15 @@ STR_NEWGRF_ERROR_MSG_FATAL :{RED}Error Fata STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ha ocurrido un error fatal de NewGRF:{}{STRING} STR_NEWGRF_ERROR_POPUP :{WHITE}Ha ocurrido un error de NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionará con la con la versión de TTDPatch informada por OpenTTD -STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} es para la versión {STRING} de TTD -STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está diseñado para ser usado con {STRING} -STR_NEWGRF_ERROR_INVALID_PARAMETER :Parámetro incorrecto para {1:STRING}: párametro {STRING} ({NUM}) -STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} debe ser cargado antes de {STRING} -STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} debe ser cargado después de {STRING} -STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} necesita la versión {STRING} ó superior de OpenTTD +STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} es para la versión {2:STRING} of TTD +STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está diseñado para ser usado con {2:STRING} +STR_NEWGRF_ERROR_INVALID_PARAMETER :Parámetro incorrecto para {1:STRING}: párametro {2:STRING} ({3:NUM}) +STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} debe cargarse antes de {2:STRING} +STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} debe cargarse después de {2:STRING} +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} requiere la versión {2:STRING} ó superior de OpenTTD STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :el archivo GRF ha sido diseñado para ser traducido STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Se han cargado demasiados NewGRF -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Cargar {1:STRING} como NewGRF estático con {STRING} puede causar desincronizaciones +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Cargar {1:STRING} como NewGRF estático con {2:STRING} puede causar desincronizaciones STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Sprite inesperado (sprite {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Propiedad de Acción 0 desconocida {4:HEX} (sprite {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Intento de usar una ID inválida (sprite {3:NUM}) @@ -3641,6 +3644,7 @@ STR_FINANCES_SECTION_LOAN_INTEREST :{GOLD}Intereses STR_FINANCES_SECTION_OTHER :{GOLD}Otros STR_FINANCES_NEGATIVE_INCOME :-{CURRENCY_LONG} +STR_FINANCES_ZERO_INCOME :{CURRENCY_LONG} STR_FINANCES_POSITIVE_INCOME :+{CURRENCY_LONG} STR_FINANCES_NET_PROFIT :{WHITE}Beneficio neto STR_FINANCES_BANK_BALANCE_TITLE :{WHITE}Saldo en Banco @@ -3749,7 +3753,7 @@ STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Produce: STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING} STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Necesita: -STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING} +STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{0:STRING}{BLACK}{3:STRING} STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} esperando{STRING} STR_CONFIG_GAME_PRODUCTION :{WHITE}Cambiar producción (múltiplos de 8, máximo 2040) @@ -3870,6 +3874,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}F.T. má STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} casillas STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección de los vehículos de ferrocarril. Clica en el vehículo para más información. Pulsa Ctrl+clic para mostrar/ocultar el tipo del vehículo STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de selección de vehículos de carretera. Clica en el vehículo para más información. Pulsa Ctrl+clic para mostrar/ocultar el tipo del vehículo @@ -4038,7 +4044,7 @@ STR_ENGINE_PREVIEW_AIRCRAFT :{G=f}aeronave STR_ENGINE_PREVIEW_SHIP :{G=m}barco STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Precio: {CURRENCY_LONG} Peso: {WEIGHT_SHORT}{}Velocidad: {VELOCITY} Potencia: {POWER}{}Coste Mantenimiento: {CURRENCY_LONG}/año{}Capacidad: {CARGO_LONG} -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Precio: {CURRENCY_LONG} Peso: {WEIGHT_SHORT}{}Velocidad: {VELOCITY} Potencia: {POWER} F.T. Máxima: {6:FORCE}{}Coste Mantenimiento: {4:CURRENCY_LONG}/año{}Capacidad: {5:CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Precio: {0:CURRENCY_LONG} Peso: {1:WEIGHT_SHORT}{}Velocidad: {2:VELOCITY} Potencia: {3:POWER} F.T. Máxima: {6:FORCE}{}Coste Mantenimiento: {4:CURRENCY_LONG}/año{}Capacidad: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAP_RUNCOST :{BLACK}Precio: {CURRENCY_LONG} Velocidad Máx.: {VELOCITY}{}Capacidad: {CARGO_LONG}{}Coste Mantenimiento: {CURRENCY_LONG}/año STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_CAP_RUNCOST :{BLACK}Precio: {CURRENCY_LONG} Velocidad Máx.: {VELOCITY}{}Tipo de aeronave: {STRING}{}Capacidad: {CARGO_LONG}, {CARGO_LONG}{}Coste Mantenimiento: {CURRENCY_LONG}/año STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_RUNCOST :{BLACK}Precio: {CURRENCY_LONG} Velocidad Máx.: {VELOCITY}{}Tipo de aeronave: {STRING}{}Capacidad: {CARGO_LONG}{}Coste Mantenimiento: {CURRENCY_LONG}/año @@ -4201,8 +4207,8 @@ STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Fiabilid STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Construido: {LTBLUE}{NUM}{BLACK} Valor: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Capacidad: {LTBLUE}Ninguna{STRING} -STR_VEHICLE_INFO_CAPACITY :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}{3:STRING} -STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}{3:STRING} (x{4:NUM}) +STR_VEHICLE_INFO_CAPACITY :{BLACK}Capacidad: {LTBLUE}{0:CARGO_LONG}{3:STRING} +STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Capacidad: {LTBLUE}{0:CARGO_LONG}{3:STRING} (x{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Créditos de Transferencia: {LTBLUE}{CURRENCY_LONG} @@ -4925,6 +4931,7 @@ STR_ERROR_OBJECT_IN_THE_WAY :{WHITE}Objeto e STR_ERROR_COMPANY_HEADQUARTERS_IN :{WHITE}... la sede de la empresa está en medio STR_ERROR_CAN_T_PURCHASE_THIS_LAND :{WHITE}No es posible comprar este terreno... STR_ERROR_YOU_ALREADY_OWN_IT :{WHITE}... ¡ya es de su propiedad! +STR_ERROR_BUILD_OBJECT_LIMIT_REACHED :{WHITE}... límite de construcción de objetos alcanzado # Group related errors STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}No se puede crear grupo... diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index 0baae6179b..4831956623 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Máx. fu STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: {GOLD}{COMMA} casillas STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección trenes. Clic en un tren para más información. Ctrl+Clic para mostrar u ocultar el tipo de tren STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Lista de selección de autotransportes. Clic en un vehículo para más información. Ctrl+Clic para mostrar u ocultar el tipo del vehículo diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index 86eb366afd..1d445e735c 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3869,6 +3870,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Maximal STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Räckvidd: {GOLD}{COMMA} rutor STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Flygplanstyp: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista av tågvagnar. Klicka på tågvagn för information. Ctrl+klick visar eller döljer vagnstypen STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Vägfordonslista. Klicka på fordon för information. Ctrl+klick visar eller döljer fordonstypen diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 699706b113..5dd7069260 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}டன் STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}டன் STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}கி.கி. @@ -3454,6 +3455,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}அத STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}தூரம்: {GOLD}{COMMA} கட்டங்கள் STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}விமான வகை: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}இரயில் வாகனங்கள் பட்டியல் - மேலும் விவரங்களுக்கு வாகனத்தை சொடுக்கவும் STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}சாலை வாகனங்கள் பட்டியல் - மேலும் விவரங்களுக்கு வாகனத்தை சொடுக்கவும் diff --git a/src/lang/thai.txt b/src/lang/thai.txt index 0f6be234bf..6da3b39d8c 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA} แร STR_UNITS_POWER_METRIC :{COMMA} แรงม้า STR_UNITS_POWER_SI :{COMMA} กิโลวัตต์ + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}ตัน STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} ตัน STR_UNITS_WEIGHT_SHORT_SI :{COMMA} กิโลกรัม @@ -3601,6 +3602,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}กำ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}พิสัยทำการ: {GOLD}{COMMA} ช่อง STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}ชนิดของเครื่องบิน: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}รายการรถไฟ - คลิกที่รถไฟเพื่อดูรายละเอียด STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}รายการรถ - คลิกที่รถเพื่อดูรายละเอียด diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index f614fdc554..fc1e66b5c5 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP} STR_UNITS_POWER_METRIC :{COMMA}{NBSP}匹 STR_UNITS_POWER_SI :{COMMA}{NBSP}千瓦 + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}短噸 STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}噸 STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}公斤 @@ -3869,6 +3870,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}最大 STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}範圍:{GOLD}{COMMA} 方格 STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}飛機類型:{GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}列車選單。點選機車或車卡檢視詳細資訊,或者按住 Ctrl 鍵再點選機車或車卡以切換是否顯示機車或車卡的種類 STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}車輛選單。點選車輛檢視詳細資訊,或者按住 Ctrl 鍵再點選車輛以切換是否顯示車輛的種類 diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 49d2ac4245..096b1d1a12 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -201,6 +201,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}bg STR_UNITS_POWER_METRIC :{COMMA}{NBSP}bg STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3871,6 +3872,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Aza. Çe STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Menzil: {GOLD}{COMMA} kare STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Uçak türü: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Tren seçim listesi. Bilgi için araç tıklayın. Ctrl+Tıklama araç türünün gizlenmesini açar/kapatır STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Karayolu araçları seçim listesi. Bilgi için araca tıklayın. Ctrl+Tıklama araç türünün gizlenmesini açar/kapatır diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 6d3a2507ce..1b93cf733f 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -325,6 +325,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}к STR_UNITS_POWER_METRIC :{COMMA}{NBSP}к.с. STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}кг @@ -3982,6 +3983,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Макс STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Дальність: {GOLD}{COMMA} клітинок STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Тип літака: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список поїздів. Клацніть на поїзд для інформації. Ctrl+клац мишою вимикає показ типу транспорту STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Список автомобілів. Клацніть на авто для отримання інформації. Ctrl+клац мишою вимикає показ типу транспорту diff --git a/src/lang/urdu.txt b/src/lang/urdu.txt index 2e4accd2dc..ecf310cb1f 100644 --- a/src/lang/urdu.txt +++ b/src/lang/urdu.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA} ھار STR_UNITS_POWER_METRIC :{COMMA} ھارس پآور STR_UNITS_POWER_SI :{COMMA} کلو واٹ + STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA} من STR_UNITS_WEIGHT_SHORT_SI :{COMMA} kg @@ -2482,6 +2483,8 @@ STR_BUY_VEHICLE_AIRCRAFT_CAPTION :نیا طیار STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}پہنچ: {GOLD}{COMMA} ٹائلیں +###length 3 + ###length VEHICLE_TYPES ###length VEHICLE_TYPES diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index cead6a1203..82ce14d2c1 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -200,6 +200,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3874,6 +3875,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Lực k STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Tầm xa: {GOLD}{COMMA} ô STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Kiểu máy bay: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Danh sách tàu hỏa có thể chọn. Click vào tàu hỏa để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Danh sách xe có thể chọn. Click vào xe để xem thông tin. Ctrl+Click để ẩn/hiện loại được chọn diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index fa1c6c2f7e..73a3c481f9 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -198,6 +198,7 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW + STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_SI :{COMMA}{NBSP}kg @@ -3510,6 +3511,8 @@ STR_PURCHASE_INFO_MAX_TE :{BLACK}Grym Tyn STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Pellter cyrhaeddiad: {GOLD}{COMMA} teil STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Math awyren: {GOLD}{STRING} +###length 3 + ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Rhestr dewis trenau. Cliciwch ar gerbyd am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math cerbyd STR_BUY_VEHICLE_ROAD_VEHICLE_LIST_TOOLTIP :{BLACK}Rhestr dewis cerbydau ffordd. Cliciwch ar gerbyd am wybodaeth. Mae Ctrl+Clicio'n toglu cuddio'r math cerbyd From 27e1d057c5bcef59db3b76f481af4968df0a504a Mon Sep 17 00:00:00 2001 From: translators Date: Thu, 10 Nov 2022 18:50:49 +0000 Subject: [PATCH 07/16] Update: Translations from eints english (au): 12 changes by krysclarke spanish (mexican): 24 changes by absay english (us): 12 changes by 2TallTyler russian: 12 changes by Ln-Wolf french: 1 change by glx22 portuguese: 16 changes by azulcosta --- src/lang/english_AU.txt | 12 ++++++++++++ src/lang/english_US.txt | 12 ++++++++++++ src/lang/french.txt | 1 + src/lang/portuguese.txt | 20 ++++++++++++++++---- src/lang/russian.txt | 12 ++++++++++++ src/lang/spanish_MX.txt | 40 ++++++++++++++++++++++++---------------- 6 files changed, 77 insertions(+), 20 deletions(-) diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index 8d3fe86eb7..c4d3f912b3 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -200,6 +200,15 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t @@ -3876,6 +3885,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: { STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Aircraft type: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :All cargo types +STR_CARGO_TYPE_FILTER_FREIGHT :Freight +STR_CARGO_TYPE_FILTER_NONE :None ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list - click on vehicle for information diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index 58b06c7436..b219734eed 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -200,6 +200,15 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}hp STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t @@ -3876,6 +3885,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Range: { STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Aircraft type: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :All cargo types +STR_CARGO_TYPE_FILTER_FREIGHT :Freight +STR_CARGO_TYPE_FILTER_NONE :None ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Train vehicle selection list. Click on vehicle for information. Ctrl+Click to toggle hiding of the vehicle type diff --git a/src/lang/french.txt b/src/lang/french.txt index 47d2797092..7e0c1b5d84 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -3877,6 +3877,7 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Rayon d' STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Type d'aéronef{NBSP}: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_FREIGHT :Fret ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Choix du véhicule. Cliquer sur un véhicule pour obtenir des informations. Ctrl-clic pour basculer le masquage du type de véhicule diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index 032a20973c..dbc58e4584 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -201,6 +201,15 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}cv STR_UNITS_POWER_METRIC :{COMMA}cv STR_UNITS_POWER_SI :{COMMA}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}hp/Mg +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}t @@ -1351,7 +1360,7 @@ STR_CONFIG_SETTING_ALLOW_GIVE_MONEY :Permite enviar STR_CONFIG_SETTING_ALLOW_GIVE_MONEY_HELPTEXT :Permite transferências de dinheiro entre empresas em modo multi-jogador STR_CONFIG_SETTING_FREIGHT_TRAINS :Multiplicador de peso para simular comboios pesados: {STRING} -STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Define o impacto de carregar mercadoria nos combóios. Um valor superior torna o carregamento de meradoria mais exigente para os combóios, especialmente em terreno inclinado +STR_CONFIG_SETTING_FREIGHT_TRAINS_HELPTEXT :Define o impacto de carregar mercadoria nos comboios. Um valor elevado torna o transporte de mercadorias mais exigente para os comboios, especialmente em terreno inclinado STR_CONFIG_SETTING_PLANE_SPEED :Fator de velocidade de avião: {STRING} STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Set the relative speed of planes compared to other vehicle types, to reduce the amount of income of transport by aircraft @@ -3877,6 +3886,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :Todos os tipos de carga +STR_CARGO_TYPE_FILTER_FREIGHT :Mercadorias +STR_CARGO_TYPE_FILTER_NONE :Nenhum ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de veículos ferroviários - clique num veículo para informações @@ -4774,7 +4786,7 @@ STR_ERROR_CAN_T_BUILD_RAILROAD_STATION :{WHITE}Não é STR_ERROR_CAN_T_BUILD_BUS_STATION :{WHITE}Não é possível construir estação de autocarros... STR_ERROR_CAN_T_BUILD_TRUCK_STATION :{WHITE}Não é possível construir estação de carregamento de camiões... STR_ERROR_CAN_T_BUILD_PASSENGER_TRAM_STATION :{WHITE}Não é possível construir estação de passageiros para eléctricos... -STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Não é possível construir estação de carga para eléctricos... +STR_ERROR_CAN_T_BUILD_CARGO_TRAM_STATION :{WHITE}Não é possível construir estação de carga para elétricos... STR_ERROR_CAN_T_BUILD_DOCK_HERE :{WHITE}Não é possível construir doca aqui... STR_ERROR_CAN_T_BUILD_AIRPORT_HERE :{WHITE}Não é possível construir aeroporto aqui... @@ -4798,7 +4810,7 @@ STR_ERROR_MUST_REMOVE_RAILWAY_STATION_FIRST :{WHITE}É preci STR_ERROR_CAN_T_REMOVE_BUS_STATION :{WHITE}Impossível remover estação... STR_ERROR_CAN_T_REMOVE_TRUCK_STATION :{WHITE}Impossível remover estação... STR_ERROR_CAN_T_REMOVE_PASSENGER_TRAM_STATION :{WHITE}Impossível remover paragem de eléctricos de passageiros -STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Impossível remover estação de eléctricos de mercadorias... +STR_ERROR_CAN_T_REMOVE_CARGO_TRAM_STATION :{WHITE}Impossível remover estação de elétricos de mercadorias... STR_ERROR_MUST_REMOVE_ROAD_STOP_FIRST :{WHITE}Deverá remover a paragem rodoviária primeiro STR_ERROR_THERE_IS_NO_STATION :{WHITE}... não há nenhuma estação aqui @@ -4806,7 +4818,7 @@ STR_ERROR_MUST_DEMOLISH_RAILROAD :{WHITE}Precisa STR_ERROR_MUST_DEMOLISH_BUS_STATION_FIRST :{WHITE}Precisa de demolir a estação de autocarros primeiro STR_ERROR_MUST_DEMOLISH_TRUCK_STATION_FIRST :{WHITE}Precisa de demolir a estação de carga primeiro STR_ERROR_MUST_DEMOLISH_PASSENGER_TRAM_STATION_FIRST :{WHITE}Precisa demolir estação de eléctricos primeiro -STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Precisa demolir estação de eléctricos primeiro +STR_ERROR_MUST_DEMOLISH_CARGO_TRAM_STATION_FIRST :{WHITE}Precisa demolir estação de elétricos primeiro STR_ERROR_MUST_DEMOLISH_DOCK_FIRST :{WHITE}Deverá demolir a doca primeiro STR_ERROR_MUST_DEMOLISH_AIRPORT_FIRST :{WHITE}Precisa de demolir o aeroporto primeiro diff --git a/src/lang/russian.txt b/src/lang/russian.txt index e0b9093c5c..dfaef5ed34 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -326,6 +326,15 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}л STR_UNITS_POWER_METRIC :{COMMA}{NBSP}лс STR_UNITS_POWER_SI :{COMMA}{NBSP}кВт +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}лс/т +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}лс/т +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}лс/Мг +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}лс/т +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}лс/т +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}лс/Мг +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}кВт/т +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}кВт/т +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}Вт/кг STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}т STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}т @@ -4051,6 +4060,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Даль STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Тип возд. судна: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :Все типы грузов +STR_CARGO_TYPE_FILTER_FREIGHT :Груз +STR_CARGO_TYPE_FILTER_NONE :Нет ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Список железнодорожного транспорта - щёлкните для получения информации. Ctrl+щелчок скроет/покажет ТС. diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index 4831956623..aeeaef8321 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -201,6 +201,10 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}hp STR_UNITS_POWER_METRIC :{COMMA}{NBSP}cv STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t @@ -2471,13 +2475,13 @@ STR_NETWORK_SERVER_MESSAGE_GAME_REASON_LINK_GRAPH :esperando actua STR_NETWORK_MESSAGE_CLIENT_LEAVING :saliendo STR_NETWORK_MESSAGE_CLIENT_JOINED :*** {STRING} se unió a la partida -STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {STRING} se unió a la partida (Cliente #{2:NUM}) -STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {STRING} se unió a la empresa #{2:NUM} +STR_NETWORK_MESSAGE_CLIENT_JOINED_ID :*** {0:STRING} se unió a la partida (Cliente #{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_COMPANY_JOIN :*** {0:STRING} se unió a la empresa #{2:NUM} STR_NETWORK_MESSAGE_CLIENT_COMPANY_SPECTATE :*** {STRING} se unió como espectador -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_CLIENT_COMPANY_NEW :*** {0:STRING} creó una nueva empresa (#{2:NUM}) +STR_NETWORK_MESSAGE_CLIENT_LEFT :*** {0: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 transfirió {2:CURRENCY_LONG} a {1:STRING} +STR_NETWORK_MESSAGE_GIVE_MONEY :*** {0: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}) @@ -2604,6 +2608,7 @@ STR_STATION_BUILD_COVERAGE_AREA_OFF_TOOLTIP :{BLACK}No mostr STR_STATION_BUILD_COVERAGE_AREA_ON_TOOLTIP :{BLACK}Mostrar área de recolección en el sitio planeado STR_STATION_BUILD_ACCEPTS_CARGO :{BLACK}Acepta: {GOLD}{CARGO_LIST} STR_STATION_BUILD_SUPPLIES_CARGO :{BLACK}Abastece: {GOLD}{CARGO_LIST} +STR_STATION_BUILD_INFRASTRUCTURE_COST :{BLACK}Costo de mantenimiento: {GOLD}{CURRENCY_SHORT}/año # Join station window STR_JOIN_STATION_CAPTION :{WHITE}Ampliar estación @@ -3324,15 +3329,15 @@ STR_NEWGRF_ERROR_MSG_FATAL :{RED}Error fata STR_NEWGRF_ERROR_FATAL_POPUP :{WHITE}Ocurrió un error fatal de NewGRF:{}{STRING} STR_NEWGRF_ERROR_POPUP :{WHITE}Ocurrió un error de NewGRF:{}{STRING} STR_NEWGRF_ERROR_VERSION_NUMBER :{1:STRING} no funcionará con la con la versión de TTDPatch reportada por OpenTTD -STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} es la para la versión {STRING} de TTD -STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está diseñado para usarse con {STRING} -STR_NEWGRF_ERROR_INVALID_PARAMETER :Parámetro no válido para {1:STRING}: parámetro {STRING} ({NUM}) -STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} debe cargarse antes de {STRING} -STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} debe cargarse después de {STRING} -STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} requiere OpenTTD versión {STRING} o superior +STR_NEWGRF_ERROR_DOS_OR_WINDOWS :{1:STRING} es la para la versión {2:STRING} de TTD +STR_NEWGRF_ERROR_UNSET_SWITCH :{1:STRING} está diseñado para usarse con {2:STRING} +STR_NEWGRF_ERROR_INVALID_PARAMETER :Parámetro no válido para {1:STRING}: parámetro {2:STRING} ({3:NUM}) +STR_NEWGRF_ERROR_LOAD_BEFORE :{1:STRING} debe cargarse antes de {2:STRING} +STR_NEWGRF_ERROR_LOAD_AFTER :{1:STRING} debe cargarse después de {2:STRING} +STR_NEWGRF_ERROR_OTTD_VERSION_NUMBER :{1:STRING} requiere OpenTTD versión {2:STRING} o superior STR_NEWGRF_ERROR_AFTER_TRANSLATED_FILE :El archivo GRF fue diseñado para ser traducido STR_NEWGRF_ERROR_TOO_MANY_NEWGRFS_LOADED :Demasiados NewGRF cargados -STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Cargar {1:STRING} como NewGRF estático con {STRING} puede causar desincronizaciones +STR_NEWGRF_ERROR_STATIC_GRF_CAUSES_DESYNC :Cargar {1:STRING} como NewGRF estático con {2:STRING} puede causar asincronías STR_NEWGRF_ERROR_UNEXPECTED_SPRITE :Sprite inesperado (sprite {3:NUM}) STR_NEWGRF_ERROR_UNKNOWN_PROPERTY :Propiedad de Acción 0 desconocida {4:HEX} (sprite {3:NUM}) STR_NEWGRF_ERROR_INVALID_ID :Intento de usar una ID no válida (sprite {3:NUM}) @@ -3754,7 +3759,7 @@ STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Produce: STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING} STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Requiere: -STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING} +STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{0:STRING}{BLACK}{3:STRING} STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} esperando{STRING} STR_CONFIG_GAME_PRODUCTION :{WHITE}Cambiar producción (múltiplo de 8, máximo 2040) @@ -3876,6 +3881,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Alcance: STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Tipo de aeronave: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :Todos los tipos +STR_CARGO_TYPE_FILTER_FREIGHT :Carga +STR_CARGO_TYPE_FILTER_NONE :Ninguno ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Lista de selección trenes. Clic en un tren para más información. Ctrl+Clic para mostrar u ocultar el tipo de tren @@ -4045,7 +4053,7 @@ STR_ENGINE_PREVIEW_AIRCRAFT :{G=f}aeronave STR_ENGINE_PREVIEW_SHIP :{G=m}barco STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER :{BLACK}Costo: {CURRENCY_LONG} Peso: {WEIGHT_SHORT}{}Velocidad: {VELOCITY} Potencia: {POWER}{}Costo de operación: {CURRENCY_LONG}/año{}Capacidad: {CARGO_LONG} -STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Costo: {CURRENCY_LONG} Peso: {WEIGHT_SHORT}{}Velocidad: {VELOCITY} Potencia: {POWER} Máx. F.T.: {6:FORCE}{}Costo de operación: {4:CURRENCY_LONG}/año{}Capacidad: {5:CARGO_LONG} +STR_ENGINE_PREVIEW_COST_WEIGHT_SPEED_POWER_MAX_TE :{BLACK}Costo: {0:CURRENCY_LONG} Peso: {1:WEIGHT_SHORT}{}Velocidad: {2:VELOCITY} Potencia: {3:POWER} Máx. F.T.: {6:FORCE}{}Costo de operación: {4:CURRENCY_LONG}/año{}Capacidad: {5:CARGO_LONG} STR_ENGINE_PREVIEW_COST_MAX_SPEED_CAP_RUNCOST :{BLACK}Costo: {CURRENCY_LONG} Velocidad máx.: {VELOCITY}{}Capacidad: {CARGO_LONG}{}Costo de mantenimiento: {CURRENCY_LONG}/año STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_CAP_RUNCOST :{BLACK}Costo: {CURRENCY_LONG} Vel. máx.: {VELOCITY}{}Tipo de aeronave: {STRING}{}Capacidad: {CARGO_LONG}, {CARGO_LONG}{}Costo de operación: {CURRENCY_LONG} al año STR_ENGINE_PREVIEW_COST_MAX_SPEED_TYPE_CAP_RUNCOST :{BLACK}Costo: {CURRENCY_LONG} Vel. máx.: {VELOCITY}{}Tipo de aeronave: {STRING}{}Capacidad: {CARGO_LONG}{}Costo de operación: {CURRENCY_LONG} al año @@ -4208,8 +4216,8 @@ STR_VEHICLE_INFO_RELIABILITY_BREAKDOWNS :{BLACK}Fiabilid STR_VEHICLE_INFO_BUILT_VALUE :{LTBLUE}{ENGINE} {BLACK}Construido: {LTBLUE}{NUM}{BLACK} Valor: {LTBLUE}{CURRENCY_LONG} STR_VEHICLE_INFO_NO_CAPACITY :{BLACK}Capacidad: {LTBLUE}Ninguna{STRING} -STR_VEHICLE_INFO_CAPACITY :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}{3:STRING} -STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}{3:STRING} (×{4:NUM}) +STR_VEHICLE_INFO_CAPACITY :{BLACK}Capacidad: {LTBLUE}{0:CARGO_LONG}{3:STRING} +STR_VEHICLE_INFO_CAPACITY_MULT :{BLACK}Capacidad: {LTBLUE}{0:CARGO_LONG}{3:STRING} (×{4:NUM}) STR_VEHICLE_INFO_CAPACITY_CAPACITY :{BLACK}Capacidad: {LTBLUE}{CARGO_LONG}, {CARGO_LONG}{STRING} STR_VEHICLE_INFO_FEEDER_CARGO_VALUE :{BLACK}Créditos por transferencia: {LTBLUE}{CURRENCY_LONG} From fd4f148c62f355e6f34824a9c2657e9812d16293 Mon Sep 17 00:00:00 2001 From: Artin Alavi <1361714+Arastais@users.noreply.github.com> Date: Thu, 10 Nov 2022 12:36:18 -0800 Subject: [PATCH 08/16] Feature: Hotkey to honk a vehicle's horn (#10110) --- src/newgrf_sound.cpp | 5 +-- src/newgrf_sound.h | 2 +- src/ship.h | 2 +- src/ship_cmd.cpp | 14 +++----- src/sound.cpp | 3 +- src/train.h | 2 +- src/train_cmd.cpp | 7 ++-- src/vehicle_base.h | 3 +- src/vehicle_gui.cpp | 63 ++++++++++++++++++++++++------------ src/widgets/vehicle_widget.h | 1 + 10 files changed, 60 insertions(+), 42 deletions(-) diff --git a/src/newgrf_sound.cpp b/src/newgrf_sound.cpp index 48f2105517..fce0ba9e11 100644 --- a/src/newgrf_sound.cpp +++ b/src/newgrf_sound.cpp @@ -181,11 +181,12 @@ SoundID GetNewGRFSoundID(const GRFFile *file, SoundID sound_id) * Checks whether a NewGRF wants to play a different vehicle sound effect. * @param v Vehicle to play sound effect for. * @param event Trigger for the sound effect. + * @param force Should we play the sound effect even if vehicle sound effects are muted? * @return false if the default sound effect shall be played instead. */ -bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event) +bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event, bool force) { - if (!_settings_client.sound.vehicle) return true; + if (!_settings_client.sound.vehicle && !force) return true; const GRFFile *file = v->GetGRF(); uint16 callback; diff --git a/src/newgrf_sound.h b/src/newgrf_sound.h index d908173ac8..5b1d1cbc57 100644 --- a/src/newgrf_sound.h +++ b/src/newgrf_sound.h @@ -34,7 +34,7 @@ bool LoadNewGRFSound(SoundEntry *sound); SoundID GetNewGRFSoundID(const struct GRFFile *file, SoundID sound_id); SoundEntry *GetSound(SoundID sound_id); uint GetNumSounds(); -bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event); +bool PlayVehicleSound(const Vehicle *v, VehicleSoundEvent event, bool force = false); void PlayTileSound(const struct GRFFile *file, SoundID sound_id, TileIndex tile); #endif /* NEWGRF_SOUND_H */ diff --git a/src/ship.h b/src/ship.h index 66e29f4c3c..990e3cd8b4 100644 --- a/src/ship.h +++ b/src/ship.h @@ -38,7 +38,7 @@ struct Ship FINAL : public SpecializedVehicle { void MarkDirty(); void UpdateDeltaXY(); ExpensesType GetExpenseType(bool income) const { return income ? EXPENSES_SHIP_REVENUE : EXPENSES_SHIP_RUN; } - void PlayLeaveStationSound() const; + void PlayLeaveStationSound(bool force = false) const; bool IsPrimaryVehicle() const { return true; } void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const; int GetDisplaySpeed() const { return this->cur_speed / 2; } diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp index 873d45e688..ec90258b69 100644 --- a/src/ship_cmd.cpp +++ b/src/ship_cmd.cpp @@ -272,16 +272,10 @@ void Ship::MarkDirty() this->UpdateCache(); } -static void PlayShipSound(const Vehicle *v) +void Ship::PlayLeaveStationSound(bool force) const { - if (!PlayVehicleSound(v, VSE_START)) { - SndPlayVehicleFx(ShipVehInfo(v->engine_type)->sfx, v); - } -} - -void Ship::PlayLeaveStationSound() const -{ - PlayShipSound(this); + if (PlayVehicleSound(this, VSE_START, force)) return; + SndPlayVehicleFx(ShipVehInfo(this->engine_type)->sfx, this); } TileIndex Ship::GetOrderStationLocation(StationID station) @@ -398,7 +392,7 @@ static bool CheckShipLeaveDepot(Ship *v) v->UpdateViewport(true, true); SetWindowDirty(WC_VEHICLE_DEPOT, v->tile); - PlayShipSound(v); + v->PlayLeaveStationSound(); VehicleServiceInDepot(v); InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile); SetWindowClassesDirty(WC_SHIPS_LIST); diff --git a/src/sound.cpp b/src/sound.cpp index 1d0f7e8417..34807a1d3c 100644 --- a/src/sound.cpp +++ b/src/sound.cpp @@ -235,6 +235,7 @@ void SndCopyToPool() /** * Decide 'where' (between left and right speaker) to play the sound effect. + * Note: Callers must determine if sound effects are enabled. This plays a sound regardless of the setting. * @param sound Sound effect to play * @param left Left edge of virtual coordinates where the sound is produced * @param right Right edge of virtual coordinates where the sound is produced @@ -243,8 +244,6 @@ void SndCopyToPool() */ static void SndPlayScreenCoordFx(SoundID sound, int left, int right, int top, int bottom) { - if (_settings_client.music.effect_vol == 0) return; - /* Iterate from back, so that main viewport is checked first */ for (const Window *w : Window::IterateFromBack()) { const Viewport *vp = w->viewport; diff --git a/src/train.h b/src/train.h index 4b0a739b01..1e5583ea65 100644 --- a/src/train.h +++ b/src/train.h @@ -110,7 +110,7 @@ struct Train FINAL : public GroundVehicle { void MarkDirty() override; void UpdateDeltaXY() override; ExpensesType GetExpenseType(bool income) const override { return income ? EXPENSES_TRAIN_REVENUE : EXPENSES_TRAIN_RUN; } - void PlayLeaveStationSound() const override; + void PlayLeaveStationSound(bool force = false) const override; bool IsPrimaryVehicle() const override { return this->IsFrontEngine(); } void GetImage(Direction direction, EngineImageType image_type, VehicleSpriteSeq *result) const override; int GetDisplaySpeed() const override { return this->gcache.last_speed; } diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp index eeae7f1e9d..7d3a1fb361 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp @@ -2100,7 +2100,7 @@ bool Train::FindClosestDepot(TileIndex *location, DestinationID *destination, bo } /** Play a sound for a train leaving the station. */ -void Train::PlayLeaveStationSound() const +void Train::PlayLeaveStationSound(bool force) const { static const SoundFx sfx[] = { SND_04_DEPARTURE_STEAM, @@ -2110,10 +2110,9 @@ void Train::PlayLeaveStationSound() const SND_41_DEPARTURE_MAGLEV }; - if (PlayVehicleSound(this, VSE_START)) return; + if (PlayVehicleSound(this, VSE_START, force)) return; - EngineID engtype = this->engine_type; - SndPlayVehicleFx(sfx[RailVehInfo(engtype)->engclass], this); + SndPlayVehicleFx(sfx[RailVehInfo(this->engine_type)->engclass], this); } /** diff --git a/src/vehicle_base.h b/src/vehicle_base.h index 63fc7b524b..c643cff859 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -450,8 +450,9 @@ public: /** * Play the sound associated with leaving the station + * @param force Should we play the sound even if sound effects are muted? (horn hotkey) */ - virtual void PlayLeaveStationSound() const {} + virtual void PlayLeaveStationSound(bool force = false) const {} /** * Whether this is the primary vehicle in the chain. diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index 789dd37929..7ccb7e6c2f 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -41,6 +41,7 @@ #include "order_cmd.h" #include "roadveh_cmd.h" #include "train_cmd.h" +#include "hotkeys.h" #include "safeguards.h" @@ -2686,26 +2687,6 @@ static const NWidgetPart _nested_vehicle_view_widgets[] = { EndContainer(), }; -/** Vehicle view window descriptor for all vehicles but trains. */ -static WindowDesc _vehicle_view_desc( - WDP_AUTO, "view_vehicle", 250, 116, - WC_VEHICLE_VIEW, WC_NONE, - 0, - _nested_vehicle_view_widgets, lengthof(_nested_vehicle_view_widgets) -); - -/** - * Vehicle view window descriptor for trains. Only minimum_height and - * default_height are different for train view. - */ -static WindowDesc _train_view_desc( - WDP_AUTO, "view_vehicle_train", 250, 134, - WC_VEHICLE_VIEW, WC_NONE, - 0, - _nested_vehicle_view_widgets, lengthof(_nested_vehicle_view_widgets) -); - - /* Just to make sure, nobody has changed the vehicle type constants, as we are using them for array indexing in a number of places here. */ static_assert(VEH_TRAIN == 0); @@ -3151,6 +3132,20 @@ public: } } + EventState OnHotkey(int hotkey) override + { + /* If the hotkey is not for any widget in the UI (i.e. for honking) */ + if (hotkey == WID_VV_HONK_HORN) { + const Window* mainwindow = FindWindowById(WC_MAIN_WINDOW, 0); + const Vehicle* v = Vehicle::Get(window_number); + /*Only play the sound if we're following this vehicle */ + if (mainwindow->viewport->follow_vehicle == v->index) { + v->PlayLeaveStationSound(true); + } + } + return Window::OnHotkey(hotkey); + } + void OnQueryTextFinished(char *str) override { if (str == nullptr) return; @@ -3225,8 +3220,36 @@ public: { ::ShowNewGRFInspectWindow(GetGrfSpecFeature(Vehicle::Get(this->window_number)->type), this->window_number); } + + static HotkeyList hotkeys; }; +static Hotkey vehicleview_hotkeys[] = { + Hotkey('H', "honk", WID_VV_HONK_HORN), + HOTKEY_LIST_END +}; +HotkeyList VehicleViewWindow::hotkeys("vehicleview", vehicleview_hotkeys); + +/** Vehicle view window descriptor for all vehicles but trains. */ +static WindowDesc _vehicle_view_desc( + WDP_AUTO, "view_vehicle", 250, 116, + WC_VEHICLE_VIEW, WC_NONE, + 0, + _nested_vehicle_view_widgets, lengthof(_nested_vehicle_view_widgets), + &VehicleViewWindow::hotkeys +); + +/** + * Vehicle view window descriptor for trains. Only minimum_height and + * default_height are different for train view. + */ +static WindowDesc _train_view_desc( + WDP_AUTO, "view_vehicle_train", 250, 134, + WC_VEHICLE_VIEW, WC_NONE, + 0, + _nested_vehicle_view_widgets, lengthof(_nested_vehicle_view_widgets), + &VehicleViewWindow::hotkeys +); /** Shows the vehicle view window of the given vehicle. */ void ShowVehicleViewWindow(const Vehicle *v) diff --git a/src/widgets/vehicle_widget.h b/src/widgets/vehicle_widget.h index 375f914e10..8e960bcb79 100644 --- a/src/widgets/vehicle_widget.h +++ b/src/widgets/vehicle_widget.h @@ -27,6 +27,7 @@ enum VehicleViewWidgets { WID_VV_SELECT_REFIT_TURN, ///< Selection widget between 'refit' and 'turn around' buttons. WID_VV_TURN_AROUND, ///< Turn this vehicle around. WID_VV_FORCE_PROCEED, ///< Force this vehicle to pass a signal at danger. + WID_VV_HONK_HORN, ///< Honk the vehicles horn (not drawn on UI, only used for hotkey). }; /** Widgets of the #RefitWindow class. */ From cbac2432164bb9cf40369a5d43ad43071357ef1c Mon Sep 17 00:00:00 2001 From: Artin Alavi <1361714+Arastais@users.noreply.github.com> Date: Thu, 10 Nov 2022 12:39:09 -0800 Subject: [PATCH 09/16] Feature: [UI] Split AI/Game Script configuration windows and add them to world gen window (#10058) --- src/ai/ai_gui.cpp | 122 ++------- src/ai/ai_gui.hpp | 2 + src/game/CMakeLists.txt | 2 + src/game/game_gui.cpp | 464 ++++++++++++++++++++++++++++++++++ src/game/game_gui.hpp | 15 ++ src/genworld_gui.cpp | 144 +++++++---- src/intro_gui.cpp | 12 +- src/lang/english.txt | 31 ++- src/toolbar_gui.cpp | 12 +- src/widgets/CMakeLists.txt | 1 + src/widgets/ai_widget.h | 1 - src/widgets/game_widget.h | 28 ++ src/widgets/genworld_widget.h | 4 + src/widgets/intro_widget.h | 1 + src/window_type.h | 2 + 15 files changed, 679 insertions(+), 162 deletions(-) create mode 100644 src/game/game_gui.cpp create mode 100644 src/game/game_gui.hpp create mode 100644 src/widgets/game_widget.h diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index 9ec0942fb8..8bf05b0192 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -182,7 +182,7 @@ struct AIListWindow : public Window { for (int i = 0; i < this->selected; i++) it++; GetConfig(slot)->Change((*it).second->GetName(), (*it).second->GetVersion()); } - InvalidateWindowData(WC_GAME_OPTIONS, WN_GAME_OPTIONS_AI); + InvalidateWindowData(WC_GAME_OPTIONS, slot == OWNER_DEITY ? WN_GAME_OPTIONS_GS : WN_GAME_OPTIONS_AI); InvalidateWindowClassesData(WC_AI_SETTINGS); CloseWindowByClass(WC_QUERY_STRING); InvalidateWindowClassesData(WC_TEXTFILE); @@ -276,7 +276,7 @@ static WindowDesc _ai_list_desc( * Open the AI list window to chose an AI for the given company slot. * @param slot The slot to change the AI of. */ -static void ShowAIListWindow(CompanyID slot) +void ShowAIListWindow(CompanyID slot) { CloseWindowByClass(WC_AI_LIST); new AIListWindow(&_ai_list_desc, slot); @@ -296,7 +296,7 @@ struct AISettingsWindow : public Window { int clicked_row; ///< The clicked row of settings. int line_height; ///< Height of a row in the matrix widget. Scrollbar *vscroll; ///< Cache of the vertical scrollbar. - typedef std::vector VisibleSettingsList; + typedef std::vector VisibleSettingsList; ///< typdef for a vector of script settings VisibleSettingsList visible_settings; ///< List of visible AI settings /** @@ -320,15 +320,6 @@ struct AISettingsWindow : public Window { this->RebuildVisibleSettings(); } - void SetStringParameters(int widget) const override - { - switch (widget) { - case WID_AIS_CAPTION: - SetDParam(0, (this->slot == OWNER_DEITY) ? STR_AI_SETTINGS_CAPTION_GAMESCRIPT : STR_AI_SETTINGS_CAPTION_AI); - break; - } - } - /** * Rebuilds the list of visible settings. AI settings with the flag * AICONFIG_AI_DEVELOPER set will only be visible if the game setting @@ -476,7 +467,7 @@ struct AISettingsWindow : public Window { wi_rect.top = pt.y - rel_y + (this->line_height - SETTING_BUTTON_HEIGHT) / 2; wi_rect.bottom = wi_rect.top + SETTING_BUTTON_HEIGHT - 1; - /* For dropdowns we also have to check the y position thoroughly, the mouse may not above the just opening dropdown */ + /* If the mouse is still held but dragged outside of the dropdown list, keep the dropdown open */ if (pt.y >= wi_rect.top && pt.y <= wi_rect.bottom) { this->clicked_dropdown = true; this->closing_dropdown = false; @@ -533,24 +524,15 @@ struct AISettingsWindow : public Window { void OnQueryTextFinished(char *str) override { if (StrEmpty(str)) return; - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < this->clicked_row; i++) it++; - const ScriptConfigItem config_item = **it; - if (_game_mode == GM_NORMAL && ((this->slot == OWNER_DEITY) || Company::IsValidID(this->slot)) && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; int32 value = atoi(str); - this->ai_config->SetSetting(config_item.name, value); - this->SetDirty(); + + SetValue(value); } void OnDropdownSelect(int widget, int index) override { assert(this->clicked_dropdown); - VisibleSettingsList::const_iterator it = this->visible_settings.begin(); - for (int i = 0; i < this->clicked_row; i++) it++; - const ScriptConfigItem config_item = **it; - if (_game_mode == GM_NORMAL && ((this->slot == OWNER_DEITY) || Company::IsValidID(this->slot)) && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; - this->ai_config->SetSetting(config_item.name, index); - this->SetDirty(); + SetValue(index); } void OnDropdownClose(Point pt, int widget, int index, bool instant_close) override @@ -597,13 +579,23 @@ private: || (config_item.flags & SCRIPTCONFIG_INGAME) != 0 || _settings_client.gui.ai_developer_tools; } + + void SetValue(int value) + { + VisibleSettingsList::const_iterator it = this->visible_settings.begin(); + for (int i = 0; i < this->clicked_row; i++) it++; + const ScriptConfigItem config_item = **it; + if (_game_mode == GM_NORMAL && ((this->slot == OWNER_DEITY) || Company::IsValidID(this->slot)) && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; + this->ai_config->SetSetting(config_item.name, value); + this->SetDirty(); + } }; /** Widgets for the AI settings window. */ static const NWidgetPart _nested_ai_settings_widgets[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_CLOSEBOX, COLOUR_MAUVE), - NWidget(WWT_CAPTION, COLOUR_MAUVE, WID_AIS_CAPTION), SetDataTip(STR_AI_SETTINGS_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), + NWidget(WWT_CAPTION, COLOUR_MAUVE, WID_AIS_CAPTION), SetDataTip(STR_AI_SETTINGS_CAPTION_AI, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), NWidget(WWT_DEFSIZEBOX, COLOUR_MAUVE), EndContainer(), NWidget(NWID_HORIZONTAL), @@ -683,7 +675,7 @@ void ShowScriptTextfileWindow(TextfileType file_type, CompanyID slot) static const NWidgetPart _nested_ai_config_widgets[] = { NWidget(NWID_HORIZONTAL), NWidget(WWT_CLOSEBOX, COLOUR_MAUVE), - NWidget(WWT_CAPTION, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_CAPTION, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), + NWidget(WWT_CAPTION, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_CAPTION_AI, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), EndContainer(), NWidget(WWT_PANEL, COLOUR_MAUVE, WID_AIC_BACKGROUND), NWidget(NWID_VERTICAL), SetPIP(4, 4, 4), @@ -705,16 +697,13 @@ static const NWidgetPart _nested_ai_config_widgets[] = { EndContainer(), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 9), - NWidget(WWT_FRAME, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_GAMESCRIPT, STR_NULL), SetPadding(0, 5, 4, 5), - NWidget(WWT_MATRIX, COLOUR_MAUVE, WID_AIC_GAMELIST), SetMinimalSize(288, 14), SetFill(1, 0), SetMatrixDataTip(1, 1, STR_AI_CONFIG_GAMELIST_TOOLTIP), - EndContainer(), NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7), - NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CHANGE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CHANGE, STR_AI_CONFIG_CHANGE_TOOLTIP), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CHANGE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CHANGE_AI, STR_AI_CONFIG_CHANGE_TOOLTIP), NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CONFIGURE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CONFIGURE, STR_AI_CONFIG_CONFIGURE_TOOLTIP), - NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CLOSE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_SETTINGS_CLOSE, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_README), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_README, STR_NULL), EndContainer(), NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7), - NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_README), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_README, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_CLOSE), SetFill(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_SETTINGS_CLOSE, STR_NULL), NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_CHANGELOG), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_CHANGELOG, STR_NULL), NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_AIC_TEXTFILE + TFT_LICENSE), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_LICENCE, STR_NULL), EndContainer(), @@ -762,21 +751,6 @@ struct AIConfigWindow : public Window { case WID_AIC_NUMBER: SetDParam(0, GetGameSettings().difficulty.max_no_competitors); break; - case WID_AIC_CHANGE: - switch (selected_slot) { - case OWNER_DEITY: - SetDParam(0, STR_AI_CONFIG_CHANGE_GAMESCRIPT); - break; - - case INVALID_COMPANY: - SetDParam(0, STR_AI_CONFIG_CHANGE_NONE); - break; - - default: - SetDParam(0, STR_AI_CONFIG_CHANGE_AI); - break; - } - break; } } @@ -788,32 +762,11 @@ struct AIConfigWindow : public Window { *size = maxdim(*size, NWidgetScrollbar::GetHorizontalDimension()); break; - case WID_AIC_GAMELIST: - this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; - size->height = 1 * this->line_height; - break; - case WID_AIC_LIST: this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; resize->height = this->line_height; size->height = 8 * this->line_height; break; - - case WID_AIC_CHANGE: { - SetDParam(0, STR_AI_CONFIG_CHANGE_GAMESCRIPT); - Dimension dim = GetStringBoundingBox(STR_AI_CONFIG_CHANGE); - - SetDParam(0, STR_AI_CONFIG_CHANGE_NONE); - dim = maxdim(dim, GetStringBoundingBox(STR_AI_CONFIG_CHANGE)); - - SetDParam(0, STR_AI_CONFIG_CHANGE_AI); - dim = maxdim(dim, GetStringBoundingBox(STR_AI_CONFIG_CHANGE)); - - dim.width += padding.width; - dim.height += padding.height; - *size = maxdim(*size, dim); - break; - } } } @@ -824,8 +777,6 @@ struct AIConfigWindow : public Window { */ static bool IsEditable(CompanyID slot) { - if (slot == OWNER_DEITY) return _game_mode != GM_NORMAL || Game::GetInstance() != nullptr; - if (_game_mode != GM_NORMAL) { return slot > 0 && slot <= GetGameSettings().difficulty.max_no_competitors; } @@ -841,20 +792,6 @@ struct AIConfigWindow : public Window { void DrawWidget(const Rect &r, int widget) const override { switch (widget) { - case WID_AIC_GAMELIST: { - StringID text = STR_AI_CONFIG_NONE; - - if (GameConfig::GetConfig()->GetInfo() != nullptr) { - SetDParamStr(0, GameConfig::GetConfig()->GetInfo()->GetName()); - text = STR_JUST_RAW_STRING; - } - - DrawString(r.left + 10, r.right - 10, r.top + WD_MATRIX_TOP, text, - (this->selected_slot == OWNER_DEITY) ? TC_WHITE : (IsEditable(OWNER_DEITY) ? TC_ORANGE : TC_SILVER)); - - break; - } - case WID_AIC_LIST: { int y = r.top; for (int i = this->vscroll->GetPosition(); this->vscroll->IsVisible(i) && i < MAX_COMPANIES; i++) { @@ -899,13 +836,6 @@ struct AIConfigWindow : public Window { break; } - case WID_AIC_GAMELIST: { - this->selected_slot = OWNER_DEITY; - this->InvalidateData(); - if (click_count > 1 && this->selected_slot != INVALID_COMPANY && _game_mode != GM_NORMAL) ShowAIListWindow((CompanyID)this->selected_slot); - break; - } - case WID_AIC_LIST: { // Select a slot this->selected_slot = (CompanyID)this->vscroll->GetScrolledRowFromWidget(pt.y, this, widget); this->InvalidateData(); @@ -947,7 +877,7 @@ struct AIConfigWindow : public Window { if (!_network_available) { ShowErrorMessage(STR_NETWORK_ERROR_NOTAVAILABLE, INVALID_STRING_ID, WL_ERROR); } else { - ShowNetworkContentListWindow(nullptr, CONTENT_TYPE_AI, CONTENT_TYPE_GAME); + ShowNetworkContentListWindow(nullptr, CONTENT_TYPE_AI); } break; } @@ -968,10 +898,10 @@ struct AIConfigWindow : public Window { this->SetWidgetDisabledState(WID_AIC_DECREASE, GetGameSettings().difficulty.max_no_competitors == 0); this->SetWidgetDisabledState(WID_AIC_INCREASE, GetGameSettings().difficulty.max_no_competitors == MAX_COMPANIES - 1); - this->SetWidgetDisabledState(WID_AIC_CHANGE, (this->selected_slot == OWNER_DEITY && _game_mode == GM_NORMAL) || this->selected_slot == INVALID_COMPANY); + this->SetWidgetDisabledState(WID_AIC_CHANGE, this->selected_slot == INVALID_COMPANY); this->SetWidgetDisabledState(WID_AIC_CONFIGURE, this->selected_slot == INVALID_COMPANY || GetConfig(this->selected_slot)->GetConfigList()->size() == 0); - this->SetWidgetDisabledState(WID_AIC_MOVE_UP, this->selected_slot == OWNER_DEITY || this->selected_slot == INVALID_COMPANY || !IsEditable((CompanyID)(this->selected_slot - 1))); - this->SetWidgetDisabledState(WID_AIC_MOVE_DOWN, this->selected_slot == OWNER_DEITY || this->selected_slot == INVALID_COMPANY || !IsEditable((CompanyID)(this->selected_slot + 1))); + this->SetWidgetDisabledState(WID_AIC_MOVE_UP, this->selected_slot == INVALID_COMPANY || !IsEditable((CompanyID)(this->selected_slot - 1))); + this->SetWidgetDisabledState(WID_AIC_MOVE_DOWN, this->selected_slot == INVALID_COMPANY || !IsEditable((CompanyID)(this->selected_slot + 1))); for (TextfileType tft = TFT_BEGIN; tft < TFT_END; tft++) { this->SetWidgetDisabledState(WID_AIC_TEXTFILE + tft, this->selected_slot == INVALID_COMPANY || (GetConfig(this->selected_slot)->GetTextfile(tft, this->selected_slot) == nullptr)); diff --git a/src/ai/ai_gui.hpp b/src/ai/ai_gui.hpp index 12c8ca859b..be6263ddd5 100644 --- a/src/ai/ai_gui.hpp +++ b/src/ai/ai_gui.hpp @@ -12,8 +12,10 @@ #include "../company_type.h" +void ShowAIListWindow(CompanyID slot); Window* ShowAIDebugWindow(CompanyID show_company = INVALID_COMPANY); void ShowAIConfigWindow(); +void ShowScriptTextfileWindow(TextfileType file_type, CompanyID slot); void ShowAIDebugWindowIfAIError(); void InitializeAIGui(); diff --git a/src/game/CMakeLists.txt b/src/game/CMakeLists.txt index aafb5a7b8d..3f25e9bbe5 100644 --- a/src/game/CMakeLists.txt +++ b/src/game/CMakeLists.txt @@ -3,6 +3,8 @@ add_files( game_config.cpp game_config.hpp game_core.cpp + game_gui.cpp + game_gui.hpp game_info.cpp game_info.hpp game_instance.cpp diff --git a/src/game/game_gui.cpp b/src/game/game_gui.cpp new file mode 100644 index 0000000000..88dc4f0c4e --- /dev/null +++ b/src/game/game_gui.cpp @@ -0,0 +1,464 @@ +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ + +/** @file game_gui.cpp %Window for configuring the Game Script */ + +#include "../stdafx.h" +#include "../table/sprites.h" +#include "../error.h" +#include "../settings_gui.h" +#include "../querystring_gui.h" +#include "../stringfilter_type.h" +#include "../company_base.h" +#include "../company_gui.h" +#include "../strings_func.h" +#include "../window_func.h" +#include "../window_type.h" +#include "../gfx_func.h" +#include "../command_func.h" +#include "../network/network.h" +#include "../settings_func.h" +#include "../network/network_content.h" +#include "../textfile_gui.h" +#include "../widgets/dropdown_type.h" +#include "../widgets/dropdown_func.h" +#include "../hotkeys.h" +#include "../core/geometry_func.hpp" +#include "../guitimer_func.h" +#include "../company_cmd.h" +#include "../misc_cmd.h" + +#include "game_gui.hpp" +#include "../ai/ai_config.hpp" +#include "../ai/ai_gui.hpp" +#include "../widgets/game_widget.h" +#include "../table/strings.h" +#include "../game/game.hpp" +#include "../game/game_config.hpp" +#include "../game/game_info.hpp" +#include "../game/game_instance.hpp" + +#include "../safeguards.h" + + +/** Widgets for the configure GS window. */ +static const NWidgetPart _nested_gs_config_widgets[] = { + NWidget(NWID_HORIZONTAL), + NWidget(WWT_CLOSEBOX, COLOUR_MAUVE), + NWidget(WWT_CAPTION, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_CAPTION_GAMESCRIPT, STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS), + NWidget(WWT_DEFSIZEBOX, COLOUR_MAUVE), + EndContainer(), + NWidget(WWT_PANEL, COLOUR_MAUVE, WID_GSC_BACKGROUND), SetFill(1, 0), SetResize(1, 0), + NWidget(NWID_SPACER), SetMinimalSize(0, 3), SetFill(1, 0), SetResize(1, 0), + NWidget(WWT_FRAME, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_GAMESCRIPT, STR_NULL), SetFill(1, 0), SetResize(1, 0), SetPadding(0, 5, 4, 5), + NWidget(WWT_MATRIX, COLOUR_MAUVE, WID_GSC_GSLIST), SetMinimalSize(288, 14), SetFill(1, 0), SetResize(1, 0), SetMatrixDataTip(1, 1, STR_AI_CONFIG_GAMELIST_TOOLTIP), + EndContainer(), + NWidget(NWID_SPACER), SetMinimalSize(0, 6), SetFill(1, 0), SetResize(1, 0), + NWidget(WWT_FRAME, COLOUR_MAUVE), SetDataTip(STR_AI_CONFIG_GAMESCRIPT_PARAM, STR_NULL), SetFill(1, 0), SetResize(1, 0), SetPadding(0, 5, 4, 5), + NWidget(NWID_HORIZONTAL), + NWidget(WWT_MATRIX, COLOUR_MAUVE, WID_GSC_SETTINGS), SetFill(1, 0), SetResize(1, 1), SetMinimalSize(188, 182), SetMatrixDataTip(1, 0, STR_NULL), SetScrollbar(WID_GSC_SCROLLBAR), + NWidget(NWID_VSCROLLBAR, COLOUR_MAUVE, WID_GSC_SCROLLBAR), + EndContainer(), + EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GSC_CHANGE), SetFill(1, 0), SetResize(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_AI_CONFIG_CHANGE_GAMESCRIPT, STR_AI_CONFIG_CHANGE_TOOLTIP), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GSC_TEXTFILE + TFT_README), SetFill(1, 0), SetResize(1, 0), SetMinimalSize(93, 0), SetDataTip(STR_TEXTFILE_VIEW_README, STR_NULL), + EndContainer(), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(7, 0, 7), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GSC_TEXTFILE + TFT_CHANGELOG), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_CHANGELOG, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GSC_TEXTFILE + TFT_LICENSE), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_TEXTFILE_VIEW_LICENCE, STR_NULL), + EndContainer(), + NWidget(WWT_PUSHTXTBTN, COLOUR_YELLOW, WID_GSC_CONTENT_DOWNLOAD), SetFill(1, 0), SetResize(1, 0), SetMinimalSize(279, 0), SetPadding(0, 7, 9, 7), SetDataTip(STR_INTRO_ONLINE_CONTENT, STR_INTRO_TOOLTIP_ONLINE_CONTENT), + EndContainer(), + NWidget(NWID_HORIZONTAL), + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), + NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GSC_ACCEPT), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_AI_SETTINGS_CLOSE, STR_NULL), + NWidget(WWT_PUSHTXTBTN, COLOUR_MAUVE, WID_GSC_RESET), SetFill(1, 0), SetResize(1, 0), SetDataTip(STR_AI_SETTINGS_RESET, STR_NULL), + EndContainer(), + NWidget(WWT_RESIZEBOX, COLOUR_MAUVE), + EndContainer(), +}; + +/** Window definition for the configure GS window. */ +static WindowDesc _gs_config_desc( + WDP_CENTER, "settings_gs_config", 500, 350, + WC_GAME_OPTIONS, WC_NONE, + 0, + _nested_gs_config_widgets, lengthof(_nested_gs_config_widgets) +); + +/** + * Window to configure which GSs will start. + */ +struct GSConfigWindow : public Window { + ScriptConfig* gs_config; ///< The configuration we're modifying. + int line_height; ///< Height of a single GS-name line. + int clicked_button; ///< The button we clicked. + bool clicked_increase; ///< Whether we clicked the increase or decrease button. + bool clicked_dropdown; ///< Whether the dropdown is open. + bool closing_dropdown; ///< True, if the dropdown list is currently closing. + GUITimer timeout; ///< Timeout for unclicking the button. + int clicked_row; ///< The clicked row of settings. + Scrollbar* vscroll; ///< Cache of the vertical scrollbar. + typedef std::vector VisibleSettingsList; ///< typdef for a vector of script settings + VisibleSettingsList visible_settings; ///< List of visible GS settings + + GSConfigWindow() : Window(&_gs_config_desc), + clicked_button(-1), + clicked_dropdown(false), + closing_dropdown(false), + timeout(0) + { + this->gs_config = GameConfig::GetConfig(); + + this->CreateNestedTree(); // Initializes 'this->line_height' as a side effect. + this->vscroll = this->GetScrollbar(WID_GSC_SCROLLBAR); + this->FinishInitNested(WN_GAME_OPTIONS_GS); + this->OnInvalidateData(0); + + this->RebuildVisibleSettings(); + } + + void Close() override + { + CloseWindowByClass(WC_AI_LIST); + this->Window::Close(); + } + + /** + * Rebuilds the list of visible settings. GS settings with the flag + * GSCONFIG_GS_DEVELOPER set will only be visible if the game setting + * gui.ai_developer_tools is enabled. + */ + void RebuildVisibleSettings() + { + visible_settings.clear(); + + for (const auto& item : *this->gs_config->GetConfigList()) { + bool no_hide = (item.flags & SCRIPTCONFIG_DEVELOPER) == 0; + if (no_hide || _settings_client.gui.ai_developer_tools) { + visible_settings.push_back(&item); + } + } + + this->vscroll->SetCount((int)this->visible_settings.size()); + } + + void UpdateWidgetSize(int widget, Dimension* size, const Dimension& padding, Dimension* fill, Dimension* resize) override + { + switch (widget) { + case WID_GSC_SETTINGS: + this->line_height = std::max(SETTING_BUTTON_HEIGHT, FONT_HEIGHT_NORMAL) + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; + resize->width = 1; + resize->height = this->line_height; + size->height = 5 * this->line_height; + break; + + case WID_GSC_GSLIST: + this->line_height = FONT_HEIGHT_NORMAL + WD_MATRIX_TOP + WD_MATRIX_BOTTOM; + size->height = 1 * this->line_height; + break; + } + } + + /** + * Can the GS config be edited? + * @return True if the given GS Config slot can be edited, otherwise false. + */ + static bool IsEditable() + { + return _game_mode != GM_NORMAL || Game::GetInstance() != nullptr; + } + + void DrawWidget(const Rect& r, int widget) const override + { + switch (widget) { + case WID_GSC_GSLIST: { + StringID text = STR_AI_CONFIG_NONE; + + if (GameConfig::GetConfig()->GetInfo() != nullptr) { + SetDParamStr(0, GameConfig::GetConfig()->GetInfo()->GetName()); + text = STR_JUST_RAW_STRING; + } + + /* There is only one slot, unlike with the GS GUI, so it should never be white */ + DrawString(r.left + 10, r.right - 10, r.top + WD_MATRIX_TOP, text, (IsEditable() ? TC_ORANGE : TC_SILVER)); + break; + } + case WID_GSC_SETTINGS: { + ScriptConfig* config = this->gs_config; + VisibleSettingsList::const_iterator it = this->visible_settings.begin(); + int i = 0; + for (; !this->vscroll->IsVisible(i); i++) it++; + + bool rtl = _current_text_dir == TD_RTL; + uint buttons_left = rtl ? r.right - SETTING_BUTTON_WIDTH - 3 : r.left + 4; + uint text_left = r.left + (rtl ? WD_FRAMERECT_LEFT : SETTING_BUTTON_WIDTH + 8); + uint text_right = r.right - (rtl ? SETTING_BUTTON_WIDTH + 8 : WD_FRAMERECT_RIGHT); + + + int y = r.top; + int button_y_offset = (this->line_height - SETTING_BUTTON_HEIGHT) / 2; + int text_y_offset = (this->line_height - FONT_HEIGHT_NORMAL) / 2; + for (; this->vscroll->IsVisible(i) && it != visible_settings.end(); i++, it++) { + const ScriptConfigItem& config_item = **it; + int current_value = config->GetSetting((config_item).name); + bool editable = this->IsEditableItem(config_item); + + StringID str; + TextColour colour; + uint idx = 0; + if (StrEmpty(config_item.description)) { + if (!strcmp(config_item.name, "start_date")) { + /* Build-in translation */ + str = STR_AI_SETTINGS_START_DELAY; + colour = TC_LIGHT_BLUE; + } else { + str = STR_JUST_STRING; + colour = TC_ORANGE; + } + } else { + str = STR_AI_SETTINGS_SETTING; + colour = TC_LIGHT_BLUE; + SetDParamStr(idx++, config_item.description); + } + + if ((config_item.flags & SCRIPTCONFIG_BOOLEAN) != 0) { + DrawBoolButton(buttons_left, y + button_y_offset, current_value != 0, editable); + SetDParam(idx++, current_value == 0 ? STR_CONFIG_SETTING_OFF : STR_CONFIG_SETTING_ON); + } else { + if (config_item.complete_labels) { + DrawDropDownButton(buttons_left, y + button_y_offset, COLOUR_YELLOW, this->clicked_row == i && clicked_dropdown, editable); + } else { + DrawArrowButtons(buttons_left, y + button_y_offset, COLOUR_YELLOW, (this->clicked_button == i) ? 1 + (this->clicked_increase != rtl) : 0, editable && current_value > config_item.min_value, editable && current_value < config_item.max_value); + } + if (config_item.labels != nullptr && config_item.labels->Contains(current_value)) { + SetDParam(idx++, STR_JUST_RAW_STRING); + SetDParamStr(idx++, config_item.labels->Find(current_value)->second); + } else { + SetDParam(idx++, STR_JUST_INT); + SetDParam(idx++, current_value); + } + } + + DrawString(text_left, text_right, y + text_y_offset, str, colour); + y += this->line_height; + } + break; + } + } + } + + void OnPaint() override + { + if (this->closing_dropdown) { + this->closing_dropdown = false; + this->clicked_dropdown = false; + } + this->DrawWidgets(); + } + + void OnClick(Point pt, int widget, int click_count) override + { + if (widget >= WID_GSC_TEXTFILE && widget < WID_GSC_TEXTFILE + TFT_END) { + if (GameConfig::GetConfig() == nullptr) return; + + ShowScriptTextfileWindow((TextfileType)(widget - WID_GSC_TEXTFILE), (CompanyID)OWNER_DEITY); + return; + } + + switch (widget) { + case WID_GSC_GSLIST: { + this->InvalidateData(); + if (click_count > 1 && _game_mode != GM_NORMAL) ShowAIListWindow((CompanyID)OWNER_DEITY); + break; + } + + case WID_GSC_CHANGE: // choose other Game Script + ShowAIListWindow((CompanyID)OWNER_DEITY); + break; + + case WID_GSC_CONTENT_DOWNLOAD: + if (!_network_available) { + ShowErrorMessage(STR_NETWORK_ERROR_NOTAVAILABLE, INVALID_STRING_ID, WL_ERROR); + } else { + ShowNetworkContentListWindow(nullptr, CONTENT_TYPE_GAME); + } + break; + case WID_GSC_SETTINGS: { + const NWidgetBase* wid = this->GetWidget(WID_GSC_SETTINGS); + int num = (pt.y - wid->pos_y) / this->line_height + this->vscroll->GetPosition(); + if (num >= (int)this->visible_settings.size()) break; + + VisibleSettingsList::const_iterator it = this->visible_settings.begin(); + for (int i = 0; i < num; i++) it++; + const ScriptConfigItem config_item = **it; + if (!this->IsEditableItem(config_item)) return; + + if (this->clicked_row != num) { + this->CloseChildWindows(WC_QUERY_STRING); + HideDropDownMenu(this); + this->clicked_row = num; + this->clicked_dropdown = false; + } + + bool bool_item = (config_item.flags & SCRIPTCONFIG_BOOLEAN) != 0; + + int x = pt.x - wid->pos_x; + if (_current_text_dir == TD_RTL) x = wid->current_x - 1 - x; + x -= 4; + + /* One of the arrows is clicked (or green/red rect in case of bool value) */ + int old_val = this->gs_config->GetSetting(config_item.name); + if (!bool_item && IsInsideMM(x, 0, SETTING_BUTTON_WIDTH) && config_item.complete_labels) { + if (this->clicked_dropdown) { + /* unclick the dropdown */ + HideDropDownMenu(this); + this->clicked_dropdown = false; + this->closing_dropdown = false; + } else { + const NWidgetBase* wid = this->GetWidget(WID_GSC_SETTINGS); + int rel_y = (pt.y - (int)wid->pos_y) % this->line_height; + + Rect wi_rect; + wi_rect.left = pt.x - (_current_text_dir == TD_RTL ? SETTING_BUTTON_WIDTH - 1 - x : x); + wi_rect.right = wi_rect.left + SETTING_BUTTON_WIDTH - 1; + wi_rect.top = pt.y - rel_y + (this->line_height - SETTING_BUTTON_HEIGHT) / 2; + wi_rect.bottom = wi_rect.top + SETTING_BUTTON_HEIGHT - 1; + + /* If the mouse is still held but dragged outside of the dropdown list, keep the dropdown open */ + if (pt.y >= wi_rect.top && pt.y <= wi_rect.bottom) { + this->clicked_dropdown = true; + this->closing_dropdown = false; + + DropDownList list; + for (int i = config_item.min_value; i <= config_item.max_value; i++) { + list.emplace_back(new DropDownListCharStringItem(config_item.labels->Find(i)->second, i, false)); + } + + ShowDropDownListAt(this, std::move(list), old_val, -1, wi_rect, COLOUR_ORANGE, true); + } + } + } else if (IsInsideMM(x, 0, SETTING_BUTTON_WIDTH)) { + int new_val = old_val; + if (bool_item) { + new_val = !new_val; + } else if (x >= SETTING_BUTTON_WIDTH / 2) { + /* Increase button clicked */ + new_val += config_item.step_size; + if (new_val > config_item.max_value) new_val = config_item.max_value; + this->clicked_increase = true; + } else { + /* Decrease button clicked */ + new_val -= config_item.step_size; + if (new_val < config_item.min_value) new_val = config_item.min_value; + this->clicked_increase = false; + } + + if (new_val != old_val) { + this->gs_config->SetSetting(config_item.name, new_val); + this->clicked_button = num; + this->timeout.SetInterval(150); + } + } else if (!bool_item && !config_item.complete_labels) { + /* Display a query box so users can enter a custom value. */ + SetDParam(0, old_val); + ShowQueryString(STR_JUST_INT, STR_CONFIG_SETTING_QUERY_CAPTION, 10, this, CS_NUMERAL, QSF_NONE); + } + this->SetDirty(); + break; + } + + case WID_GSC_ACCEPT: + this->Close(); + break; + + case WID_GSC_RESET: + this->gs_config->ResetEditableSettings(_game_mode == GM_MENU); + this->SetDirty(); + break; + } + } + + void OnQueryTextFinished(char* str) override + { + if (StrEmpty(str)) return; + int32 value = atoi(str); + SetValue(value); + } + + void OnDropdownSelect(int widget, int index) override + { + assert(this->clicked_dropdown); + SetValue(index); + } + + void OnDropdownClose(Point pt, int widget, int index, bool instant_close) override + { + /* We cannot raise the dropdown button just yet. OnClick needs some hint, whether + * the same dropdown button was clicked again, and then not open the dropdown again. + * So, we only remember that it was closed, and process it on the next OnPaint, which is + * after OnClick. */ + assert(this->clicked_dropdown); + this->closing_dropdown = true; + this->SetDirty(); + } + + void OnResize() override + { + this->vscroll->SetCapacityFromWidget(this, WID_GSC_SETTINGS); + } + + void OnRealtimeTick(uint delta_ms) override + { + if (this->timeout.Elapsed(delta_ms)) { + this->clicked_button = -1; + this->SetDirty(); + } + } + + /** + * Some data on this window has become invalid. + * @param data Information about the changed data. + * @param gui_scope Whether the call is done from GUI scope. You may not do everything when not in GUI scope. See #InvalidateWindowData() for details. + */ + void OnInvalidateData(int data = 0, bool gui_scope = true) override + { + if (!gui_scope) return; + + this->SetWidgetDisabledState(WID_GSC_CHANGE, (_game_mode == GM_NORMAL) || !IsEditable()); + + for (TextfileType tft = TFT_BEGIN; tft < TFT_END; tft++) { + this->SetWidgetDisabledState(WID_GSC_TEXTFILE + tft, GameConfig::GetConfig()->GetTextfile(tft, (CompanyID)OWNER_DEITY) == nullptr); + } + this->RebuildVisibleSettings(); + HideDropDownMenu(this); + this->CloseChildWindows(WC_QUERY_STRING); + } +private: + bool IsEditableItem(const ScriptConfigItem &config_item) const + { + return _game_mode == GM_MENU || (config_item.flags & SCRIPTCONFIG_INGAME) != 0; + } + + void SetValue(int value) + { + VisibleSettingsList::const_iterator it = this->visible_settings.begin(); + for (int i = 0; i < this->clicked_row; i++) it++; + const ScriptConfigItem config_item = **it; + if (_game_mode == GM_NORMAL && (config_item.flags & SCRIPTCONFIG_INGAME) == 0) return; + this->gs_config->SetSetting(config_item.name, value); + this->SetDirty(); + } +}; + +/** Open the GS config window. */ +void ShowGSConfigWindow() +{ + CloseWindowByClass(WC_GAME_OPTIONS); + new GSConfigWindow(); +} diff --git a/src/game/game_gui.hpp b/src/game/game_gui.hpp new file mode 100644 index 0000000000..d0159a00d5 --- /dev/null +++ b/src/game/game_gui.hpp @@ -0,0 +1,15 @@ +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute itand /or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details.You should have received a copy of the GNU General Public License along with OpenTTD.If not, see < http://www.gnu.org/licenses/>. + */ + +/** @file game_gui.hpp %Window for configuring the Games */ + +#ifndef GAME_GUI_HPP +#define GAME_GUI_HPP + +void ShowGSConfigWindow(); + +#endif /* AI_GUI_HPP */ diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp index f0583d9874..86253c6e3f 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -30,6 +30,8 @@ #include "newgrf_townname.h" #include "townname_type.h" #include "video/video_driver.hpp" +#include "ai/ai_gui.hpp" +#include "game/game_gui.hpp" #include "widgets/genworld_widget.h" @@ -86,38 +88,42 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(NWID_SPACER), SetFill(1, 0), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 11), + /* Generation options. */ NWidget(NWID_HORIZONTAL), SetPIP(10, 5, 10), - NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), - /* Left column with labels. */ - NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_LAND_GENERATOR, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TERRAIN_TYPE, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_VARIETY, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SEA_LEVEL, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BORDER_TYPE, STR_NULL), SetFill(1, 1), - EndContainer(), - /* Widgets at the right of the labels. */ - NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), - /* Mapsize X * Y. */ - NWidget(NWID_HORIZONTAL), SetPIP(0, 4, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_X_PULLDOWN), SetDataTip(STR_JUST_INT, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 0), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BY, STR_NULL), SetPadding(1, 0, 0, 0), SetFill(1, 1), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_Y_PULLDOWN), SetDataTip(STR_JUST_INT, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 0), + /* Left half (land generation options) */ + NWidget(NWID_VERTICAL), + NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), + /* Labels on the left side (global column 1). */ + NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_LAND_GENERATOR, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TERRAIN_TYPE, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_VARIETY, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BORDER_TYPE, STR_NULL), SetFill(1, 1), + EndContainer(), + /* Widgets on the right side (global column 2). */ + NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), + /* Mapsize X * Y. */ + NWidget(NWID_HORIZONTAL), SetPIP(0, 4, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_X_PULLDOWN), SetDataTip(STR_JUST_INT, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 0), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_BY, STR_NULL), SetPadding(1, 0, 0, 0), SetFill(1, 1), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_Y_PULLDOWN), SetDataTip(STR_JUST_INT, STR_MAPGEN_MAPSIZE_TOOLTIP), SetFill(1, 0), + EndContainer(), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_LANDSCAPE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TERRAIN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_VARIETY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_SMOOTHNESS_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_BORDERS_RANDOM), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_LANDSCAPE_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TERRAIN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_VARIETY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_WATER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_BORDERS_RANDOM), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), EndContainer(), - NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), + /* Right half (all other options) */ + NWidget(NWID_VERTICAL), NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), + /* Labels on the left side (global column 3). */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_LABEL), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_COVERAGE, STR_NULL), SetFill(1, 1), @@ -125,11 +131,14 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(NWID_SPACER), EndContainer(), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SMOOTHNESS, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TOWN_NAME_LABEL, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SEA_LEVEL, STR_NULL), SetFill(1, 1), EndContainer(), + /* Widgets on the right side (global column 4). */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), + /* Climate selector. */ NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_SELECTOR), /* Snow coverage. */ NWidget(NWID_HORIZONTAL), @@ -143,7 +152,7 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_DESERT_COVERAGE_TEXT, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_DESERT_COVERAGE_UP), SetFill(0, 1), EndContainer(), - /* Temperate/Toyland spacer */ + /* Temperate/Toyland spacer. */ NWidget(NWID_SPACER), EndContainer(), /* Starting date. */ @@ -152,12 +161,12 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1), EndContainer(), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_SMOOTHNESS_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWNNAME_DROPDOWN), SetDataTip(STR_BLACK_STRING, STR_MAPGEN_TOWN_NAME_DROPDOWN_TOOLTIP), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_WATER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), EndContainer(), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1), EndContainer(), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 4), @@ -186,6 +195,16 @@ static const NWidgetPart _nested_generate_landscape_widgets[] = { NWidget(NWID_SPACER), SetFill(1, 1), EndContainer(), EndContainer(), + NWidget(NWID_SPACER), SetMinimalSize(0, 6), SetFill(1, 1), + /* AI, GS, and NewGRF settings */ + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(10, 0, 10), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_AI_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_AI_SETTINGS, STR_MAPGEN_AI_SETTINGS_TOOLTIP), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_GS_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_GS_SETTINGS, STR_MAPGEN_GS_SETTINGS_TOOLTIP), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_NEWGRF_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_NEWGRF_SETTINGS, STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP), SetFill(1, 0), + EndContainer(), + NWidget(NWID_SPACER), SetMinimalSize(0, 7), SetFill(1, 1), + /* Generate */ + NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 36), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetPadding(0, 10, 0, 10), SetFill(1, 1), NWidget(NWID_SPACER), SetMinimalSize(0, 9), SetFill(1, 1), EndContainer(), }; @@ -212,21 +231,24 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { NWidget(NWID_SPACER), SetFill(1, 0), EndContainer(), NWidget(NWID_SPACER), SetMinimalSize(0, 11), SetFill(0, 1), + /* Generation options. */ NWidget(NWID_HORIZONTAL), SetPIP(10, 3, 10), - /* Labels at the left side. */ + /* Left half labels (global column 1) and heightmap name label */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), + /* Heightmap name label. */ NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_NAME, STR_NULL), SetFill(1, 1), + /* Land generation option labels */ NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE_LABEL, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_MAPSIZE, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_ROTATION, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_HEIGHT, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_QUANTITY_OF_RIVERS, STR_NULL), SetFill(1, 1), EndContainer(), - /* Widgets at the right of the labels. */ + /* All other columns. */ NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), NWidget(WWT_TEXT, COLOUR_ORANGE, WID_GL_HEIGHTMAP_NAME_TEXT), SetTextColour(TC_ORANGE), SetDataTip(STR_JUST_RAW_STRING, STR_EMPTY), SetFill(1, 0), NWidget(NWID_HORIZONTAL), SetPIP(0, 5, 0), + /* Left half widgets (global column 2) */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), NWidget(WWT_TEXT, COLOUR_ORANGE, WID_GL_HEIGHTMAP_SIZE_TEXT), SetDataTip(STR_MAPGEN_HEIGHTMAP_SIZE, STR_NULL), SetFill(1, 0), /* Mapsize X * Y. */ @@ -236,14 +258,18 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_MAPSIZE_Y_PULLDOWN), SetDataTip(STR_JUST_INT, STR_NULL), SetFill(1, 0), EndContainer(), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_ROTATION_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), - NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + /* Heightmap highest peak. */ + NWidget(NWID_HORIZONTAL), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN), SetFill(0, 1), + NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), + NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_HEIGHTMAP_HEIGHT_UP), SetFill(0, 1), + EndContainer(), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_RIVER_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), NWidget(NWID_VERTICAL), SetPIP(0, 4, 0), NWidget(NWID_HORIZONTAL), SetPIP(0, 3, 0), + /* Right half labels (global column 3) */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), - NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_HEIGHTMAP_HEIGHT, STR_NULL), SetFill(1, 1), NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_LABEL), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_SNOW_COVERAGE, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DESERT_COVERAGE, STR_NULL), SetFill(1, 1), @@ -251,39 +277,53 @@ static const NWidgetPart _nested_heightmap_load_widgets[] = { EndContainer(), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_DATE, STR_NULL), SetFill(1, 1), NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_TOWN_NAME_LABEL, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_TOWNS, STR_NULL), SetFill(1, 1), + NWidget(WWT_TEXT, COLOUR_ORANGE), SetDataTip(STR_MAPGEN_NUMBER_OF_INDUSTRIES, STR_NULL), SetFill(1, 1), EndContainer(), + /* Right half widgets (global column 4) */ NWidget(NWID_VERTICAL, NC_EQUALSIZE), SetPIP(0, 4, 0), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_HEIGHTMAP_HEIGHT_DOWN), SetFill(0, 1), - NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_TEXT), SetDataTip(STR_BLACK_INT, STR_NULL), SetFill(1, 0), - NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_HEIGHTMAP_HEIGHT_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_HEIGHTMAP_HEIGHT_UP), SetFill(0, 1), - EndContainer(), + /* Climate selector. */ NWidget(NWID_SELECTION, INVALID_COLOUR, WID_GL_CLIMATE_SEL_SELECTOR), + /* Snow coverage. */ NWidget(NWID_HORIZONTAL), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_SNOW_COVERAGE_DOWN), SetFill(0, 1), NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_SNOW_COVERAGE_TEXT, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_SNOW_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_SNOW_COVERAGE_UP), SetFill(0, 1), EndContainer(), + /* Desert coverage. */ NWidget(NWID_HORIZONTAL), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_MAPGEN_DESERT_COVERAGE_DOWN), SetFill(0, 1), NWidget(WWT_TEXTBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_TEXT), SetDataTip(STR_MAPGEN_DESERT_COVERAGE_TEXT, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_DESERT_COVERAGE_UP), SetDataTip(SPR_ARROW_UP, STR_MAPGEN_DESERT_COVERAGE_UP), SetFill(0, 1), EndContainer(), + /* Temperate/Toyland spacer. */ NWidget(NWID_SPACER), EndContainer(), + /* Starting date. */ NWidget(NWID_HORIZONTAL), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_DOWN), SetDataTip(SPR_ARROW_DOWN, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_BACKWARD), SetFill(0, 1), NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_START_DATE_TEXT), SetDataTip(STR_BLACK_DATE_LONG, STR_NULL), SetFill(1, 0), NWidget(WWT_IMGBTN, COLOUR_ORANGE, WID_GL_START_DATE_UP), SetDataTip(SPR_ARROW_UP, STR_SCENEDIT_TOOLBAR_TOOLTIP_MOVE_THE_STARTING_DATE_FORWARD), SetFill(0, 1), EndContainer(), NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWNNAME_DROPDOWN), SetDataTip(STR_BLACK_STRING, STR_MAPGEN_TOWN_NAME_DROPDOWN_TOOLTIP), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_TOWN_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), + NWidget(WWT_DROPDOWN, COLOUR_ORANGE, WID_GL_INDUSTRY_PULLDOWN), SetDataTip(STR_JUST_STRING, STR_NULL), SetFill(1, 0), EndContainer(), EndContainer(), - NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 0), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetFill(1, 1), EndContainer(), EndContainer(), EndContainer(), EndContainer(), + NWidget(NWID_SPACER), SetMinimalSize(0, 6), SetFill(1, 1), + /* AI, GS, and NewGRF settings */ + NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), SetPIP(10, 0, 10), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_AI_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_AI_SETTINGS, STR_MAPGEN_AI_SETTINGS_TOOLTIP), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_GS_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_GS_SETTINGS, STR_MAPGEN_GS_SETTINGS_TOOLTIP), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_GL_NEWGRF_BUTTON), SetMinimalSize(0, 24), SetDataTip(STR_MAPGEN_NEWGRF_SETTINGS, STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP), SetFill(1, 0), + EndContainer(), + NWidget(NWID_SPACER), SetMinimalSize(0, 7), SetFill(1, 1), + /* Generate */ + NWidget(WWT_PUSHTXTBTN, COLOUR_GREEN, WID_GL_GENERATE_BUTTON), SetMinimalSize(84, 36), SetDataTip(STR_MAPGEN_GENERATE, STR_NULL), SetPadding(0, 10, 0, 10), SetFill(1, 1), NWidget(NWID_SPACER), SetMinimalSize(0, 9), SetFill(1, 1), EndContainer(), }; @@ -815,6 +855,18 @@ struct GenerateLandscapeWindow : public Window { _settings_newgame.game_creation.water_borders = (_settings_newgame.game_creation.water_borders == BORDERS_RANDOM) ? 0 : BORDERS_RANDOM; this->InvalidateData(); break; + + case WID_GL_AI_BUTTON: ///< AI Settings + ShowAIConfigWindow(); + break; + + case WID_GL_GS_BUTTON: ///< Game Script Settings + ShowGSConfigWindow(); + break; + + case WID_GL_NEWGRF_BUTTON: ///< NewGRF Settings + ShowNewGRFSettings(true, true, false, &_grfconfig_newgame); + break; } } diff --git a/src/intro_gui.cpp b/src/intro_gui.cpp index fe19ec0632..001736a8f5 100644 --- a/src/intro_gui.cpp +++ b/src/intro_gui.cpp @@ -22,6 +22,7 @@ #include "strings_func.h" #include "fios.h" #include "ai/ai_gui.hpp" +#include "game/game_gui.hpp" #include "gfx_func.h" #include "core/geometry_func.hpp" #include "language.h" @@ -368,6 +369,7 @@ struct SelectGameWindow : public Window { } break; case WID_SGI_AI_SETTINGS: ShowAIConfigWindow(); break; + case WID_SGI_GS_SETTINGS: ShowGSConfigWindow(); break; case WID_SGI_EXIT: HandleExitGameRequest(); break; } } @@ -447,11 +449,13 @@ static const NWidgetPart _nested_select_game_widgets[] = { NWidget(NWID_SPACER), SetMinimalSize(0, 6), - /* 'script settings' and 'newgrf settings' buttons */ + /* 'AO settings', 'Game Script settings', and 'newgrf settings' buttons */ NWidget(NWID_HORIZONTAL, NC_EQUALSIZE), - NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_AI_SETTINGS), SetMinimalSize(158, 12), - SetDataTip(STR_INTRO_SCRIPT_SETTINGS, STR_INTRO_TOOLTIP_SCRIPT_SETTINGS), SetPadding(0, 0, 0, 10), SetFill(1, 0), - NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_GRF_SETTINGS), SetMinimalSize(158, 12), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_AI_SETTINGS), SetMinimalSize(105, 12), + SetDataTip(STR_INTRO_AI_SETTINGS, STR_INTRO_TOOLTIP_AI_SETTINGS), SetPadding(0, 0, 0, 10), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_GS_SETTINGS), SetMinimalSize(106, 12), + SetDataTip(STR_INTRO_GAMESCRIPT_SETTINGS, STR_INTRO_TOOLTIP_GAMESCRIPT_SETTINGS), SetPadding(0, 0, 0, 0), SetFill(1, 0), + NWidget(WWT_PUSHTXTBTN, COLOUR_ORANGE, WID_SGI_GRF_SETTINGS), SetMinimalSize(105, 12), SetDataTip(STR_INTRO_NEWGRF_SETTINGS, STR_INTRO_TOOLTIP_NEWGRF_SETTINGS), SetPadding(0, 10, 0, 0), SetFill(1, 0), EndContainer(), diff --git a/src/lang/english.txt b/src/lang/english.txt index 8983b60402..9ddae0f670 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -401,10 +401,11 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Exit # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Game options STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Settings -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings +STR_SETTINGS_MENU_AI_SETTINGS :AI settings +STR_SETTINGS_MENU_GAMESCRIPT_SETTINGS :Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Town names displayed @@ -2068,7 +2069,8 @@ STR_INTRO_HIGHSCORE :{BLACK}Highscor STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings +STR_INTRO_AI_SETTINGS :{BLACK}AI Settings +STR_INTRO_GAMESCRIPT_SETTINGS :{BLACK}Game Script Settings STR_INTRO_QUIT :{BLACK}Exit STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start a new game. Ctrl+Click skips map configuration @@ -2088,7 +2090,8 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Display settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings +STR_INTRO_TOOLTIP_AI_SETTINGS :{BLACK}Display AI settings +STR_INTRO_TOOLTIP_GAMESCRIPT_SETTINGS :{BLACK}Display Game script settings STR_INTRO_TOOLTIP_QUIT :{BLACK}Exit 'OpenTTD' STR_INTRO_BASESET :{BLACK}The currently selected base graphics set is missing {NUM} sprite{P "" s}. Please check for updates for the baseset. @@ -3148,6 +3151,12 @@ STR_MAPGEN_QUANTITY_OF_RIVERS :{BLACK}Rivers: STR_MAPGEN_SMOOTHNESS :{BLACK}Smoothness: STR_MAPGEN_VARIETY :{BLACK}Variety distribution: STR_MAPGEN_GENERATE :{WHITE}Generate +STR_MAPGEN_NEWGRF_SETTINGS :{BLACK}NewGRF Settings +STR_MAPGEN_NEWGRF_SETTINGS_TOOLTIP :{BLACK}Display NewGRF settings +STR_MAPGEN_AI_SETTINGS :{BLACK}AI Settings +STR_MAPGEN_AI_SETTINGS_TOOLTIP :{BLACK}Display AI settings +STR_MAPGEN_GS_SETTINGS :{BLACK}Game Script Settings +STR_MAPGEN_GS_SETTINGS_TOOLTIP :{BLACK}Display game script settings ###length 21 STR_MAPGEN_TOWN_NAME_ORIGINAL_ENGLISH :English (Original) @@ -4550,7 +4559,8 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}One of t STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Game Script Debug window is only available for the server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Game Script Configuration +STR_AI_CONFIG_CAPTION_AI :{WHITE}AI Configuration +STR_AI_CONFIG_CAPTION_GAMESCRIPT :{WHITE}Game Script Configuration STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}The Game Script that will be loaded in the next game STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}The AIs that will be loaded in the next game STR_AI_CONFIG_HUMAN_PLAYER :Human player @@ -4564,12 +4574,11 @@ STR_AI_CONFIG_MOVE_DOWN :{BLACK}Move Dow STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Move selected AI down in the list STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script +STR_AI_CONFIG_GAMESCRIPT_PARAM :{SILVER}Parameters STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Select {STRING} -STR_AI_CONFIG_CHANGE_NONE : -STR_AI_CONFIG_CHANGE_AI :AI -STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script +STR_AI_CONFIG_CHANGE_AI :{BLACK}Select AI +STR_AI_CONFIG_CHANGE_GAMESCRIPT :{BLACK}Select Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Load another script STR_AI_CONFIG_CONFIGURE :{BLACK}Configure STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Configure the parameters of the Script @@ -4598,9 +4607,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Heightma STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap screenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters -STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script +STR_AI_SETTINGS_CAPTION_AI :{WHITE}AI Parameters STR_AI_SETTINGS_CLOSE :{BLACK}Close STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{RAW_STRING}: {ORANGE}{STRING1} diff --git a/src/toolbar_gui.cpp b/src/toolbar_gui.cpp index 8c2db4d887..7f04511636 100644 --- a/src/toolbar_gui.cpp +++ b/src/toolbar_gui.cpp @@ -33,6 +33,7 @@ #include "console_gui.h" #include "news_gui.h" #include "ai/ai_gui.hpp" +#include "game/game_gui.hpp" #include "tilehighlight_func.h" #include "smallmap_gui.h" #include "graph_gui.h" @@ -292,7 +293,8 @@ static CallBackFunction ToolbarFastForwardClick(Window *w) enum OptionMenuEntries { OME_GAMEOPTIONS, OME_SETTINGS, - OME_SCRIPT_SETTINGS, + OME_AI_SETTINGS, + OME_GAMESCRIPT_SETTINGS, OME_NEWGRFSETTINGS, OME_TRANSPARENCIES, OME_SHOW_TOWNNAMES, @@ -320,7 +322,10 @@ static CallBackFunction ToolbarOptionsClick(Window *w) /* Changes to the per-AI settings don't get send from the server to the clients. Clients get * the settings once they join but never update it. As such don't show the window at all * to network clients. */ - if (!_networking || _network_server) list.emplace_back(new DropDownListStringItem(STR_SETTINGS_MENU_SCRIPT_SETTINGS, OME_SCRIPT_SETTINGS, false)); + if (!_networking || _network_server) { + list.emplace_back(new DropDownListStringItem(STR_SETTINGS_MENU_AI_SETTINGS, OME_AI_SETTINGS, false)); + list.emplace_back(new DropDownListStringItem(STR_SETTINGS_MENU_GAMESCRIPT_SETTINGS, OME_GAMESCRIPT_SETTINGS, false)); + } list.emplace_back(new DropDownListStringItem(STR_SETTINGS_MENU_NEWGRF_SETTINGS, OME_NEWGRFSETTINGS, false)); list.emplace_back(new DropDownListStringItem(STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS, OME_TRANSPARENCIES, false)); list.emplace_back(new DropDownListItem(-1, false)); @@ -350,7 +355,8 @@ static CallBackFunction MenuClickSettings(int index) switch (index) { case OME_GAMEOPTIONS: ShowGameOptions(); return CBF_NONE; case OME_SETTINGS: ShowGameSettings(); return CBF_NONE; - case OME_SCRIPT_SETTINGS: ShowAIConfigWindow(); return CBF_NONE; + case OME_AI_SETTINGS: ShowAIConfigWindow(); return CBF_NONE; + case OME_GAMESCRIPT_SETTINGS: ShowGSConfigWindow(); return CBF_NONE; case OME_NEWGRFSETTINGS: ShowNewGRFSettings(!_networking && _settings_client.gui.UserIsAllowedToChangeNewGRFs(), true, true, &_grfconfig); return CBF_NONE; case OME_TRANSPARENCIES: ShowTransparencyToolbar(); break; diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt index 5586870a3a..61490fff8a 100644 --- a/src/widgets/CMakeLists.txt +++ b/src/widgets/CMakeLists.txt @@ -19,6 +19,7 @@ add_files( error_widget.h fios_widget.h framerate_widget.h + game_widget.h genworld_widget.h goal_widget.h graph_widget.h diff --git a/src/widgets/ai_widget.h b/src/widgets/ai_widget.h index 163894df4c..f09ab21210 100644 --- a/src/widgets/ai_widget.h +++ b/src/widgets/ai_widget.h @@ -38,7 +38,6 @@ enum AIConfigWidgets { WID_AIC_DECREASE, ///< Decrease the number of AIs. WID_AIC_INCREASE, ///< Increase the number of AIs. WID_AIC_NUMBER, ///< Number of AIs. - WID_AIC_GAMELIST, ///< List with current selected GameScript. WID_AIC_LIST, ///< List with currently selected AIs. WID_AIC_SCROLLBAR, ///< Scrollbar to scroll through the selected AIs. WID_AIC_MOVE_UP, ///< Move up button. diff --git a/src/widgets/game_widget.h b/src/widgets/game_widget.h new file mode 100644 index 0000000000..0d2d0950b3 --- /dev/null +++ b/src/widgets/game_widget.h @@ -0,0 +1,28 @@ +/* + * This file is part of OpenTTD. + * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. + * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see . + */ + +/** @file ai_widget.h Types related to the ai widgets. */ + +#ifndef WIDGETS_GS_WIDGET_H +#define WIDGETS_GS_WIDGET_H + +#include "../textfile_type.h" + +/** Widgets of the #GSConfigWindow class. */ +enum GSConfigWidgets { + WID_GSC_BACKGROUND, ///< Window background. + WID_GSC_GSLIST, ///< List with current selected Game Script. + WID_GSC_SETTINGS, ///< Panel to draw the Game Script settings on + WID_GSC_SCROLLBAR, ///< Scrollbar to scroll through the selected AIs. + WID_GSC_CHANGE, ///< Select another Game Script button. + WID_GSC_TEXTFILE, ///< Open GS readme, changelog (+1) or license (+2). + WID_GSC_CONTENT_DOWNLOAD = WID_GSC_TEXTFILE + TFT_END, ///< Download content button. + WID_GSC_ACCEPT, ///< Accept ("Close") button + WID_GSC_RESET, ///< Reset button. +}; + +#endif /* WIDGETS_GS_WIDGET_H */ diff --git a/src/widgets/genworld_widget.h b/src/widgets/genworld_widget.h index 6644dc1aa7..34d2f149d8 100644 --- a/src/widgets/genworld_widget.h +++ b/src/widgets/genworld_widget.h @@ -60,6 +60,10 @@ enum GenerateLandscapeWidgets { WID_GL_WATER_SE, ///< SE 'Water'/'Freeform'. WID_GL_WATER_SW, ///< SW 'Water'/'Freeform'. + WID_GL_AI_BUTTON, ///< 'AI Settings' button. + WID_GL_GS_BUTTON, ///< 'Game Script Settings' button. + WID_GL_NEWGRF_BUTTON, ///< 'NewGRF Settings' button. + WID_GL_CLIMATE_SEL_LABEL, ///< NWID_SELECTION for snow or desert coverage label WID_GL_CLIMATE_SEL_SELECTOR, ///< NWID_SELECTION for snow or desert coverage selector }; diff --git a/src/widgets/intro_widget.h b/src/widgets/intro_widget.h index d2eeacf64a..dc152a488b 100644 --- a/src/widgets/intro_widget.h +++ b/src/widgets/intro_widget.h @@ -32,6 +32,7 @@ enum SelectGameIntroWidgets { WID_SGI_GRF_SETTINGS, ///< NewGRF button. WID_SGI_CONTENT_DOWNLOAD, ///< Content Download button. WID_SGI_AI_SETTINGS, ///< AI button. + WID_SGI_GS_SETTINGS, ///< Game Script button. WID_SGI_EXIT, ///< Exit button. }; diff --git a/src/window_type.h b/src/window_type.h index 6eb9573b60..8b1c0cd80a 100644 --- a/src/window_type.h +++ b/src/window_type.h @@ -13,6 +13,7 @@ /** %Window numbers. */ enum WindowNumberEnum { WN_GAME_OPTIONS_AI = 0, ///< AI settings. + WN_GAME_OPTIONS_GS, ///< GS settings. WN_GAME_OPTIONS_ABOUT, ///< About window. WN_GAME_OPTIONS_NEWGRF_STATE, ///< NewGRF settings. WN_GAME_OPTIONS_GAME_OPTIONS, ///< Game options. @@ -596,6 +597,7 @@ enum WindowClass { /** * Game options window; %Window numbers: * - #WN_GAME_OPTIONS_AI = #AIConfigWidgets + * - #WN_GAME_OPTIONS_GS = #GSConfigWidgets * - #WN_GAME_OPTIONS_ABOUT = #AboutWidgets * - #WN_GAME_OPTIONS_NEWGRF_STATE = #NewGRFStateWidgets * - #WN_GAME_OPTIONS_GAME_OPTIONS = #GameOptionsWidgets From 3f579fa7dce74147bda7d14bff215a8275393552 Mon Sep 17 00:00:00 2001 From: translators Date: Fri, 11 Nov 2022 18:54:11 +0000 Subject: [PATCH 10/16] Update: Translations from eints dutch: 12 changes by Afoklala --- src/lang/afrikaans.txt | 10 +--------- src/lang/arabic_egypt.txt | 7 +------ src/lang/basque.txt | 10 +--------- src/lang/belarusian.txt | 10 +--------- src/lang/brazilian_portuguese.txt | 10 +--------- src/lang/bulgarian.txt | 10 +--------- src/lang/catalan.txt | 10 +--------- src/lang/chuvash.txt | 3 +-- src/lang/croatian.txt | 10 +--------- src/lang/czech.txt | 10 +--------- src/lang/danish.txt | 10 +--------- src/lang/dutch.txt | 22 +++++++++++++--------- src/lang/english_AU.txt | 10 +--------- src/lang/english_US.txt | 10 +--------- src/lang/esperanto.txt | 6 +----- src/lang/estonian.txt | 10 +--------- src/lang/faroese.txt | 10 +--------- src/lang/finnish.txt | 10 +--------- src/lang/french.txt | 10 +--------- src/lang/frisian.txt | 10 +--------- src/lang/gaelic.txt | 10 +--------- src/lang/galician.txt | 10 +--------- src/lang/german.txt | 10 +--------- src/lang/greek.txt | 10 +--------- src/lang/hebrew.txt | 10 +--------- src/lang/hindi.txt | 3 +-- src/lang/hungarian.txt | 10 +--------- src/lang/icelandic.txt | 10 +--------- src/lang/ido.txt | 3 +-- src/lang/indonesian.txt | 10 +--------- src/lang/irish.txt | 10 +--------- src/lang/italian.txt | 10 +--------- src/lang/japanese.txt | 10 +--------- src/lang/korean.txt | 10 +--------- src/lang/latin.txt | 10 +--------- src/lang/latvian.txt | 10 +--------- src/lang/lithuanian.txt | 10 +--------- src/lang/luxembourgish.txt | 10 +--------- src/lang/macedonian.txt | 7 +------ src/lang/malay.txt | 10 +--------- src/lang/maltese.txt | 3 +-- src/lang/marathi.txt | 4 +--- src/lang/norwegian_bokmal.txt | 11 +---------- src/lang/norwegian_nynorsk.txt | 10 +--------- src/lang/persian.txt | 10 +--------- src/lang/polish.txt | 10 +--------- src/lang/portuguese.txt | 10 +--------- src/lang/romanian.txt | 10 +--------- src/lang/russian.txt | 10 +--------- src/lang/serbian.txt | 10 +--------- src/lang/simplified_chinese.txt | 10 +--------- src/lang/slovak.txt | 10 +--------- src/lang/slovenian.txt | 10 +--------- src/lang/spanish.txt | 10 +--------- src/lang/spanish_MX.txt | 10 +--------- src/lang/swedish.txt | 10 +--------- src/lang/tamil.txt | 10 +--------- src/lang/thai.txt | 10 +--------- src/lang/traditional_chinese.txt | 10 +--------- src/lang/turkish.txt | 10 +--------- src/lang/ukrainian.txt | 10 +--------- src/lang/urdu.txt | 6 +----- src/lang/vietnamese.txt | 10 +--------- src/lang/welsh.txt | 10 +--------- 64 files changed, 76 insertions(+), 529 deletions(-) diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt index 7140d7adbf..fa3d64399c 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -383,10 +383,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Verlaat # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spel opsies STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Stellings -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spel skript instellings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF stellings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Deursigtigheid opsies STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Dorp name vertoon @@ -1955,7 +1954,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Hoogste STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Stellings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Stellings STR_INTRO_ONLINE_CONTENT :{BLACK}Soek aanlyn -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spel Skript Instellings STR_INTRO_QUIT :{BLACK}Verlaat STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Begin nuwe spel. Ctrl+klik ignoreer kaart konfigurasie @@ -1975,7 +1973,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vertoon STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Vertoon instellings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Wys NewGRF stellings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kyk vir nuwe of bygewerkde inhoud om af te laai -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vertoon AI/Spel skript konfigurasie STR_INTRO_TOOLTIP_QUIT :{BLACK}Verlaat 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}Die vertaling kort {NUM} string{P "" s}. Help aseblief om OpenTTD beter te maak, deur aan te sluit as 'n vertaaler. Sien die readme.txt vir meer inligting. @@ -4253,7 +4250,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Een van STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Rekenaar Speler/Spel Skrip Ontfout venster is slegs beskikbaar aan die verskaffer # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Spel Konfigurasie STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spel Skrip wat in die volgende spel gelaai sal word STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Die AIs wat om die volgende spel gelaai sal word STR_AI_CONFIG_HUMAN_PLAYER :Mens Speler @@ -4269,8 +4265,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Beweeg g STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spel Skrip STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Selekteer {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spel Skrip STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Laai nog 'n script @@ -4301,9 +4295,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Hoogteka STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap-skermkiekie # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Speletjie Skrif STR_AI_SETTINGS_CLOSE :{BLACK}Maak toe STR_AI_SETTINGS_RESET :{BLACK}Herstel STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt index 6b1b85e531..44856677f9 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -381,10 +381,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :انهاء # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :إعدادات اللعبه STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :الإعدادات -STR_SETTINGS_MENU_SCRIPT_SETTINGS :الذكاء الصناعي/ اعدادات اللعبة STR_SETTINGS_MENU_NEWGRF_SETTINGS :إعدادات اﻹضافات STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :خيارات الشفافية STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :عرض اسماء المدن @@ -1727,7 +1726,6 @@ STR_INTRO_HIGHSCORE :{BLACK}قائم STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}الاعدادات STR_INTRO_NEWGRF_SETTINGS :{BLACK} اعدادات NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK} إبحث عن المحتوى عبر الشبكه العنكبوتيه -STR_INTRO_SCRIPT_SETTINGS :{BLACK}إعدادات الذكاء الصناعى STR_INTRO_QUIT :{BLACK}خروج STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}بدأ لعبة جديدة @@ -3914,7 +3912,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}واحد STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW} شاشة اخطاء الذكاء الصناعي متوفرة فقط للخادم (سرڤر) # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}إعدادات الذكاء الصناعي STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}مخطوطات اللعبة الذي سيتم تحميله في اللعبة التالية STR_AI_CONFIG_HUMAN_PLAYER :لاعب انساني STR_AI_CONFIG_RANDOM_AI :ذكاء صناعي عشوائي @@ -3928,8 +3925,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}انقل STR_AI_CONFIG_AI :{SILVER} الذكاء الاصطناعي -STR_AI_CONFIG_CHANGE :{BLACK}اختر {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :الذكاء الاصطناعي STR_AI_CONFIG_CHANGE_GAMESCRIPT :مخطوط اللعبة STR_AI_CONFIG_CONFIGURE :{BLACK} اعداد diff --git a/src/lang/basque.txt b/src/lang/basque.txt index 8985cfafb7..359dbfdd62 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -372,10 +372,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Irten # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Jokoaren aukerak STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ezarpenak -STR_SETTINGS_MENU_SCRIPT_SETTINGS :IA/Jokoaren scriptaren ezaugarriak STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ezarpenak STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparentzia ezarpenak STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Herri izenak erakutsita @@ -1833,7 +1832,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Puntuazi STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ezarpenak STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-ren Ezarpenak STR_INTRO_ONLINE_CONTENT :{BLACK}Edukiak Online Kontsultatu -STR_INTRO_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak STR_INTRO_QUIT :{BLACK}Irten STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Joko berria hasi. Krtl+klik mapa konfigurazioa desgaitzen du @@ -1853,7 +1851,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puntuazi STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ezarpenak erakutsi STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ezarpenak erakutsi STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Bilatu eduki berria eta eguneratua deskargatzeko -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}IA/Joko Scripten Ezarpenak STR_INTRO_TOOLTIP_QUIT :{BLACK}'OpenTTD'-tik Irten STR_INTRO_TRANSLATION :{BLACK}Itzultze honi {NUM} string falta zaio/zaizkio. Mesedez OpenTTD hobeago egiten lagundu itzultzaile bezala aritzen. Ikusi readme.txt xehetasunentzako. @@ -4000,7 +3997,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Abiarazi STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}IA/Joko Script Garbitzailearen lehioa bakarrik zerbitzariarentzako erabilgarria da # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}IA/Joko Script-aren Ezarpenak STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Hurrengo jokoan kargatuko den Joko Script-a STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Hurrengo jokoan kargatuko diren IA-k STR_AI_CONFIG_HUMAN_PLAYER :Jokalaria @@ -4016,8 +4012,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Aukeratu STR_AI_CONFIG_GAMESCRIPT :{SILVER}Jokoaren Script-a STR_AI_CONFIG_AI :{SILVER}IAk -STR_AI_CONFIG_CHANGE :{BLACK}Aukeratu {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script jokoa STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Bestelako script bat kargatu @@ -4041,9 +4035,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ez aldat # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametroak STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Jokoaren Script-ak STR_AI_SETTINGS_CLOSE :{BLACK}Itxi STR_AI_SETTINGS_RESET :{BLACK}Berrabiarazi STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt index 9fdd7d15f5..92f47c00d2 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -692,10 +692,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Выхад # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Наладкі гульні STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Наладкі -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Наладкі ШІ / скрыпту STR_SETTINGS_MENU_NEWGRF_SETTINGS :Наладкі NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Наладкі празрыстасьці STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Паказваць назвы гарадоў @@ -2275,7 +2274,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Табл STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Наладкі STR_INTRO_NEWGRF_SETTINGS :{BLACK}Наладкi NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Праверыць анлайн-кантэнт -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Наладкі ШІ / скрыпту STR_INTRO_QUIT :{BLACK}Выхад STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Пачаць новую гульню. Ctrl+клік прапускае этап наладак мапы @@ -2295,7 +2293,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Пака STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Акно наладак STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Паказаць наладкі NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Праверыць новы й абноўлены кантэнт, каб спампаваць -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Зьмяніць наладкі ШІ ды гульнёвага скрыпту STR_INTRO_TOOLTIP_QUIT :{BLACK}Выйсьці з OpenTTD STR_INTRO_BASESET :{BLACK}У абраным наборы базавай графікі адсутнічае {NUM} спрайт{P "" а аў}. Калі ласка, абнавіце набор графікі. @@ -4616,7 +4613,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Адзі STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Вакно адладкі ШІ / скрыпту даступна толькі для сэрвэра # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Канфігурацыя ШІ / скрыпту STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Гульнёвы скрыпт, які будзе загружаны ў наступнай гульні STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Модулі ШІ, якія будуць загружаны ў наступнай гульні STR_AI_CONFIG_HUMAN_PLAYER :Чалавек @@ -4632,8 +4628,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Пера STR_AI_CONFIG_GAMESCRIPT :{SILVER}Гульнёвы скрыпт STR_AI_CONFIG_AI :{SILVER}ШI -STR_AI_CONFIG_CHANGE :{BLACK}Выбраць {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :ШI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Гульнёвы скрыпт STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Загрузіць іншы скрыпт @@ -4658,9 +4652,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Не з STR_SCREENSHOT_ZOOMIN_SCREENSHOT :{BLACK}Бачная вобласць у максімальным набліжэнні # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Параметры {STRING} STR_AI_SETTINGS_CAPTION_AI :ШI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Гульнёвы скрыпт STR_AI_SETTINGS_CLOSE :{BLACK}Закрыць STR_AI_SETTINGS_RESET :{BLACK}Ськід STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt index 0caa3a5507..a967782048 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Sair # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opções do jogo STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configurações -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configurações de IA /Script do jogo STR_SETTINGS_MENU_NEWGRF_SETTINGS :Definições do NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opções de Transparência STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Nomes de cidades exibidos @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Pontuaç STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configurações STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configurar NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Checar conteúdo on-line -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configurações de IA / Script do jogo STR_INTRO_QUIT :{BLACK}Sair STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Iniciar um novo jogo. Ctrl+Clique para pular a configuração do mapa @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Exibe as STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Config. de exibição STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Exibir configs. dos NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Checar por conteúdo novo e atualizado para baixar -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Exibe configurações de IA e script do jogo STR_INTRO_TOOLTIP_QUIT :{BLACK}Sair do 'OpenTTD' STR_INTRO_BASESET :{BLACK}Faltam {NUM} "sprite{P "" s}" no conjunto de gráficos base selecionado. Por favor verifique se há atualizações para ele. @@ -4533,7 +4530,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Um dos s STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Depuração de I.A./Script do jogo só é acessível pelo servidor # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuração da I.A./Script do jogo STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}O script do jogo que será carregado no próximo jogo STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}IAs que serão carregadas no próximo jogo STR_AI_CONFIG_HUMAN_PLAYER :Jogador humano @@ -4549,8 +4545,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mover a STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script do jogo STR_AI_CONFIG_AI :{G=f}{SILVER}IAs -STR_AI_CONFIG_CHANGE :{BLACK}Selecionar {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :{G=f}IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script do jogo STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Carregar outro script @@ -4581,9 +4575,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captura STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura de tela do minimapa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parâmetros STR_AI_SETTINGS_CAPTION_AI :{G=f}IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script do jogo STR_AI_SETTINGS_CLOSE :{BLACK}Fechar STR_AI_SETTINGS_RESET :{BLACK}Resetar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt index bc96af6f9b..b5c12422c7 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -376,10 +376,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Изход # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Игрови опции STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Настройки -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Настройка на ИИ програмите STR_SETTINGS_MENU_NEWGRF_SETTINGS :Newgrf настройки STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Настройки на прозрачност STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Показване имената на градовете @@ -1877,7 +1876,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Табл STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Настройки STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF настройки STR_INTRO_ONLINE_CONTENT :{BLACK}Провери онлайн съдържанието -STR_INTRO_SCRIPT_SETTINGS :{BLACK}ИИ/Игрови настройки STR_INTRO_QUIT :{BLACK}Изход STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Започни нова игра. Ctrl+Click пропуска конфигурацията на картата @@ -1897,7 +1895,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Пока STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Настройки на дисплея STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Покажи NewGRF настройки STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Провери за ново съдържание за сваляне -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показва настройките на ИИ STR_INTRO_TOOLTIP_QUIT :{BLACK}Изход от 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}На този превод му липсват {NUM} string{P "" s}. Помогнете на OpenTTD като се запишете за преводач. Вижте readme.txt за повече информация. @@ -4080,7 +4077,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Един STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}ИИ Дебъг прозореца е на разположение само на сървъра # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}ИИ Настройки STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Иговия скрипт ще бъде зареден в следващата игра STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}ИИ-тата ще бъдат заредени в следващата игра STR_AI_CONFIG_HUMAN_PLAYER :Човешки играч @@ -4096,8 +4092,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Прем STR_AI_CONFIG_GAMESCRIPT :{SILVER}Игрови скрипт STR_AI_CONFIG_AI :{SILVER}AI-та -STR_AI_CONFIG_CHANGE :{BLACK}Избери {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Програмен език на играта STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Зареди друг скрипт @@ -4121,9 +4115,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Не п # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Параметри STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Програмен език на играта STR_AI_SETTINGS_CLOSE :{BLACK}Затвори STR_AI_SETTINGS_RESET :{BLACK}Рестартиране STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt index f526c4e592..d7bd969b78 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Surt # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opcions de la partida STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuració -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Paràmetres dels scripts d'IA/partida STR_SETTINGS_MENU_NEWGRF_SETTINGS :Extensions NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcions de transparència STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostra els noms de les poblacions @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Taula de STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuració STR_INTRO_NEWGRF_SETTINGS :{BLACK}Extensions NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contingut en línia -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Paràmetres dels scripts d'IA/partida STR_INTRO_QUIT :{BLACK}Surt STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comença una partida nova. Ctrl+Clic salta la configuració del mapa @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostra l STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostra la finestra de configuració STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra la configuració de les extensions NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Comprova si hi ha continguts nous i actualitzats per a descarregar -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostra els paràmetres dels scripts d'IA/partida STR_INTRO_TOOLTIP_QUIT :{BLACK}Surt de l'OpenTTD. STR_INTRO_BASESET :{WHITE}Al joc de gràfics base seleccionat li falten {NUM} sprite{P "" s}.{}Si us plau, comproveu si hi ha actualitzacions disponibles. @@ -4537,7 +4534,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Un dels STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La finestra de depuració dels scripts d'IA/partida només està disponible al servidor. # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuració dels scripts de les IA/partida STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Aquest és l'script que s'usarà a la propera partida. STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Aquesta llista conté les IA que es carregaran a la propera partida. STR_AI_CONFIG_HUMAN_PLAYER :Jugador humà @@ -4553,8 +4549,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Desplaç STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de partida STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Selecciona {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :una IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :un script de partida STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Carrega un altre script @@ -4585,9 +4579,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captura STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura de pantalla del minimapa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Paràmetres {STRING} STR_AI_SETTINGS_CAPTION_AI :de la IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :de l'script de partida STR_AI_SETTINGS_CLOSE :{BLACK}Tanca STR_AI_SETTINGS_RESET :{BLACK}Restableix STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/chuvash.txt b/src/lang/chuvash.txt index b546148ec2..771ffa1517 100644 --- a/src/lang/chuvash.txt +++ b/src/lang/chuvash.txt @@ -226,7 +226,7 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Вӗҫле # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Вӑййи майлаштару STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF майлаштару @@ -1581,7 +1581,6 @@ STR_ORDER_GO_TO_STATION :{STRING} {STATI -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt index b687aed086..02af4cbdb8 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -481,10 +481,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Izlaz # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Postavke igre STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Postavke -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Postavke UI-ja/Skripte igre STR_SETTINGS_MENU_NEWGRF_SETTINGS :Postavke za NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Postavke prozirnosti STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Prikaži imena gradova @@ -2076,7 +2075,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tablica STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Postavke STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Postavke STR_INTRO_ONLINE_CONTENT :{BLACK}Provjeri online sadržaj -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Postavke UI-ja/Skripte igre STR_INTRO_QUIT :{BLACK}Izlaz STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Započni novu igru. Ctrl+klik preskače konfiguriranje karte @@ -2096,7 +2094,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikaži STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Prikaži postavke STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikaži postavke NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Provjeri novi i nadograđeni sadržaj za preuzimanje -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikaži postavke UI-ja/Skripte igre STR_INTRO_TOOLTIP_QUIT :{BLACK}Izzađi it 'OpenTTD'-a STR_INTRO_BASESET :{BLACK}Trenutno odabranom osnovnom grafičkom setu nedostaje {NUM} sprite{P "" a a}. Potražite nadogradnju grafičkog seta. @@ -4440,7 +4437,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Jedna od STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Prozor za debugiranje UI-ja/Skripte igre je dopušten samo za poslužitelj # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfiguracija UI-ja/Skripte igre STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Skripta Igre koja će biti učitana u sljedećoj igri STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}UI-jevi koji će biti učitani u sljedećoj igri STR_AI_CONFIG_HUMAN_PLAYER :Ljudski igrač @@ -4456,8 +4452,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Pomakni STR_AI_CONFIG_GAMESCRIPT :{SILVER}Skripta Igre STR_AI_CONFIG_AI :{SILVER}UI-jevi -STR_AI_CONFIG_CHANGE :{BLACK}Odaberi {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :UI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skripta Igre STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Učitaj drugu skriptu @@ -4488,9 +4482,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Slika vi STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Slika mini-mape # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametri STR_AI_SETTINGS_CAPTION_AI :UI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skripta Igre STR_AI_SETTINGS_CLOSE :{BLACK}Zatvori STR_AI_SETTINGS_RESET :{BLACK}Resetiraj STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/czech.txt b/src/lang/czech.txt index a34d4d858e..f4daa78ba9 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -467,10 +467,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Ukončit # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Možnosti hry STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavení -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Nastavení AI / hry STR_SETTINGS_MENU_NEWGRF_SETTINGS :Nastavení grafik STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavení průhlednosti STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Zobrazení jmen měst @@ -2146,7 +2145,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Nejlepš STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavení STR_INTRO_NEWGRF_SETTINGS :{BLACK}Nastavení grafik STR_INTRO_ONLINE_CONTENT :{BLACK}Stahovat součásti -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Nastavení AI / hry STR_INTRO_QUIT :{BLACK}Ukončit STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Hrát novou hru. Pomocí Ctrl přeskočíš nastavení mapy @@ -2166,7 +2164,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zobrazit STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Nastavení zobrazení STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Ukázat nastavení NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Ukázat, jaký nový nebo upravený obsah se dá stáhnout -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zobrazit nastavení AI a hry STR_INTRO_TOOLTIP_QUIT :{BLACK}Ukončit 'OpenTTD' STR_INTRO_BASESET :{BLACK}V aktuálně zvolené základní sadě grafiky chybí {NUM} sprit{P "" y ů}. Zkuste, prosím, vyhledat aktualizovanou základní sadu. @@ -4628,7 +4625,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Někter STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Okno na ladění AI / herních skriptů je dostupné pouze na serveru # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Nastavení AI / hry STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Herní skripty, které budou načteny v příští hře STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI, které budou načteny v příští hře STR_AI_CONFIG_HUMAN_PLAYER :Lidský hráč @@ -4644,8 +4640,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Přesuno STR_AI_CONFIG_GAMESCRIPT :{SILVER}Herní skript STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}Vybrat {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Herní skript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Načíst další skript @@ -4676,9 +4670,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Snímek STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Snímek (náhledové) mapy světa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametry STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :herní skript STR_AI_SETTINGS_CLOSE :{BLACK}Zavřít STR_AI_SETTINGS_RESET :{BLACK}Obnovit nastavení STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/danish.txt b/src/lang/danish.txt index 919f1a9c0d..385cad9452 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Afslut # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opsætning STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Indstillinger -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/spilscript-indstillinger STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF indstillinger STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gennemsigtighedsvalg STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Bynavne vist @@ -2051,7 +2050,6 @@ STR_INTRO_HIGHSCORE :{BLACK} Topresu STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Indstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF indstillinger STR_INTRO_ONLINE_CONTENT :{BLACK}Tjek Online Indhold -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spilscript indstillinger STR_INTRO_QUIT :{BLACK}Afslut STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start et nyt spil. Ctrl+Klik springer kortindstillingerne over. @@ -2071,7 +2069,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Hvis top STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skærm indstillinger STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vis NewGRF-indstillinger STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tjek for nyt og opdateret indhold til download -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis computerspiller/spilscript indstillinger STR_INTRO_TOOLTIP_QUIT :{BLACK}Afslut 'OpenTTD' STR_INTRO_BASESET :{BLACK} Det aktuelt valgte base grafiksæt mangler {NUM} sprite {P "" s}. Se venligst efter opdateringer til basesættet. @@ -4513,7 +4510,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}En af de STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Computerspiller/script-debugvindue er kun tilgængeligt for serveren # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfiguration af computerspiller/spilscript STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spilscriptet der vil bliver indlæst i næste spil STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AIer der vil bliver loaded i næste spil STR_AI_CONFIG_HUMAN_PLAYER :Menneskelig spiller @@ -4529,8 +4525,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Flyt val STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spilscript STR_AI_CONFIG_AI :{SILVER}KI'er -STR_AI_CONFIG_CHANGE :{BLACK}Vælg {STRING} -STR_AI_CONFIG_CHANGE_NONE :Ingen ændringer STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spilscript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Indlæs et andet script @@ -4561,9 +4555,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Højdeko STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minikort skærmbillede # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametre STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spilscript STR_AI_SETTINGS_CLOSE :{BLACK}Luk STR_AI_SETTINGS_RESET :{BLACK}Nulstil STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt index d3a47b0a99..2059d68ff2 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -200,6 +200,15 @@ STR_UNITS_POWER_IMPERIAL :{COMMA}{NBSP}pk STR_UNITS_POWER_METRIC :{COMMA}{NBSP}pk STR_UNITS_POWER_SI :{COMMA}{NBSP}kW +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}pk/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}hp/t +STR_UNITS_POWER_IMPERIAL_TO_WEIGHT_SI :{DECIMAL}{NBSP}pk/Mg +STR_UNITS_POWER_METRIC_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}pk/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}pk/t +STR_UNITS_POWER_METRIC_TO_WEIGHT_SI :{DECIMAL}{NBSP}pk/Mg +STR_UNITS_POWER_SI_TO_WEIGHT_IMPERIAL :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_METRIC :{DECIMAL}{NBSP}kW/t +STR_UNITS_POWER_SI_TO_WEIGHT_SI :{DECIMAL}{NBSP}W/kg STR_UNITS_WEIGHT_SHORT_IMPERIAL :{COMMA}{NBSP}t STR_UNITS_WEIGHT_SHORT_METRIC :{COMMA}{NBSP}t @@ -392,10 +401,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Afsluiten # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spelopties STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Instellingen -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI-/spelscriptinstellingen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-instellingen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Doorzichtigheidsopties STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Plaatsnamen weergeven @@ -2059,7 +2067,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Scoretab STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Instellingen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-instellingen STR_INTRO_ONLINE_CONTENT :{BLACK}Online inhoud zoeken -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI-/spelscriptinstellingen STR_INTRO_QUIT :{BLACK}Afsluiten STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start een nieuw spel. Ctrl+klik slaat de kaartconfiguratie over @@ -2079,7 +2086,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Scoretab STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Scherminstellingen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF-instellingen weergeven STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Zoeken naar nieuwe en aangepaste inhoud om te downloaden -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI-/spelscriptinstellingen weergeven STR_INTRO_TOOLTIP_QUIT :{BLACK}'OpenTTD' afsluiten STR_INTRO_BASESET :{BLACK}De huidige gekozen set grafische elementen mist {NUM} sprite{P "" s}. Controleer of er updates zijn voor deze basisset. @@ -3876,6 +3882,9 @@ STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Bereik: STR_PURCHASE_INFO_AIRCRAFT_TYPE :{BLACK}Vliegtuigtype: {GOLD}{STRING} ###length 3 +STR_CARGO_TYPE_FILTER_ALL :Alle soorten vracht +STR_CARGO_TYPE_FILTER_FREIGHT :Vracht +STR_CARGO_TYPE_FILTER_NONE :Geen ###length VEHICLE_TYPES STR_BUY_VEHICLE_TRAIN_LIST_TOOLTIP :{BLACK}Spoorvoertuigkeuzelijst. Klik op een spoorvoertuig voor informatie. Ctrl+klik voor spoorvoertuigtype weergeven-verbergen. @@ -4537,7 +4546,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Eén van STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI-/spelscript-probleemvenster is alleen beschikbaar voor de server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI-/spelscriptconfiguratie STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Het spelscript dat in het volgende spel geladen wordt STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}De AI's die in het volgende spel geladen worden STR_AI_CONFIG_HUMAN_PLAYER :Menselijke speler @@ -4553,8 +4561,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Geselect STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spelscript STR_AI_CONFIG_AI :{SILVER}AI's -STR_AI_CONFIG_CHANGE :{BLACK}{STRING} selecteren -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spelscript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Ander script laden @@ -4585,9 +4591,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Schermaf STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Schermafbeelding van de minikaart # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spelscript STR_AI_SETTINGS_CLOSE :{BLACK}Sluiten STR_AI_SETTINGS_RESET :{BLACK}Terugstellen STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt index c4d3f912b3..6ddd6f320b 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -401,10 +401,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Exit # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Game options STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Settings -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Town names displayed @@ -2068,7 +2067,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Highscor STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings STR_INTRO_QUIT :{BLACK}Exit STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start a new game. Ctrl+Click skips map configuration @@ -2088,7 +2086,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Display settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings STR_INTRO_TOOLTIP_QUIT :{BLACK}Exit 'OpenTTD' STR_INTRO_BASESET :{BLACK}The currently selected base graphics set is missing {NUM} sprite{P "" s}. Please check for updates for the baseset. @@ -4549,7 +4546,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}One of t STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI / GameScript Debug window is only available for the server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Game Script Configuration STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}The Game Script that will be loaded in the next game STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}The AIs that will be loaded in the next game STR_AI_CONFIG_HUMAN_PLAYER :Human player @@ -4565,8 +4561,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Move sel STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Select {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Load another script @@ -4597,9 +4591,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Heightma STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap screenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script STR_AI_SETTINGS_CLOSE :{BLACK}Close STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt index b219734eed..ee8ef83539 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -401,10 +401,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Quit # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Game options STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Settings -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Game script settings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF settings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency options STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Town names displayed @@ -2068,7 +2067,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Highscor STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Settings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Settings STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Content -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Game Script Settings STR_INTRO_QUIT :{BLACK}Quit STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start a new game. Ctrl+Click skips map configuration @@ -2088,7 +2086,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Display STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Display settings STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Display NewGRF settings STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check for new and updated content to download -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Display AI/Game script settings STR_INTRO_TOOLTIP_QUIT :{BLACK}Quit 'OpenTTD' STR_INTRO_BASESET :{BLACK}The currently selected base graphics set is missing {NUM} sprite{P "" s}. Please check for updates for the baseset. @@ -4549,7 +4546,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}One of t STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Game Script Debug window is only available for the server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Game Script Configuration STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}The Game Script that will be loaded in the next game STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}The AIs that will be loaded in the next game STR_AI_CONFIG_HUMAN_PLAYER :Human player @@ -4565,8 +4561,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Move sel STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Select {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Load another script @@ -4597,9 +4591,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Heightma STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap screenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script STR_AI_SETTINGS_CLOSE :{BLACK}Close STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt index 03b992f27e..3b5a5414ca 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -369,10 +369,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Forlasi # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Ludaj opcioj STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Agordoj -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Ludo skripto agordoj STR_SETTINGS_MENU_NEWGRF_SETTINGS :Agordoj de NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Ebloj por travidebleco STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Urbonomoj montriĝas @@ -3519,7 +3518,6 @@ STR_AI_DEBUG_SELECT_AI_TOOLTIP :{BLACK}Vidu for # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Ludo Skripto Agordo STR_AI_CONFIG_HUMAN_PLAYER :Homa ludanto STR_AI_CONFIG_RANDOM_AI :Hazarda AI STR_AI_CONFIG_NONE :(neniu) @@ -3532,7 +3530,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Movi ele STR_AI_CONFIG_AI :{SILVER}AIj -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CONFIGURE :{BLACK}Agordi STR_AI_CONFIG_CONFIGURE_TOOLTIP :{BLACK}Agordi parametroj de la skripto @@ -3550,7 +3547,6 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ne ŝan # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametroj STR_AI_SETTINGS_CAPTION_AI :AI STR_AI_SETTINGS_CLOSE :{BLACK}Fermi STR_AI_SETTINGS_RESET :{BLACK}Reŝargo diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt index 7e7beb7071..9c46235a62 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -447,10 +447,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Välju # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Mängu seadistus STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Seaded -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/GameScripti seaded STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-i seadistus STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Läbipaistvuse seadistus STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Näidatavad asustuste nimed @@ -2084,7 +2083,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Edetabel STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Seaded STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-i seadistus STR_INTRO_ONLINE_CONTENT :{BLACK}Aineste allalaadimine -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/GameScripti seaded STR_INTRO_QUIT :{BLACK}Välju STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Alusta uut mängu. Ctrl+klõps jätab kaardi seadistamise vahele @@ -2104,7 +2102,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Ava edet STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ava seaded STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Ava NewGRF-i seadistamine STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Otsi allalaadimiseks uusi ja uuendatud aineseid -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Ava AI/GameScripti seaded STR_INTRO_TOOLTIP_QUIT :{BLACK}Välju 'OpenTTD'st STR_INTRO_BASESET :{BLACK}Hetkel valitud lähtegraafikakogust puudub {NUM} sprite{P "" 'i}. Kontrolli, kas lähtekogule on uuendusi. @@ -4512,7 +4509,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Üks skr STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/GameScripti debugimise akent saab kasutada ainult serveris # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Game Script seadistus STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Järgmises mängus laaditav GameScript STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI-d järgmises mängus STR_AI_CONFIG_HUMAN_PLAYER :Inimene @@ -4528,8 +4524,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Langeta STR_AI_CONFIG_GAMESCRIPT :{SILVER}GameScript STR_AI_CONFIG_AI :{SILVER}AI-d -STR_AI_CONFIG_CHANGE :{BLACK}{STRING.g} valimine -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :GameScript STR_AI_CONFIG_CHANGE_GAMESCRIPT.g :GameScripti @@ -4561,9 +4555,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Kõrgusk STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Pisikaardi ekraanipilt # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} parameetrid STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :GameScript STR_AI_SETTINGS_CLOSE :{BLACK}Sulge STR_AI_SETTINGS_RESET :{BLACK}Nulli STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt index 6bfcb84690..e6bdbbb1de 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -355,9 +355,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Gevst # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spæl møguleikar -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spæl script innstillingar STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF innstillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gjøgnumskygnis møguleikar STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Bygdarnøvn víst @@ -1740,7 +1739,6 @@ STR_INTRO_GAME_OPTIONS :{BLACK}Spæli m STR_INTRO_HIGHSCORE :{BLACK}Hástigs yvirlit STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF innstillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Kanna online tilfar -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spæli script innstillingar STR_INTRO_QUIT :{BLACK}Gevst STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Byrja eitt nýtt spæl. Ctrl+trýst leypur um uppseting av korti @@ -1759,7 +1757,6 @@ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Vís sp STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vís hástigs yvirlit STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vís NewGRF innstillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kanna um nýtt og betra tilfar er klárt at heinta niður -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vís AI/Spæli script innstillingar STR_INTRO_TOOLTIP_QUIT :{BLACK}Gevst at spæla 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}Hesi umseting vantar {NUM} str{P ong eingir}. Vinarliga hjálp til við at gera OpenTTD betri, tekna teg sum umsetara. Sí readme.txt viðvíkjandi smálutum. @@ -3649,7 +3646,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Eitt av STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Game script debug gluggi er einans tøkur fyri servaran # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Spæli script innstillingar STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spæli scripti sum verður heinta í næsta spæli STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI sum verða heintaði í næsta spæli STR_AI_CONFIG_HUMAN_PLAYER :Menniskja spælari @@ -3665,8 +3661,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Flyt val STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spæli script STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}Vel {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spæli script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Heinta eitt annað script @@ -3690,9 +3684,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ikki bro # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametur STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spæl Script STR_AI_SETTINGS_CLOSE :{BLACK}Lat aftur STR_AI_SETTINGS_RESET :{BLACK}Endurstilla STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt index d2ea6f98c3..db84fe79c0 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Lopeta # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Pelin valinnat STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Asetukset -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Tekoälyn/peliskriptin asetukset STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-asetukset STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Läpinäkyvyysasetukset STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Kuntien nimet näkyvissä @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Pistetau STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Asetukset STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-asetukset STR_INTRO_ONLINE_CONTENT :{BLACK}Tarkista online-sisältö -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Tekoälyn/peliskriptin asetukset STR_INTRO_QUIT :{BLACK}Sulje STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Aloita uusi peli. Ctrl+napsautus ohittaa kartan asetusten valinnan. @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Näytä STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Näytä asetukset STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Näytä NewGRF-asetukset STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tarkista uutta ja päivitettyä sisältöä ladattavaksi -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Näytä tekoäly/peliskriptiasetukset STR_INTRO_TOOLTIP_QUIT :{BLACK}Lopeta OpenTTD STR_INTRO_BASESET :{BLACK}Valitusta perusgrafiikkapaketista puuttuu {NUM} sprite{P "" ä}. Tarkista, onko sille päivityksiä. @@ -4532,7 +4529,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Yksi kä STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Tekoälyn/peliskriptin virheenjäljitysikkuna on vain palvelimen käytettävissä # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Tekoälyn/peliskriptin määritteet STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Seuraavassa pelissä ladattava peliskripti STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Seuraavassa pelissä ladattavat tekoälyt STR_AI_CONFIG_HUMAN_PLAYER :Ihmispelaaja @@ -4548,8 +4544,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Siirrä STR_AI_CONFIG_GAMESCRIPT :{SILVER}Peliskripti STR_AI_CONFIG_AI :{SILVER}Tekoälyt -STR_AI_CONFIG_CHANGE :{BLACK}Valitse {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :Tekoäly STR_AI_CONFIG_CHANGE_GAMESCRIPT :Peliskripti STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Lataa toinen skripti @@ -4580,9 +4574,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Korkeusk STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Pienoiskartan kuvakaappaus # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametrit STR_AI_SETTINGS_CAPTION_AI :Tekoäly -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Peliskripti STR_AI_SETTINGS_CLOSE :{BLACK}Sulje STR_AI_SETTINGS_RESET :{BLACK}Palauta STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/french.txt b/src/lang/french.txt index 7e0c1b5d84..51671cd917 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Quitter # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Options du Jeu STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Paramètres -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuration des scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Paramètres NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Options de transparence STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Afficher le nom des villes @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Meilleur STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Paramètres STR_INTRO_NEWGRF_SETTINGS :{BLACK}Paramètres NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Vérifier le contenu en ligne -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Paramètres des IA/script jeu STR_INTRO_QUIT :{BLACK}Quitter STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Démarrer une nouvelle partie. Ctrl-clic pour passer outre la configuration du terrain. @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Afficher STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Afficher les paramètres STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Afficher la configuration des NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Vérifier les contenus nouveaux ou mis à jour téléchargeables -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Afficher la configuration des scripts STR_INTRO_TOOLTIP_QUIT :{BLACK}Quitter OpenTTD STR_INTRO_BASESET :{BLACK}{NUM} sprite{P "" s} manque{P "" "nt"} dans les graphiques de base actuellement sélectionnés. Veuillez vérifier les mises à jours pour les graphiques de base. @@ -4539,7 +4536,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}L'un des STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La fenêtre de débogage de scripts n'est disponible que pour le serveur # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuration d'IA et de scripts de jeu STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Le script de jeu qui sera chargé dans la prochaine partie STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Les IAs qui seront chargées dans la prochaine partie STR_AI_CONFIG_HUMAN_PLAYER :Joueur humain @@ -4555,8 +4551,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Déplace STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de jeu STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Sélectionner {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script de jeu STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Charger un autre script @@ -4587,9 +4581,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Capture STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Capture d'écran de la mini-carte # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Paramètres STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de jeu STR_AI_SETTINGS_CLOSE :{BLACK}Fermer STR_AI_SETTINGS_RESET :{BLACK}Réinitialiser STR_AI_SETTINGS_SETTING :{STRING}{NBSP}: {ORANGE}{STRING} diff --git a/src/lang/frisian.txt b/src/lang/frisian.txt index 18f2e6cdaa..6d3aab25fc 100644 --- a/src/lang/frisian.txt +++ b/src/lang/frisian.txt @@ -376,10 +376,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Ofslute # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spulopsjes STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ynstellings -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/Spulskriptynstellings STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-ynstellings STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Trochsichtigensopsjes STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Stêdsnammen sjen litte @@ -1887,7 +1886,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Topskore STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ynstellings STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF ynstellings STR_INTRO_ONLINE_CONTENT :{BLACK}Sikje online ynhâld -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spulskriptynstellings STR_INTRO_QUIT :{BLACK}Ôfslute STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Begjin in nei spul. Ctrl + klik slaat kaartynstelling oer @@ -1907,7 +1905,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Topskore STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ynstellings sjen litte STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Lit NewGRF ynstellings sjen STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Strún ynternet ôf om nije ynhâld del te heljen -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/Spulskriptynstellings sjen litte STR_INTRO_TOOLTIP_QUIT :{BLACK}Slút 'OpenTTD' ôf @@ -3858,7 +3855,6 @@ STR_ERROR_AI_NO_AI_FOUND :Gjin geskikte k STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Spulskript debugskerm is allinich beskikber foar de server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Spulskript konfiguraasje STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}It spulskript dat yn it folgjende spul laden sil wurde STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AIs dy't yn it folgjende spul laden sille wurde STR_AI_CONFIG_HUMAN_PLAYER :Minslike spiler @@ -3873,8 +3869,6 @@ STR_AI_CONFIG_MOVE_DOWN :{BLACK}Pleats l STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spulskript STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Selektear {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spulskript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}in oar script lade @@ -3898,9 +3892,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Skript n # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spulskript STR_AI_SETTINGS_CLOSE :{BLACK}Slúte STR_AI_SETTINGS_RESET :{BLACK}Weromsette STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt index 0be8a2fd72..b23638a9e2 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -563,10 +563,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Fàg an-seo # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Roghainnean a' gheama STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Roghainnean -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Roghainnean IF/sgriobt geama STR_SETTINGS_MENU_NEWGRF_SETTINGS :Roghainnean NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Roghainnean trìd-shoilleireachd STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Ainmean nam bailtean gan sealltainn @@ -2120,7 +2119,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Clàr na STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Roghainnean STR_INTRO_NEWGRF_SETTINGS :{BLACK}Roghainnean NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Susbaint air loidhne -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Roghainnean sgriobt IF/Geama STR_INTRO_QUIT :{BLACK}Fàg an-seo STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Tòisich geama ùr. Ctrl+Briogadh gus leum thairis air rèiteachadh a mhapa @@ -2140,7 +2138,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Seall cl STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Roghainnean an t-seallaidh STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Seall na roghainnean NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Thoir sùil airson susbainte ùire no air a h-ùrachadh ri luchdadh a-nuas -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Seall roghainnean sgriobt IF/geama STR_INTRO_TOOLTIP_QUIT :{BLACK}Fàg “OpenTTD" STR_INTRO_BASESET :{BLACK}Tha {NUM} {P sprìd sprìd sprìdean sprìd} a dhìth air an t-seata grafaigeachd bhunasach a thagh thu. Thoir sùil airson ùrachaidhean an t-seata bhunasaich. @@ -4397,7 +4394,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Thuislic STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Chan eil an uinneag dì-bhugaidh aig an IF/sgriobt geama ri làimh ach airson an fhrithealaiche # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Rèiteachadh an IF/sgriobt geama STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}An sgriobt geama a thèid a luchdadh leis an ath-gheama STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Na IF a thèid a luchdadh leis an ath-gheama STR_AI_CONFIG_HUMAN_PLAYER :Cluicheadair daonna @@ -4413,8 +4409,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Gluais a STR_AI_CONFIG_GAMESCRIPT :{SILVER}Sgriobt geama STR_AI_CONFIG_AI :{SILVER}IFan -STR_AI_CONFIG_CHANGE :{BLACK}Tagh {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IF STR_AI_CONFIG_CHANGE_GAMESCRIPT :Sgriobt geama STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Luchdaich sgriobt eile @@ -4438,9 +4432,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Na athar # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Paramadairean aig {STRING} STR_AI_SETTINGS_CAPTION_AI :IF -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Sgriobt geama STR_AI_SETTINGS_CLOSE :{BLACK}Dùin STR_AI_SETTINGS_RESET :{BLACK}Ath-shuidhich STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/galician.txt b/src/lang/galician.txt index 3fc46fb03d..1e7d5d8b75 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Saír # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opcións do xogo STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Opcións -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuración da IA/scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configuración NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcións de transparencia STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Amosar nomes de cidades @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Táboa d STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Opcións STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configuración NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Comprobar contido online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuración dos scripts de IA STR_INTRO_QUIT :{BLACK}Saír STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comezar unha nova partida. Ctrl+Click para saltarse a configuración do mapa @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Opcións de visualización STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra-la configuración de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Buscar contidos novos e actualizados para descargar -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Motra-la configuración dos scripts de IA STR_INTRO_TOOLTIP_QUIT :{BLACK}Saír de 'OpenTTD' STR_INTRO_BASESET :{BLACK}A base gráfica seleccionada actualmente está perdendo {NUM} sprite{P "" s}. Por favor comproba se hai actualizacións para o conxunto base. @@ -4533,7 +4530,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Fallou u STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}A fiestra de Depuración de IA só está dispoñíbel para o servidor # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuración IA / scripts do xogo STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}O script de xogo que se cargará na próxima partida STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}As IAs que serán cargadas na próxima partida STR_AI_CONFIG_HUMAN_PLAYER :Xogador humano @@ -4549,8 +4545,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mover a STR_AI_CONFIG_GAMESCRIPT :{SILVER} Script do xogo STR_AI_CONFIG_AI :{SILVER}IAs -STR_AI_CONFIG_CHANGE :{BLACK}Seleccionar{STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script do xogo STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Cargar outro script @@ -4581,9 +4575,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captura STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura de pantalla do minimapa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parámetros STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script do xogo STR_AI_SETTINGS_CLOSE :{BLACK}Pechar STR_AI_SETTINGS_RESET :{BLACK}Restablecer STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/german.txt b/src/lang/german.txt index 0336b05827..c587bc5573 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Beenden # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spieleinstellungen STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Einstellungen -STR_SETTINGS_MENU_SCRIPT_SETTINGS :KI- / Skripteinstellungen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-Einstellungen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparenzeinstellungen STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Städtenamen anzeigen @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Bestenli STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Einstellungen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-Einstellungen STR_INTRO_ONLINE_CONTENT :{BLACK}Erweiterungen herunterladen -STR_INTRO_SCRIPT_SETTINGS :{BLACK}KI- / Skripteinstellungen STR_INTRO_QUIT :{BLACK}Beenden STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Ein neues Spiel beginnen. Strg+Klick überspringt Karteneinstellungen @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zeige di STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Einstellungen anzeigen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF-Einstellungen anzeigen und/oder ändern STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Prüfe, ob neue oder aktualisierte Erweiterungen zum Herunterladen bereitstehen -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zeige KI- und Skripteinstellungen STR_INTRO_TOOLTIP_QUIT :{BLACK}OpenTTD beenden STR_INTRO_BASESET :{BLACK}Den momentan ausgewählten Basisgrafiken fehl{P 0 "t" "en"} {NUM} Sprite{P 0 "" "s"}. Bitte überprüfen, ob es Updates für die Basisgrafiken gibt. @@ -4538,7 +4535,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Eine der STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Debugfenster für KI oder Skripte ist nur auf dem Server verfügbar # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}KI / Skripte einstellen STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Das Skript, das im nächsten Spiel geladen wird STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Die KIs, die im nächsten Spiel geladen werden STR_AI_CONFIG_HUMAN_PLAYER :Menschlicher Spieler @@ -4554,8 +4550,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Die ausg STR_AI_CONFIG_GAMESCRIPT :{SILVER}Skript STR_AI_CONFIG_AI :{SILVER}KIs -STR_AI_CONFIG_CHANGE :{BLACK}Wähle {STRING} aus -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :KI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Lade ein anderes Skript @@ -4586,9 +4580,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Reliefka STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Übersichtskartenscreenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameter STR_AI_SETTINGS_CAPTION_AI :KI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skript STR_AI_SETTINGS_CLOSE :{BLACK}Schließen STR_AI_SETTINGS_RESET :{BLACK}Zurücksetzen STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/greek.txt b/src/lang/greek.txt index fd47b26747..5c9b856361 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -453,10 +453,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Έξοδος # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Επιλογές παιχνιδιού STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ρυθμίσεις -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Ρυθμίσεις ΑΙ και Δέσμης Ενεργειών STR_SETTINGS_MENU_NEWGRF_SETTINGS :Ρυθμίσεις NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Επιλογές διαφάνειας STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Εμφάνιση ονομάτων πόλεων @@ -2158,7 +2157,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Πίνα STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις STR_INTRO_NEWGRF_SETTINGS :{BLACK}Ρυθμίσεις NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Διαδικτυακό Περιεχόμενο -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Ρυθμίσεις AI και Δέσμης Ενεργειών STR_INTRO_QUIT :{BLACK}Έξοδος STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Έναρξη νέου παιχνιδιού. Με Ctrl+Κλικ παρακάμπτεται η ρύθμιση του χάρτη @@ -2178,7 +2176,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Εμφά STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Ρυθμίσεις οθόνης STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Έλεγχος για νέο και ανανεωμένο περιεχόμενο για λήψη -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Εμφάνιση ρυθμίσεων για AI και της δέσμης ενεργειών του παιχνιδιού STR_INTRO_TOOLTIP_QUIT :{BLACK}Έξοδος από το «OpenTTD» STR_INTRO_BASESET :{BLACK}Λείπουν {NUM} sprite{P "" s} από το επιλεγμένο βασικό σετ γραφικών. Παρακαλούμε ελέγξτε για ενημερώσεις του βασικού σετ. @@ -4626,7 +4623,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Μια STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Το παράθυρο αποσφαλμάτωσης ΑΙ και δέσμης ενεργειών είναι διαθέσιμο μόνο για τον διακομιστή # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Ρύθμιση ΑΙ και Δέσμης Ενεργειών STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Η Δέσμη Ενεργειών παιχνιδιού που θα φορτωθεί στο επόμενο παιχνίδι STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Οι AIs που θα φορτωθούν στο επόμενο παιχνίδι STR_AI_CONFIG_HUMAN_PLAYER :Ανθρώπινος παίκτης @@ -4642,8 +4638,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Μετα STR_AI_CONFIG_GAMESCRIPT :{SILVER}Δέσμη Ενεργειών STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}Επιλογή {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :ΑΙ STR_AI_CONFIG_CHANGE_GAMESCRIPT :Δέσμη Ενεργειών STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Φόρτωση άλλης δέσμης ενεργειών @@ -4674,9 +4668,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Στιγ STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Στιγμιότυπο μίνι χάρτη # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Παράμετροι STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Δέσμη Ενεργειών STR_AI_SETTINGS_CLOSE :{BLACK}Κλείσιμο STR_AI_SETTINGS_RESET :{BLACK}Επαναφορά STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt index 998adc2b97..a7472eb4db 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -389,10 +389,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :יציאה # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :אפשרויות המשחק STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :הגדרות -STR_SETTINGS_MENU_SCRIPT_SETTINGS :הגדרות סקריפטים של משחק/שחקני מחשב STR_SETTINGS_MENU_NEWGRF_SETTINGS :הגדרות GRF חדש STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :אפשרויות שקיפות STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :שמות ערים @@ -1935,7 +1934,6 @@ STR_INTRO_HIGHSCORE :{BLACK}טבלת STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}הגדרות STR_INTRO_NEWGRF_SETTINGS :{BLACK}(NewGRF)הגדרות שדרוג גראפי STR_INTRO_ONLINE_CONTENT :{BLACK} בדוק תוכן מקוון -STR_INTRO_SCRIPT_SETTINGS :{BLACK}הגדרות סקריפטים של משחק/שחקני מחשב STR_INTRO_QUIT :{BLACK}יציאה STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}התחל משחק חדש. Ctrl+לחיצה מדלג על תצורת מפה @@ -1955,7 +1953,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}הצג STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}הצגת הגדרות STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}הצג הגדרות שדרוג גראפי STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK} חפש תוכן חדש/מעודכן להורדה -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK} הצג הגדרות סקריפטים של משחק/שחקני מחשב STR_INTRO_TOOLTIP_QUIT :{BLACK}צא מ-'OpenTTD' STR_INTRO_BASESET :{BLACK}חסרים {NUM} ספרייט עבור גרפיקות הבסיס שנבחרו. אנא בדוק עדכונים לערכה זו. @@ -4176,7 +4173,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}אחד STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}חלון הדה-באג זמין רק עבור השרת # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}הגדרות משחק/בינה מלאכותית STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}סקריפט המשחק אשר יטען במשחק הבא STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}שחקני המחשב אשר יטענו במשחק הבא STR_AI_CONFIG_HUMAN_PLAYER :שחקן אנושי @@ -4192,8 +4188,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}הזז STR_AI_CONFIG_GAMESCRIPT :{SILVER}סקריפט משחק STR_AI_CONFIG_AI :{SILVER}שחקני מחשב -STR_AI_CONFIG_CHANGE :{BLACK}בחר {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :שחקן מחשב STR_AI_CONFIG_CHANGE_GAMESCRIPT :סקריפט משחק STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}טען סקריפט נוסף @@ -4217,9 +4211,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}אל ת # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} פרמטרים STR_AI_SETTINGS_CAPTION_AI :שחקן מחשב -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :סקריפט משחק STR_AI_SETTINGS_CLOSE :{BLACK}סגור STR_AI_SETTINGS_RESET :{BLACK}אתחל STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/hindi.txt b/src/lang/hindi.txt index 199f0cac27..f62b0cee54 100644 --- a/src/lang/hindi.txt +++ b/src/lang/hindi.txt @@ -116,7 +116,7 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :निकास # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :समायोजन STR_SETTINGS_MENU_WAYPOINTS_DISPLAYED :पथ-संकेतों के नाम दिखायें STR_SETTINGS_MENU_TRANSPARENT_SIGNS :पारदर्शी संकेत @@ -1250,7 +1250,6 @@ STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt index 1aa715963a..d915b8b1f8 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -455,10 +455,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Kilépés # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Alapbeállítások STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Beállítások -STR_SETTINGS_MENU_SCRIPT_SETTINGS :MI / Játékszkript beállítások STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF beállítások STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Átlátszósági beállítások STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Városnevek mutatása @@ -2123,7 +2122,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Rekord t STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Beállítások STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF beállítások STR_INTRO_ONLINE_CONTENT :{BLACK}Letölthető tartalmak -STR_INTRO_SCRIPT_SETTINGS :{BLACK}MI / Játékszkript beállítások STR_INTRO_QUIT :{BLACK}Kilépés STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Új játék kezdése. Ctrl+kattintással átugorhatod a térkép beállításokat @@ -2143,7 +2141,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rekord t STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}A beállítások megjelenítése STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF beállítások megjelenítése STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Új és frissített tartalmak megtekintése és letöltése -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}MI és játékszkript beállítások megjelenítése STR_INTRO_TOOLTIP_QUIT :{BLACK}Kilépés az OpenTTD-ből STR_INTRO_BASESET :{BLACK}A jelenleg kiválasztott grafikus alapcsomagból {NUM} sprite hiányzik. Frissítsd a grafikus alapcsomagot! @@ -4601,7 +4598,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Az egyik STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Az MI / Játékszkript nyomkövetés ablak csak a szerver számára elérhető # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}MI / Játékszkript beállítások STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}A következő játékban betöltődő játékszkript STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}A következő játékban betöltődő MI-k STR_AI_CONFIG_HUMAN_PLAYER :Játékos @@ -4617,8 +4613,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Kiválas STR_AI_CONFIG_GAMESCRIPT :{SILVER}Játékszkript STR_AI_CONFIG_AI :{SILVER}MI-k -STR_AI_CONFIG_CHANGE :{BLACK}{STRING} kiválasztása -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :MI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Játékszkript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Másik szkript betöltése @@ -4649,9 +4643,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Magassá STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minitérkép mentése # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Paraméterek STR_AI_SETTINGS_CAPTION_AI :MI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Játékszkript STR_AI_SETTINGS_CLOSE :{BLACK}Bezárás STR_AI_SETTINGS_RESET :{BLACK}Visszaállítás STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt index 7a8e1975f1..e00b7fcdea 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -355,9 +355,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Hætta # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Stillingar -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Gervigreind/leikjaforskrift STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF stillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gegnsæisstillingar STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Bæjanöfn sýnd @@ -1778,7 +1777,6 @@ STR_INTRO_GAME_OPTIONS :{BLACK}Stilling STR_INTRO_HIGHSCORE :{BLACK}Stigatafla STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Stillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Ná í viðbætur af netinu -STR_INTRO_SCRIPT_SETTINGS :{BLACK}GG/forskriftar stillingar STR_INTRO_QUIT :{BLACK}Hætta STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Hefja nýjan leik. Ctrl+smella sleppir kortastillingum @@ -1797,7 +1795,6 @@ STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}Stilla O STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Birta stigatöflu STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Sýna NewGRF stillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Skoða viðbætur sem hægt er að ná í af netinu -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Birta stillingar fyrir gervigreind/forskrift STR_INTRO_TOOLTIP_QUIT :{BLACK}Hætta í OpenTTD STR_INTRO_TRANSLATION :{BLACK}Það vantar {NUM} þýðing{P u ar} í þetta tungumál. Vinsamlegast hjálpaðu við að gera OpenTTD betra með því að skrá þig sem þýðanda. Nánari upplýsingar í readme.txt. @@ -3883,7 +3880,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Ein af f STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Aflúsunargluggi gervigreindar/forskriftar er aðeins aðgengilegur á þjóni # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Stilling gervigreindar/forskriftar STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Forskriftin sem verður hlaðin í næsta leik STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Gervigreindin sem verður hlaðin í næsta leik STR_AI_CONFIG_HUMAN_PLAYER :Mennskur leikmaður @@ -3899,8 +3895,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Færa va STR_AI_CONFIG_GAMESCRIPT :{SILVER}Forskrift STR_AI_CONFIG_AI :{SILVER}Gervigreindir -STR_AI_CONFIG_CHANGE :{BLACK}Veldu {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :gervigreind STR_AI_CONFIG_CHANGE_GAMESCRIPT :Forskrift STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Hlaða annarri forskrift @@ -3924,9 +3918,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Hætta v # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} breytur STR_AI_SETTINGS_CAPTION_AI :Gervigreindar -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Leikja forskriftar STR_AI_SETTINGS_CLOSE :{BLACK}Loka STR_AI_SETTINGS_RESET :{BLACK}Frumstilla STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/ido.txt b/src/lang/ido.txt index 053266f153..5dfbe07c6a 100644 --- a/src/lang/ido.txt +++ b/src/lang/ido.txt @@ -287,7 +287,7 @@ STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Pozez ob STR_SCENEDIT_FILE_MENU_SEPARATOR : # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_FULL_DETAIL :Plene detaloza STR_SETTINGS_MENU_TRANSPARENT_BUILDINGS :Diafana konstrukturi @@ -1443,7 +1443,6 @@ STR_AI_DEBUG_NAME_AND_VERSION :{BLACK}{STRING} -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt index a7886a0414..6f603b503b 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Keluar # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Pengaturan permainan STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Pengaturan -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Pengaturan AI / Skrip Permainan STR_SETTINGS_MENU_NEWGRF_SETTINGS :Pengaturan NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Pengaturan Transparansi STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Nama kota ditampilkan @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabel Ni STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Pengaturan STR_INTRO_NEWGRF_SETTINGS :{BLACK}Pengaturan NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Cari Konten Daring -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Pengaturan Skrip AI/Permainan STR_INTRO_QUIT :{BLACK}Keluar STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Mulai permainan baru. Ctrl-Klik melewatkan konfigurasi peta @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Tampilka STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Tampilkan pengaturan STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Tampilkan pengaturan NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Cari konten baru dan pembaruan untuk diunduh -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Tampilkan pengaturan permainan dan AI STR_INTRO_TOOLTIP_QUIT :{BLACK}Keluar OpenTTD STR_INTRO_BASESET :{BLACK}Kumpulan grafik dasar yang dipilih saat ini hilang {NUM} sprite {P ..}. Silakan periksa pembaruan untuk baseset. @@ -4532,7 +4529,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Salah sa STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Jendela "Debug" skrip AI hanya tersedia untuk server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfigurasi AI STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Skrip Permainan yang akan di jalankan di permainan berikutnya STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI yg akan dijalankan pada permainan berikutnya STR_AI_CONFIG_HUMAN_PLAYER :Pemain Manusia @@ -4548,8 +4544,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Turunkan STR_AI_CONFIG_GAMESCRIPT :{SILVER}Skrip Permainan STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}Pilih {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skrip Permainan STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Muat skrip yang lain @@ -4580,9 +4574,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Tangkapa STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Tangkapan layar minimap # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameter STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skrip Permainan STR_AI_SETTINGS_CLOSE :{BLACK}Tutup STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/irish.txt b/src/lang/irish.txt index ed7391fcf0..f875de3722 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Scoir # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Roghanna an chluiche STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Socruithe -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Socruithe AI/Scripteanna cluiche STR_SETTINGS_MENU_NEWGRF_SETTINGS :Socruithe NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Roghanna trédhearcachta STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Taispeántar ainmneacha bailte @@ -2044,7 +2043,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tábla n STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Socruithe STR_INTRO_NEWGRF_SETTINGS :{BLACK}Socruithe NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Seiceáil Inneachar Ar Líne -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Socruithe AI/Script Cluiche STR_INTRO_QUIT :{BLACK}Scoir STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Tosaigh cluiche nua. Scipeáltar cumrú an léarscáil le Ctrl+Cliceáil @@ -2064,7 +2062,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Taispeá STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Socruithe taispeána STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Taispeáin socruithe NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Seiceáil le haghaidh inneachar nua agus nuashonruithe le híoslódáil -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Taispeáin socruithe AI/Script cluiche STR_INTRO_TOOLTIP_QUIT :{BLACK}Téigh amach as 'OpenTTD' STR_INTRO_BASESET :{BLACK}Tá {NUM} sprít in easnamh sa bhuntacar grafaicí. Seiceáil an bhfuil nuashonruithe ar fáil don bhuntacar. @@ -4503,7 +4500,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Thuairte STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Níl an fhuinneog Dífhabhtú AI ar fáil ach don fhreastalaí amháin # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Cumrú AI STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}An Script Cluiche a lódálfar sa chéad chluiche eile STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Na AInna a lódálfar sa chéad chluiche eile STR_AI_CONFIG_HUMAN_PLAYER :Imreoir Daonna @@ -4519,8 +4515,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Bog an A STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script Cluiche STR_AI_CONFIG_AI :{SILVER}AInna -STR_AI_CONFIG_CHANGE :{BLACK}Roghnaigh {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script Cluiche STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Lódáil script eile @@ -4551,9 +4545,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Seat sc STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Seat scáileáin den mhion-léarscáil # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Paraiméadair {STRING} STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script an Chluiche STR_AI_SETTINGS_CLOSE :{BLACK}Dún STR_AI_SETTINGS_RESET :{BLACK}Athshocraigh STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/italian.txt b/src/lang/italian.txt index 60b7deb44c..3d4a90da33 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -394,10 +394,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Esci # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opzioni gioco STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Impostazioni -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Impostazioni IA e Script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Impostazioni NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opzioni trasparenza STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostra nomi città @@ -2094,7 +2093,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Punteggi STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Impostazioni STR_INTRO_NEWGRF_SETTINGS :{BLACK}Impostazioni NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contenuti online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Impostazioni IA e Script STR_INTRO_QUIT :{BLACK}Esci STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Inizia una nuova partita. CTRL salta la configurazione della mappa. @@ -2114,7 +2112,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostra l STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostra le impostazioni STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostra le impostazioni NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Controlla la disponibilità di contenuti nuovi o aggiornati da scaricare -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostra le impostazioni delle IA e degli Script STR_INTRO_TOOLTIP_QUIT :{BLACK}Esci da OpenTTD STR_INTRO_BASESET :{BLACK}Nel pacchetto grafico di base attualmente selezionato mancano {NUM} sprite. È consigliabile controllare gli aggiornamenti del pacchetto. @@ -4574,7 +4571,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Uno degl STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La finestra di debug IA/Script è disponibile soltanto per il server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configurazione IA e Script STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Lista degli Script che saranno caricati nella prossima partita STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Lista delle IA che saranno caricate nella prossima partita STR_AI_CONFIG_HUMAN_PLAYER :Giocatore umano @@ -4590,8 +4586,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Sposta l STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Seleziona {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Carica un altro script @@ -4622,9 +4616,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Screensh STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Screenshot della minimappa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Parametri {STRING} STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script STR_AI_SETTINGS_CLOSE :{BLACK}Chiudi STR_AI_SETTINGS_RESET :{BLACK}Reimposta STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/japanese.txt b/src/lang/japanese.txt index 082c5484d2..2de1549041 100644 --- a/src/lang/japanese.txt +++ b/src/lang/japanese.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR :――――― STR_SCENEDIT_FILE_MENU_QUIT :OpenTTDを終了 # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :ゲームオプション設定 STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :設定 -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI/ゲームスクリプト設定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRFの設定 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透過表示設定 STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :街名を表示 @@ -2051,7 +2050,6 @@ STR_INTRO_HIGHSCORE :{BLACK}ハイ STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}設定 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRFの設定 STR_INTRO_ONLINE_CONTENT :{BLACK}オンラインコンテンツの確認 -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/ゲームスクリプトの設定 STR_INTRO_QUIT :{BLACK}終了 STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}新規ゲームを開始します。Ctrl+クリックで地形生成設定をスキップします @@ -2071,7 +2069,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}ハイ STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}設定を表示 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRFの有効/無効化、各パラメータの設定ができます STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}公式オンラインコンテンツのデータベースからデータの確認・追加・更新ができます -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/ゲームスクリプトの設定を行います STR_INTRO_TOOLTIP_QUIT :{BLACK}OpenTTD を終了します STR_INTRO_BASESET :現在選択されているグラフィックのベースセットは {NUM} つのスプライトが欠けています。ベースセットの更新を確認してみてください。 @@ -4513,7 +4510,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}実行 STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/ゲームスクリプトのデバッグウインドウはサーバーでのみ使用できます # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AIの設定 STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}このゲームスクリプトは次のゲーム開始時からロードされます STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}}このAIは次のゲーム開始時からロードされます STR_AI_CONFIG_HUMAN_PLAYER :人間のプレーヤー @@ -4529,8 +4525,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}選択 STR_AI_CONFIG_GAMESCRIPT :{SILVER}ゲームスクリプト STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}{STRING}を選択 -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :ゲームスクリプト STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}他のスクリプトをロードします @@ -4561,9 +4555,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}ハイ STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}ミニマップのスクリーンショット # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} パラメータ STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :ゲームスクリプト STR_AI_SETTINGS_CLOSE :{BLACK}閉じる STR_AI_SETTINGS_RESET :{BLACK}リセット STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/korean.txt b/src/lang/korean.txt index 9b878df623..ced54f2b70 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :게임 종료 # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :게임 기본 설정 STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :설정 -STR_SETTINGS_MENU_SCRIPT_SETTINGS :인공지능/게임 스크립트 설정 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 설정 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :투명 설정 STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :도시 이름을 표시함 @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}고득 STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}설정 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 설정 STR_INTRO_ONLINE_CONTENT :{BLACK}온라인 콘텐츠 다운로드 -STR_INTRO_SCRIPT_SETTINGS :{BLACK}인공지능/게임 스크립트 설정 STR_INTRO_QUIT :{BLACK}종료 STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}새 게임을 시작합니다.{}CTRL+클릭하시면 지도 설정을 건너뛰고 바로 시작합니다. @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}고득 STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}설정 창을 엽니다. STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF 설정 창을 엽니다. STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}새로 나왔거나 업데이트된 콘텐츠를 체크하여 다운로드합니다. -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}인공지능/게임 스크립트 설정창을 엽니다. STR_INTRO_TOOLTIP_QUIT :{BLACK}'OpenTTD'를 종료합니다. STR_INTRO_BASESET :{BLACK}현재 선택된 기본 그래픽 세트에는 {NUM}개의 스프라이트가 빠져있습니다. 기본 세트를 업데이트하세요. @@ -4538,7 +4535,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}작동 STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}인공지능/게임 스크립트 디버그창은 오직 서버만 사용 가능합니다 # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}인공지능 / 게임 스크립트 설정 STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}다음에 게임을 시작할 때 이 게임 스크립트를 불러올 것입니다 STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}다음에 게임을 시작할 때 이 인공지능을 불러올 것입니다 STR_AI_CONFIG_HUMAN_PLAYER :사용자 플레이어 @@ -4554,8 +4550,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}목록 STR_AI_CONFIG_GAMESCRIPT :{SILVER}게임 스크립트 STR_AI_CONFIG_AI :{SILVER}인공지능 -STR_AI_CONFIG_CHANGE :{BLACK}{STRING} 선택하기 -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :인공지능 STR_AI_CONFIG_CHANGE_GAMESCRIPT :게임 스크립트 STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}다른 스크립트 불러오기 @@ -4586,9 +4580,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}높이 STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}미니맵 스크린 샷 # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} 매개 변수 STR_AI_SETTINGS_CAPTION_AI :인공지능 -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :게임 스크립트 STR_AI_SETTINGS_CLOSE :{BLACK}닫기 STR_AI_SETTINGS_RESET :{BLACK}초기화 STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/latin.txt b/src/lang/latin.txt index 5a5f636d88..d1e80a8059 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -565,10 +565,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Exire # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Ludi optiones STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Electiones -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Optiones IA/Ludi scriptorum STR_SETTINGS_MENU_NEWGRF_SETTINGS :Optiones NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Optiones perluciditatis STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Nomina oppidorum spectabilia @@ -2127,7 +2126,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Album Pu STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Electiones STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Optiones STR_INTRO_ONLINE_CONTENT :{BLACK}Inspicere Inventarium Interretiale -STR_INTRO_SCRIPT_SETTINGS :{BLACK}IA/Ludi Scriptorum Optiones STR_INTRO_QUIT :{BLACK}Exire STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Incipere novum ludum. Ctrl+Preme ut configuratio tabulae omittatur @@ -2147,7 +2145,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Monstrar STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Monstrare electiones STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Monstrare optiones NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Inspicere inventarium Interretiale in quo res sicut NewGRF, scaenaria, musica, etc. sunt -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Monstrare optiones IA/Ludi scriptorum STR_INTRO_TOOLTIP_QUIT :{BLACK}Exire OpenTTD STR_INTRO_BASESET :{BLACK}Hoc fundamento graphico desunt spiritus {NUM}. Quaere novam editionem huius fundamenti. @@ -4395,7 +4392,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Unum cur STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Fenestra Emendationis IA/Ludi Scripti tantum servatro licet uti # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuratio IA/Ludi Scriptum STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Ludi Scriptum quod imponet ludo proximo STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}IA quae imponet ludo proximo STR_AI_CONFIG_HUMAN_PLAYER :Lusor humanus @@ -4411,8 +4407,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Movere I STR_AI_CONFIG_GAMESCRIPT :{SILVER}Ludi Scriptum STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}Eligere {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Scriptum STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Legere aliud ludi scriptum @@ -4436,9 +4430,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Non scri # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametra STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Ludi Scripti STR_AI_SETTINGS_CLOSE :{BLACK}Claudere STR_AI_SETTINGS_RESET :{BLACK}Revertere STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt index 7d54e4914a..bf001cf379 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -394,10 +394,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Iziet # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spēles opcijas STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Iestatījumi -STR_SETTINGS_MENU_SCRIPT_SETTINGS :MI/spēles skriptu iestatījumi STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF iestatījumi STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Caurspīdības opcijas STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Rādīt pilsētu nosaukumus @@ -2063,7 +2062,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Sasniegu STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Iestatījumi STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF iestatījumi STR_INTRO_ONLINE_CONTENT :{BLACK}Pārbaudīt tiešsaistes saturu -STR_INTRO_SCRIPT_SETTINGS :{BLACK}MI/spēles skriptu iestatījumi STR_INTRO_QUIT :{BLACK}Iziet STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Sākt jaunu spēli. Ctrl+klikšķis izlaiž kartes konfigurēšanu @@ -2083,7 +2081,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rādīt STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Displeja iestatījumi STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Rādīt NewGRF iestatījumus STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Pārbaudīt vai lejupielādei nav pieejams jauns un atjaunināts saturs -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Rādīt MI un spēles skriptu iestatījumus STR_INTRO_TOOLTIP_QUIT :{BLACK}Iziet no 'OpenTTD' STR_INTRO_BASESET :{BLACK}Pašlaik izvēlētajai bāzes grafikas kopai trūkst {NUM} sprait{P s i u}. Lūdzu, pārbaudiet, vai bāzes kopai ir atjauninājumi. @@ -4543,7 +4540,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Viens no STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}MI/spēles skriptu atkļūdošanas logs ir pieejams tikai serverim # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}MI/spēles skriptu konfigurācija STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spēles skripts, kas tiks ielādēts nākamajā spēlē STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}MI, kas tiks ielādēts nākamajā spēlē STR_AI_CONFIG_HUMAN_PLAYER :Spēlētājs (cilvēks) @@ -4559,8 +4555,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Nolaist STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spēles skripti STR_AI_CONFIG_AI :{SILVER}MI -STR_AI_CONFIG_CHANGE :{BLACK}Izvēlēties {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :MI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spēles skripts STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Ielādēt citu skriptu @@ -4591,9 +4585,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Augstumk STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minikartes ekrānuzņēmums # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} parametri STR_AI_SETTINGS_CAPTION_AI :MI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spēles skripts STR_AI_SETTINGS_CLOSE :{BLACK}Aizvērt STR_AI_SETTINGS_RESET :{BLACK}Atiestatīt STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt index f36a1a0729..b2cb32c9ba 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -585,10 +585,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Išeiti # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Pagrindinės nuostatos STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Išplėstinės nuostatos -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Dirbtinio intelekto nuostatos STR_SETTINGS_MENU_NEWGRF_SETTINGS :Plėtinių nuostatos STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Skaidrumo nuostatos STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Miestų pavadinimai @@ -2261,7 +2260,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Nugalėt STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Išplėstinės nuostatos STR_INTRO_NEWGRF_SETTINGS :{BLACK}Plėtiniai STR_INTRO_ONLINE_CONTENT :{BLACK}Interneto turinys -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Dirbtinio intelekto nuostatos STR_INTRO_QUIT :{BLACK}Išeiti STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Pradėti naują žaidimą. Spragtelėjus laikant nuspaustą Ctrl klavišą, naujas žemėlapis bus sugeneruotas nedelsiant ir nieko nebeklausiant @@ -2281,7 +2279,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Rodyti n STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Rodyti išplėstines nuostatas STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Rodyti parsisiųstus plėtinius ir jų nuostatas STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Tikrinti, ar nėra naujų plėtinių arba atnaujinimų jau atsisiųstiems plėtiniams -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Rodyti dirbtinio intelekto nuostatas STR_INTRO_TOOLTIP_QUIT :{BLACK}Išeiti iš „OpenTTD“ žaidimo STR_INTRO_BASESET :{BLACK}Šiuo metu pasirinktame grafikos rinkinyje trūksta {NUM} sprukl{P io ių ių}. Patikrinkite, ar nėra naujinių. @@ -4721,7 +4718,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Vienas i STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}DI / GameScript derinimo langas yra pasiekiamas tik iš serverio # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}DI / Žaidimo Nustatymai STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Žaidimo skriptas bus įkeltas sekančiame žaidime STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}DI'ai bus įkelti sekančiame žaidime STR_AI_CONFIG_HUMAN_PLAYER :Žaidėjas Žmogus @@ -4737,8 +4733,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Perkelti STR_AI_CONFIG_GAMESCRIPT :{SILVER}Žaidimo skriptas STR_AI_CONFIG_AI :{SILVER}DI'ai -STR_AI_CONFIG_CHANGE :{BLACK}Pasirinkti {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :DI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Žaidimo skriptas STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Užkrauti kitą skriptą @@ -4769,9 +4763,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Teminio STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Mini žemėlapio kopija # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametrai STR_AI_SETTINGS_CAPTION_AI :DI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Žaidimo skriptas STR_AI_SETTINGS_CLOSE :{BLACK}Uždaryti STR_AI_SETTINGS_RESET :{BLACK}Atstatyti STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt index 05ad859dfa..e9106351b4 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Eraus # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spilloptiounen STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Astellungen -STR_SETTINGS_MENU_SCRIPT_SETTINGS :KI / Spill-Script Astellungen STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF Astellungen STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparenz Optiounen STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Stiednimm uweisen @@ -2049,7 +2048,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Beschtel STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Astellungen STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Astellungen STR_INTRO_ONLINE_CONTENT :{BLACK}Check Online Inhalt -STR_INTRO_SCRIPT_SETTINGS :{BLACK}KI / Spill-Script Astellungen STR_INTRO_QUIT :{BLACK}Eraus STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start en neit Spill. Ctrl+Klick iwwerspréngt Kaartenkonfiguratioun @@ -2069,7 +2067,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Beschtel STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Displayastellungen STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF Astellungen uweisen STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Check op neien Inhalt kann downgeload gin -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Weis KI an Spill-Script-Astellungen STR_INTRO_TOOLTIP_QUIT :{BLACK}Aus 'OpenTTD' eraus goen STR_INTRO_BASESET :{BLACK}Dem grad ausgewielte Basis Grafikset fehlen {NUM} Sprite{P "" s}. W.e.g. no Updates fir dëse Set sichen. @@ -4509,7 +4506,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}En Scrip STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}KI / Spill-Script Debugfënster ass nëmmen fir Serveren verfügbar # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}KI /Spill-Script Konfiguratioun STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}D'Spill-Script dat am nächsten Spill geluede gëtt STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}D'KIën déi am nächsten Spill geluede ginn STR_AI_CONFIG_HUMAN_PLAYER :Mënschleche Spiller @@ -4525,8 +4521,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Gewielte STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spill-Script STR_AI_CONFIG_AI :{SILVER}KIën -STR_AI_CONFIG_CHANGE :{BLACK}Wiel {STRING} aus -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :KI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spill-Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Lued en aneren Script @@ -4557,9 +4551,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Héichte STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap-Screenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameter STR_AI_SETTINGS_CAPTION_AI :KI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spill-Script STR_AI_SETTINGS_CLOSE :{BLACK}Zoumaachen STR_AI_SETTINGS_RESET :{BLACK}Reset STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/macedonian.txt b/src/lang/macedonian.txt index 1d656d80fd..e3d8518033 100644 --- a/src/lang/macedonian.txt +++ b/src/lang/macedonian.txt @@ -353,9 +353,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Напушти # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :игра опции -STR_SETTINGS_MENU_SCRIPT_SETTINGS :АИ / игри поставувања STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF подесувања STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :транспарентност опции STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Место имиња прикажани @@ -1159,11 +1158,9 @@ STR_INTRO_SCENARIO_EDITOR :{BLACK}Сцен STR_INTRO_MULTIPLAYER :{BLACK}Повеќе играчи STR_INTRO_GAME_OPTIONS :{BLACK}Опции на Играта -STR_INTRO_SCRIPT_SETTINGS :{BLACK}АИ / Играта Подесувања -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Покажи АИ и игра поставувања # Quit window @@ -1949,7 +1946,6 @@ STR_AI_CONFIG_NONE :(никој) STR_AI_CONFIG_GAMESCRIPT :{SILVER}GameScript STR_AI_CONFIG_AI :{SILVER}ЗИС -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :АИ STR_AI_CONFIG_CHANGE_GAMESCRIPT :GameScript @@ -1962,7 +1958,6 @@ STR_AI_LIST_CAPTION_GAMESCRIPT :GameScripts # AI Parameters STR_AI_SETTINGS_CAPTION_AI :АИ -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :GameScript STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} STR_AI_SETTINGS_START_DELAY :Број на денови за да започнете оваа Пи по претходниот (се дава или зема): {ORANGE}{STRING} diff --git a/src/lang/malay.txt b/src/lang/malay.txt index 365f0b4c30..8877ab0227 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -358,10 +358,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Keluar # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Pilihan permainan STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Tetapan -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Al/Tetapan skrip permainan STR_SETTINGS_MENU_NEWGRF_SETTINGS :Tetapan NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Pilihan Ketelusan STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Paparkan nama bandar @@ -1676,7 +1675,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Carta ma STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Tetapan STR_INTRO_NEWGRF_SETTINGS :{BLACK}Tetapan NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Periksa Kandungan Atas Talian -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Al/Tetapan Skrip Permainan STR_INTRO_QUIT :{BLACK}Keluar STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Mulakan permainan baru. Ctrl+Klik akan melangkaui konfigurasi peta @@ -1696,7 +1694,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Paparan STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Pamerkan pilihan STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Paparkan tetapan NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Periksa kandungan baru atau yang telah dikemaskini untuk dimuat turun -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Paparan Al/Tetapan Skrip Permainan STR_INTRO_TOOLTIP_QUIT :{BLACK}Keluar 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}Terjemahan ini kekurangan {NUM} string. Sila bantu menjadikan OpenTTD lebih baik dengan mendaftar sebagai penterjemah. Lihat readme.txt untuk maklumat. @@ -3798,7 +3795,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Salah sa STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Tetingkap Kepintaran Tiruan / SkripPermainan Nyahpepijat hanya tersedia bagi pelayan # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfigurasi Kepintaran Tiruan / Permainan STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}SkripPermainan yang akan dimuatkan pada permainan seterusnya STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Kepintaran Tiruan yang akan dimuatkan pada permainan seterusnya STR_AI_CONFIG_HUMAN_PLAYER :Pemain manusia @@ -3814,8 +3810,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Pindah K STR_AI_CONFIG_GAMESCRIPT :{SILVER}SkripPermainan STR_AI_CONFIG_AI :{SILVER}KepintaranTiruan -STR_AI_CONFIG_CHANGE :{BLACK}Pilih {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :Kepintaran Tiruan STR_AI_CONFIG_CHANGE_GAMESCRIPT :SkripPermainan STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Muat skrip yang lain @@ -3839,9 +3833,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Jangan u # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameter STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :SkripPermainan STR_AI_SETTINGS_CLOSE :{BLACK}Tutup STR_AI_SETTINGS_RESET :{BLACK}Semula STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/maltese.txt b/src/lang/maltese.txt index 1a13d22f65..6c048f7a31 100644 --- a/src/lang/maltese.txt +++ b/src/lang/maltese.txt @@ -266,7 +266,7 @@ STR_TOOLBAR_TOOLTIP_FUND_CONSTRUCTION_OF_NEW :{BLACK}Ibni ind STR_SCENEDIT_FILE_MENU_SEPARATOR : # Settings menu -###length 14 +###length 15 # File menu ###length 5 @@ -1314,7 +1314,6 @@ STR_TIMETABLE_CLEAR_SPEED_TOOLTIP :{BLACK}Исчи -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/marathi.txt b/src/lang/marathi.txt index 9da5f18691..aec6db8d83 100644 --- a/src/lang/marathi.txt +++ b/src/lang/marathi.txt @@ -347,9 +347,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :बंद करा # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :खेळाचे पर्याय -STR_SETTINGS_MENU_SCRIPT_SETTINGS :ए.आय. / गेम स्क्रिप्ट सेटिंग्ज STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF पर्याय STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :पारदर्शकता पर्याय STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :शहरांची नावे दाखवा @@ -1744,7 +1743,6 @@ STR_TIMETABLE_CHANGE_TIME :{BLACK}वे -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt index a1009fd088..1ff9988e3e 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -394,10 +394,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Avslutt # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spillinnstillinger STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Innstillinger -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI-/Spillskript-innstillinger STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-innstillinger STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Instillinger for gjennomsiktighet STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Vis bynavn @@ -2054,7 +2053,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tavle me STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Innstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-innstillinger STR_INTRO_ONLINE_CONTENT :{BLACK}Se etter innhold på nettet -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI/Spillskript-innstillinger STR_INTRO_QUIT :{BLACK}Avslutt STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start et nytt spill. Ctrl+klikk hopper over kartkonfigurering @@ -2074,7 +2072,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Vise tav STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Vis innstillinger STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Vis NewGRF-instillinger STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Se etter nytt og oppdatert innhold for nedlasting -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis AI/Spillskript-innstillinger STR_INTRO_TOOLTIP_QUIT :{BLACK}Avslutt 'OpenTTD' STR_INTRO_BASESET :{BLACK}Det valgte innebygde grafikksettet mangler {NUM} sprite{P "" r}. Se etter oppdateringer for settet. @@ -4517,7 +4514,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Et skrip STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Spillskript-feilsøkingsvindu er kun tilgjengelig for tjeneren # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/Spillskript-konfigurasjon STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spillskriptet som vil bli lastet i neste spill STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI-ene som vil bli lastet i neste spill STR_AI_CONFIG_HUMAN_PLAYER :Menneskelig spiller @@ -4533,9 +4529,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Flytt va STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spillskript STR_AI_CONFIG_AI :{SILVER}AI-er -STR_AI_CONFIG_CHANGE :{BLACK}Velg {STRING} -STR_AI_CONFIG_CHANGE_NONE : -STR_AI_CONFIG_CHANGE_NONE.small :AI STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spillskript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Last enda et skript @@ -4566,9 +4559,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Høydeka STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Oversiktskart skjermbilde # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametre STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spillskript STR_AI_SETTINGS_CLOSE :{BLACK}Lukk STR_AI_SETTINGS_RESET :{BLACK}Tilbakestill STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt index e89b71204e..f0d0c47419 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -377,10 +377,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Avslutt # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spelinstillingar STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Innstillinger -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI- / Spelscript-innstillingar STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF-innstillingar STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Gjennomsiktigheitsinnstillingar STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Syne bynamn @@ -1836,7 +1835,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Poengtav STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Innstillinger STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-innstillingar STR_INTRO_ONLINE_CONTENT :{BLACK}Sjå etter innhald på nett -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI- / Spelscriptinnstillingar STR_INTRO_QUIT :{BLACK}Avslutt STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Start eit nytt spel. CTRL+klikk hoppar over kartkonfigurasjon @@ -1856,7 +1854,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Syn poen STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skjerminnstillingar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Syne NewGRF-instillingar STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Sjå etter nytt og oppdatert innhald som kan lastas ned -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Vis AI- og spelscriptinnstillingar STR_INTRO_TOOLTIP_QUIT :{BLACK}Avslutt 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}Denne nynorsk-omsettinga manglar {NUM} tekst{P "" ar}. Du må gjerne verte med i omsettingsgruppa for å hjelpe til å gjere OpenTTD betre. Sjå readme.txt for detaljar. @@ -4021,7 +4018,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Ein AI h STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI- / Spelscript-feilsøkingvindauget er kun tilgjengeleg for tenaren # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI- / Spelkonfigurasjonar STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spelscriptet som blir lasta i neste spel STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AIane som blir lasta i neste spel STR_AI_CONFIG_HUMAN_PLAYER :Menneskeleg spelar @@ -4037,8 +4033,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Flytt va STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spelscript STR_AI_CONFIG_AI :{SILVER}AIar -STR_AI_CONFIG_CHANGE :{BLACK}Vel {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spelscript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Last eit anna script @@ -4062,9 +4056,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ikkje en # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameter STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spelscript STR_AI_SETTINGS_CLOSE :{BLACK}Lukk STR_AI_SETTINGS_RESET :{BLACK}Tilbakestill STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/persian.txt b/src/lang/persian.txt index ec33f2aa5f..f0cb891542 100644 --- a/src/lang/persian.txt +++ b/src/lang/persian.txt @@ -367,9 +367,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :خروج # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :تنظیمات بازی -STR_SETTINGS_MENU_SCRIPT_SETTINGS :هوش مصنوعی / تنظیمات بازی STR_SETTINGS_MENU_NEWGRF_SETTINGS :تنظیمات NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :گزینه های شفافیت STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :نام شهرها نشان داده شود @@ -1641,7 +1640,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}بازی STR_INTRO_GAME_OPTIONS :{BLACK}تنضیمات بازی STR_INTRO_NEWGRF_SETTINGS :{BLACK}تنظیمات NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}چک کردن محتوی آنلاین -STR_INTRO_SCRIPT_SETTINGS :{BLACK} تنظیمات هوش مصنوعی / اسکریپت STR_INTRO_QUIT :{BLACK}خروج STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}شروع بازی جدید. Ctrl+Click پیش تنظیمات نقشه را رد و از تنظیمات گذشته استفاده می کند. @@ -1660,7 +1658,6 @@ 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}نمایش تنظیمات هوش مصنوعی و اسکریپت های بازی STR_INTRO_TOOLTIP_QUIT :{BLACK} خروج از 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}این ترجمه {NUM} رشته{P ی های}ترجمه نشده دارد. با ثبت نام کردن به عنوان مترجم ما را در بهتر سازی OpenTTD یاری نمایید. فایل readme.txt را برای جزییات بیشتر بخوانید. @@ -3443,7 +3440,6 @@ STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}دیدن STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}پنجره رفع اشکال کد فقط برای سرور قابل دسترس است # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}تنظیمات هوش مصنوعی / بازی STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}کد بازی که در بازی بعدی بارگذاری می شود STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}هوش مصنوعی که در بازی بعدی بارگذاری می شود STR_AI_CONFIG_HUMAN_PLAYER :بازیکن آدمیزاد @@ -3459,8 +3455,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}حرکت STR_AI_CONFIG_GAMESCRIPT :{SILVER}کدبازی STR_AI_CONFIG_AI :{SILVER}هوشهای مصنوعی -STR_AI_CONFIG_CHANGE :{BLACK}انتخاب {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :هوش مصنوعی(AI) STR_AI_CONFIG_CHANGE_GAMESCRIPT :کد بازی STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}بارگزاری کد دیگر @@ -3483,9 +3477,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}کد ر # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} پارامترها STR_AI_SETTINGS_CAPTION_AI :هوش مصنوعی(AI) -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :کد بازی STR_AI_SETTINGS_CLOSE :{BLACK}بستن STR_AI_SETTINGS_RESET :{BLACK}بازنشاندن STR_AI_SETTINGS_START_DELAY :تعداد روزهایی که این بازیگر هوش مصنوعی پس از بازیگر هوش مصنوعی قبلی قبل از اتصال صبر می کند(کم و بیش): {ORANGE}{STRING} diff --git a/src/lang/polish.txt b/src/lang/polish.txt index af95dc1545..51fce6055d 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -771,10 +771,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Wyjście # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opcje gry STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ustawienia -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Ustawienia SI / Game Script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Ustawienia NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcje przeźroczystości STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Wyświetlanie nazw miast @@ -2439,7 +2438,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabela w STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ustawienia STR_INTRO_NEWGRF_SETTINGS :{BLACK}Ustawienia NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Sprawdź dodatki online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Ustawienia SI/Game Script STR_INTRO_QUIT :{BLACK}Wyjście STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Rozpocznij nową grę. Ctrl+klik pomija konfigurowanie mapy @@ -2459,7 +2457,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Wyświet STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Wyświetl ustawienia gry STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Wyświetl ustawienia NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Poszukaj nowych lub zaktualizowanych dodatków do pobrania -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Pokaż ustawienia SI / Game Script STR_INTRO_TOOLTIP_QUIT :{BLACK}Wyjdź z „OpenTTD” STR_INTRO_BASESET :{BLACK}Aktualnie używany podstawowy zestaw graficzny nie posiada {NUM} wymagan{P ego ych ych} sprite{P 'u 'ów 'ów}. Proszę poszukać aktualizacji dla zestawu podstawowego. @@ -4923,7 +4920,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Jeden z STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Okno debugowania SI / Game Script jest dostępne tylko na serwerze # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfiguracja SI / Game Script STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Game Script, który zostanie załadowany podczas kolejnej gry STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}SI, które zostaną załadowane podczas kolejnej gry STR_AI_CONFIG_HUMAN_PLAYER :Ludzki gracz @@ -4939,8 +4935,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Przesuń STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script STR_AI_CONFIG_AI :{SILVER}SI -STR_AI_CONFIG_CHANGE :{BLACK}Wybierz {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :SI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Wczytaj kolejny skrypt @@ -4971,9 +4965,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Zrzut ek STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Zrzut ekranu minimapy # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametry STR_AI_SETTINGS_CAPTION_AI :SI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script STR_AI_SETTINGS_CLOSE :{BLACK}Zamknij STR_AI_SETTINGS_RESET :{BLACK}Resetuj STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt index dbc58e4584..71f782716d 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -402,10 +402,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Sair # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opções do Jogo STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Definições -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Definições de IA / Scripts de Jogo STR_SETTINGS_MENU_NEWGRF_SETTINGS :Definições NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opções de Transparência STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostrar nomes de localidades @@ -2069,7 +2068,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabela d STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Definições STR_INTRO_NEWGRF_SETTINGS :{BLACK}Definições NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Verificar conteúdo online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Definições de IA/Script de jogo STR_INTRO_QUIT :{BLACK}Sair STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Iniciar um novo jogo. Ctrl+Clique salta a configuração do mapa @@ -2089,7 +2087,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostrar definições STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostrar definições de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Verificar conteúdo novo e actualizado para descarga -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostrar definições de IA e de script de jogo STR_INTRO_TOOLTIP_QUIT :{BLACK}Sair de 'OpenTTD' STR_INTRO_BASESET :{BLACK}O conjunto de gráficos base seleccionado tem {NUM} sprite{P "" s} em falta. Por favor verifique se existem atualizações para o conjunto. @@ -4550,7 +4547,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Houve um STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}A janela de Depuração de IA/Scripts de jogo está disponível apenas para o servidor # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuração IA/Script de jogo STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}O Script de jogo que será carregado no próximo jogo STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}As IAs que serão carregadas no próximo jogo STR_AI_CONFIG_HUMAN_PLAYER :Jogador humano @@ -4566,8 +4562,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Move a I STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de jogo STR_AI_CONFIG_AI :{SILVER}IAs -STR_AI_CONFIG_CHANGE :{BLACK}Selecionar {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script de jogo STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Carregar outro script @@ -4598,9 +4592,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Mapa de STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimap screenshot # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parâmetros STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de jogo STR_AI_SETTINGS_CLOSE :{BLACK}Fechar STR_AI_SETTINGS_RESET :{BLACK}Repor STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt index f22592c5e4..3152eeab8c 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Ieşire din joc # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opţiunile jocului STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Setări -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Setări IA / Script Joc STR_SETTINGS_MENU_NEWGRF_SETTINGS :Setări NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opţiuni transparenţă STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Afişează numele oraşelor @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabela c STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Setări STR_INTRO_NEWGRF_SETTINGS :{BLACK}Setări NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Resurse online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Setări IA / Scripturi Joc STR_INTRO_QUIT :{BLACK}Ieşire STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Începere joc nou. Ctrl+Click pentru a sări peste fereastra de configuraţie a harţii @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Afișeaz STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Setări afişare STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Afişează setările NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Verifică dacă există resurse noi sau actualizate pentru descărcare -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Afişează setările pentru Inteligența Artificială şi pentru Scripturi Joc STR_INTRO_TOOLTIP_QUIT :{BLACK}Ieși din 'OpenTTD' STR_INTRO_BASESET :{BLACK}Setul grafic actual are lipsă {NUM} {P sprite spriteuri "de spriteuri"}. Verificați actualizările pentru setul de bază. @@ -4532,7 +4529,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}O Inteli STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Fereastra pentru depanare IA / Script Joc este disponibilă doar serverului # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configurație Inteligentă Artificială / Scripturi Joc STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Script Joc încărcat în jocul următor STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Modulul de IA care va fi încărcat în jocul următor STR_AI_CONFIG_HUMAN_PLAYER :Jucator uman @@ -4548,8 +4544,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mută IA STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script Joc STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Selectare {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script Joc STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Încarcă un alt script @@ -4580,9 +4574,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Captură STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captură de hartă a lumii # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametrii STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script Joc STR_AI_SETTINGS_CLOSE :{BLACK}Închide STR_AI_SETTINGS_RESET :{BLACK}Resetează STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/russian.txt b/src/lang/russian.txt index dfaef5ed34..e5a4e409da 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -527,10 +527,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Выход # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Основные настройки STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Расширенные настройки -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Настройки ИИ / скрипта STR_SETTINGS_MENU_NEWGRF_SETTINGS :Настройки NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Настройки прозрачности STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Показывать названия городов @@ -2219,7 +2218,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Табл STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Расширенные настройки STR_INTRO_NEWGRF_SETTINGS :{BLACK}Настройки NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Проверить онлайн-контент -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Настройки ИИ / скрипта STR_INTRO_QUIT :{BLACK}Выход STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Начать новую игру. Ctrl+щелчок пропускает этап настройки карты. @@ -2239,7 +2237,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Пока STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Изменить расширенные настройки игры STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Показать настройки NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Найти новый и обновлённый контент для загрузки -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Изменить настройки ИИ / игрового скрипта STR_INTRO_TOOLTIP_QUIT :{BLACK}Выйти из OpenTTD STR_INTRO_BASESET :{BLACK}В выбранном наборе базовой графики отсутству{P 0 е ю ю}т {NUM} спрайт{P "" а ов}. Пожалуйста, обновите набор графики. @@ -4736,7 +4733,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Один STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Окно отладки ИИ / скрипта доступно только для сервера # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Конфигурация ИИ / скрипта STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Игровой скрипт, который будет загружен в следующей игре STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Модули ИИ, которые будут загружены в следующей игре STR_AI_CONFIG_HUMAN_PLAYER :Человек @@ -4752,8 +4748,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Пере STR_AI_CONFIG_GAMESCRIPT :{SILVER}Игровой скрипт STR_AI_CONFIG_AI :{SILVER}ИИ -STR_AI_CONFIG_CHANGE :{BLACK}Выбрать {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :ИИ STR_AI_CONFIG_CHANGE_GAMESCRIPT :Игровой скрипт STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Загрузить другой скрипт @@ -4784,9 +4778,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Сним STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Снимок миникарты # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Параметры {STRING} STR_AI_SETTINGS_CAPTION_AI :ИИ -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Игровой скрипт STR_AI_SETTINGS_CLOSE :{BLACK}Закрыть STR_AI_SETTINGS_RESET :{BLACK}Сброс STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt index 69ffe665bd..92456d8e25 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -580,10 +580,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Izađi # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opcije STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Podešavanja -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Podešavanja VI/Skripte partije STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF podešavanja STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opcije transparentnosti STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Prikazana imena naselja @@ -2244,7 +2243,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabela n STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Podešavanja STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Podešavanja STR_INTRO_ONLINE_CONTENT :{BLACK}Spisak Dodataka na Mreži -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Podešavanja VI/Skripte Partije STR_INTRO_QUIT :{BLACK}Izađi STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Započinje novu partiju. Ctrl+Klik preskače konfiguraciju mape @@ -2264,7 +2262,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikazuj STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Prikaži podešavanje STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikazuje NewGRF podešavanja STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Pregled novih i ažureiranih dodatka za preuzimanje -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikazuje podešavanja za VI/Skriptu partije STR_INTRO_TOOLTIP_QUIT :{BLACK}Napušta 'OpenTTD' STR_INTRO_BASESET :{BLACK}Trenutno odabranom skupu osnovne grafike nedostaje {NUM} sprajt{P "" "ova" "ova"}. Proverite da li postoje izmene za ovaj skup. @@ -4720,7 +4717,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Jedna od STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Prozor za korigovanje VI / Skripte Partije je dostupan samo na serveru # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Podešavanja VI / skripte igre STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Skripta igre koja će biti pokrenuta u sledećoj partiji STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Veštačke inteligencije koje će biti pokrenute u sledećoj partiji STR_AI_CONFIG_HUMAN_PLAYER :Ljudsko biće @@ -4736,8 +4732,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Pomera o STR_AI_CONFIG_GAMESCRIPT :{SILVER}Skripta igre STR_AI_CONFIG_AI :{SILVER}VIe -STR_AI_CONFIG_CHANGE :{BLACK}Izaberi {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :VI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skripta igre STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Učitava drugu skriptu @@ -4768,9 +4762,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Slika ek STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Slika umanjene mape # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametri STR_AI_SETTINGS_CAPTION_AI :VI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skripta Partije STR_AI_SETTINGS_CLOSE :{BLACK}Zatvori STR_AI_SETTINGS_RESET :{BLACK}Poništi STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt index 1b851c34ea..cc48a8956a 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :退出 # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :游戏选项 STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :设置 -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / 游戏脚本设定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 设置 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透明选项 STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :显示城镇名称 @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}高分 STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}设置 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 设置 STR_INTRO_ONLINE_CONTENT :{BLACK}在线查找扩展包 -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / 脚本 设定 STR_INTRO_QUIT :{BLACK}退出 STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}开始新游戏. 单击的同时按住Ctrl以跳过地图设置界面 @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}显示 STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}显示设置 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}显示GRF设定 STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}连接服务器并查找扩展包 -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}查看AI和脚本设定 STR_INTRO_TOOLTIP_QUIT :{BLACK}退出 'OpenTTD' STR_INTRO_BASESET :{BLACK}当前选定的基础图形组缺少 {NUM} 个子画面。请检查基础图形组有无更新。 @@ -4533,7 +4530,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}您使 STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI调试窗口只对服务器可用 # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI 设置 STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}下局游戏将启用这些脚本 STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}下局游戏将启用这些AI STR_AI_CONFIG_HUMAN_PLAYER :玩家 @@ -4549,8 +4545,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}在列 STR_AI_CONFIG_GAMESCRIPT :{SILVER}游戏脚本 STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}选择{STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :游戏脚本 STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}装在另一脚本 @@ -4581,9 +4575,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}高度 STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}小地图截图 # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} 参数 STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :游戏脚本 STR_AI_SETTINGS_CLOSE :{BLACK}关闭 STR_AI_SETTINGS_RESET :{BLACK}重设 STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt index 834445bdc8..491a2de9b4 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -456,10 +456,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Ukončiť # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Možnosti hry STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavenia -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Nastavenia AI/skriptu STR_SETTINGS_MENU_NEWGRF_SETTINGS :Nastavenia NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavenia priehľadnosti STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Zobraziť názvy miest @@ -2127,7 +2126,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Najvyš STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavenia STR_INTRO_NEWGRF_SETTINGS :{BLACK}Nastavenia NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Skontrolovať online obsah -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Nastavenia AI/skriptu STR_INTRO_QUIT :{BLACK}Ukončiť STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Spustiť novú hru. Ctrl+klik preskočí nastavenie mapy @@ -2147,7 +2145,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Zobrazi STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Zobraziť nastavenia STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Zobraziť nastavenia NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Skontrolovať nový a aktualizovaný obsah pre stiahnutie -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Zobraziť nastavenia AI/skriptu STR_INTRO_TOOLTIP_QUIT :{BLACK}Ukončiť 'OpenTTD' STR_INTRO_BASESET :{BLACK}Vo vybranej základnej sade grafiky chýba {NUM} prv{P ok ky kov}. Prosím skontrolujte aktualizácie sady grafiky. @@ -4605,7 +4602,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Jeden z STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Okno ladenia AI/skriptu je dostupné len pre server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Nastavenia AI/skriptu STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Skript, ktorý bude načítaný v ďalšej hre STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI, ktoré budú načítané v ďalšiej hre STR_AI_CONFIG_HUMAN_PLAYER :Človek @@ -4621,8 +4617,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Posunú STR_AI_CONFIG_GAMESCRIPT :{SILVER}Herný skript STR_AI_CONFIG_AI :{SILVER}AI (umelá inteligencia) -STR_AI_CONFIG_CHANGE :{BLACK}Vybrať {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Spusti ďalší skript @@ -4653,9 +4647,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Snímka STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Snímka minimapy # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametre STR_AI_SETTINGS_CAPTION_AI :Umelá inteligencia -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skript STR_AI_SETTINGS_CLOSE :{BLACK}Zavrieť STR_AI_SETTINGS_RESET :{BLACK}Resetovať STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt index 9f599d9e3d..0968312178 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -529,10 +529,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Izhod # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Možnosti igre STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Nastavitve -STR_SETTINGS_MENU_SCRIPT_SETTINGS :UI/Nastavitve skriptov igre STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF nastavitve STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Nastavitve prozornega pogleda STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Imena mest prikazana @@ -2073,7 +2072,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabela n STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Nastavitve STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF nastavitve STR_INTRO_ONLINE_CONTENT :{BLACK}Preveri razpoložljive vsebine -STR_INTRO_SCRIPT_SETTINGS :{BLACK}UI / Nastavitve skriptov igre STR_INTRO_QUIT :{BLACK}Izhod STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Začni novo igro. Ctrl+Klik preskoči konfiguracijo sveta @@ -2093,7 +2091,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Prikaži STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Nastavitve zaslona STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Prikaži nastavitve NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Preveri posodobljene vsebine na strežniku,{} ki so na voljo za prenos -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Prikaži UI in Nastavitve skriptov igre STR_INTRO_TOOLTIP_QUIT :{BLACK}Izhod iz 'OpenTTD' STR_INTRO_TRANSLATION :{BLACK}Temu prevodu manjka {NUM} vnos{P "" a i ov}. Prosimo pomagaj izboljšati OpenTTD in se vpiši za prevajanje. Preveri readme.txt za podrobnosti. @@ -4280,7 +4277,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Ena izme STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Okno razhroščevanja UI / skripte je na voljo samo za strežnik # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Nastavitve UI / skript igre STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Skript igre, ki bo naložen v naslednji igri STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}UI, ki bodo naložene v naslednji igri STR_AI_CONFIG_HUMAN_PLAYER :Igralec @@ -4296,8 +4292,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Premakni STR_AI_CONFIG_GAMESCRIPT :{SILVER}Skripta igre STR_AI_CONFIG_AI :{SILVER}UI-ji -STR_AI_CONFIG_CHANGE :{BLACK}Izberi {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :UI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Skripta igre STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Naloži drugi skript @@ -4321,9 +4315,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Ne sprem # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametri STR_AI_SETTINGS_CAPTION_AI :UI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Skripta igre STR_AI_SETTINGS_CLOSE :{BLACK}Zapri STR_AI_SETTINGS_RESET :{BLACK}Resetiraj STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt index fb4297ee5e..52b2b7217e 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Salir # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opciones de juego STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuración -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuración de Scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configuración NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opciones de transparencia STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Ver nombres de municipios @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabla de STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuración STR_INTRO_NEWGRF_SETTINGS :{BLACK}Configuración NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contenido Online -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuración de Scripts STR_INTRO_QUIT :{BLACK}Salir STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comeenza una partida nueva. Ctrl+clic omite la configuración del escenario @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Muestra STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Muestra la configuración STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Muestra los ajustes de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Comprueba si hay contenidos nuevos y actualizados para descargar -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Muestra la configuración de Scripts de juego e IA STR_INTRO_TOOLTIP_QUIT :{BLACK}Salir de 'OpenTTD' STR_INTRO_BASESET :{BLACK}El conjunto de gráficos base actualmente seleccionado no encuentra {NUM} sprite{P "" s}. Comprueba si hay actualizaciones para el conjunto base, o usa otro totalmente actualizado. @@ -4536,7 +4533,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Uno de l STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La ventana de depuración de Scripts solo está disponible para el servidor # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuración de Scripts de juego/IA STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Script de juego que será cargado en la próxima partida STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}IA que serán cargadas en la próxima partida STR_AI_CONFIG_HUMAN_PLAYER :Jugador humano @@ -4552,8 +4548,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mover la STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de juego STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Seleccionar {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script de juego STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Cargar otro script @@ -4584,9 +4578,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Mapa de STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Minimapa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Parámetros {STRING} STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de juego STR_AI_SETTINGS_CLOSE :{BLACK}Cerrar STR_AI_SETTINGS_RESET :{BLACK}Reiniciar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt index aeeaef8321..92142d82dd 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -397,10 +397,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Salir # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Opciones de juego STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Configuración -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Configuración de scripts STR_SETTINGS_MENU_NEWGRF_SETTINGS :Configuración de NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Opciones de transparencia STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Mostrar nombres de localidades @@ -2064,7 +2063,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabla de STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Configuración STR_INTRO_NEWGRF_SETTINGS :{BLACK}Config. NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Contenido en línea -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Configuración de scripts STR_INTRO_QUIT :{BLACK}Salir STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Comenzar una nueva partida. Ctrl+Clic omite la configuración del mapa @@ -2084,7 +2082,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Mostrar STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Mostrar configuración STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Mostrar configuración de NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Revisar si hay nuevos contenidos actualizados para descargar -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Mostrar configuración de scripts STR_INTRO_TOOLTIP_QUIT :{BLACK}Salir de 'OpenTTD' STR_INTRO_BASESET :{BLACK}A los gráficos base elegidos les hace falta {NUM} spirte{P "" s}. Necesitan actualizarse. @@ -4545,7 +4542,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Uno de l STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}La ventana de depuración de scripts solo está disponible para el servidor # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Configuración de scripts STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Script de juego que será cargado en la próxima partida STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Scripts de IA que serán cargados la próxima partida STR_AI_CONFIG_HUMAN_PLAYER :Jugador humano @@ -4561,8 +4557,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Mover la STR_AI_CONFIG_GAMESCRIPT :{SILVER}Script de juego STR_AI_CONFIG_AI :{SILVER}IA -STR_AI_CONFIG_CHANGE :{BLACK}Seleccionar {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :IA STR_AI_CONFIG_CHANGE_GAMESCRIPT :Script de juego STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Cargar otro script @@ -4593,9 +4587,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Mapa de STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Captura de minimapa # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}Parámetros {STRING} STR_AI_SETTINGS_CAPTION_AI :IA -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Script de juego STR_AI_SETTINGS_CLOSE :{BLACK}Cerrar STR_AI_SETTINGS_RESET :{BLACK}Reiniciar STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt index 1d445e735c..3e1e8d488a 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Avsluta # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Spelinställningar STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Inställningar -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Inställningar för datorspelare / spelskript STR_SETTINGS_MENU_NEWGRF_SETTINGS :Inställningar för NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Inställningar för genomskinlighet STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Stadsnamn visas @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Bästa s STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Inställningar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF-inställningar STR_INTRO_ONLINE_CONTENT :{BLACK}Kontrollera online-innehåll -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / spelskript-inställningar STR_INTRO_QUIT :{BLACK}Avsluta STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Starta ett nytt spel. Ctrl+klick hoppar över landskapskonfigurationen @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Visar en STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Skärminställningar STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Visa inställningar för NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kolla efter nytt och nyuppdaterat innehåll för nedladdning -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Visa inställningar för datorspelare och spelskript STR_INTRO_TOOLTIP_QUIT :{BLACK}Avsluta 'OpenTTD' STR_INTRO_BASESET :{BLACK}Det grafikpaket som för närvarande är valt som standard saknar {NUM} sprite{P "" s}. Vänligen kontrollera om det finns en uppdatering till paketet. @@ -4532,7 +4529,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Ett av s STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Felsökning av datorspelare / spelskript är bara tillgänglig för servern # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Konfiguration av datorspelare/spelskript STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Spelskriptet som kommer att läsas in i nästa spel STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Datorspelare som kommer att läsas in i nästa spel STR_AI_CONFIG_HUMAN_PLAYER :Mänsklig spelare @@ -4548,8 +4544,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Flytta n STR_AI_CONFIG_GAMESCRIPT :{SILVER}Spelskript STR_AI_CONFIG_AI :{SILVER}Datorspelare -STR_AI_CONFIG_CHANGE :{BLACK}Välj {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :Datorspelare STR_AI_CONFIG_CHANGE_GAMESCRIPT :Spelskript STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Läs in ett annat skript @@ -4580,9 +4574,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Skärmdu STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Skärmdump av miniatyrkartan # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} parametrar STR_AI_SETTINGS_CAPTION_AI :Datorspelarens -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Spelskriptets STR_AI_SETTINGS_CLOSE :{BLACK}Stäng STR_AI_SETTINGS_RESET :{BLACK}Återställ STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt index 5dd7069260..e26c895b08 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -384,10 +384,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :வெளியேறு # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :விளையாட்டு விருப்ப பேரம் STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :அமைப்புகள் -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / ஆட்ட அமைப்புகள் STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF அமைப்புகள் STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :ஒளி அமைப்புகள் STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :நகரத்தின் பெயர்களை காட்டு @@ -1844,7 +1843,6 @@ STR_INTRO_HIGHSCORE :{BLACK}பு STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}அமைப்புகள் STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF அமைப்புகள் STR_INTRO_ONLINE_CONTENT :{BLACK}கோப்புகளை இணையதளத்தில் தேடு -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / ஆட்டம் அமைப்புகள் STR_INTRO_QUIT :{BLACK}வெளியேறு STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}புதிய ஆட்டத்தினைத் தொடங்கும். Ctrl+Click அழுத்தினால் வரைபட அமைப்புவடிவாக்கம் தவிர்க்கப்படும் @@ -1862,7 +1860,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}பு STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}திரை அமைப்புகள் STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF அமைப்புகளைக் காட்டு STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}பதிவிறக்கம் செய்ய புதிய மற்றும் புதுப்பிக்கப்பட்ட உள்ளடக்கத்தை பார்க்கவும் -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}AI/வரிவடிவங்கள் அமைப்புகளைக் காட்டு STR_INTRO_TOOLTIP_QUIT :{BLACK} 'OpenTTD'ஐ விட்டு வெளியேறு STR_INTRO_TRANSLATION :{BLACK}இந்த மொழிபெயர்ப்பில் {NUM} இல்லை {P "" s}.மொழிபெயர்பாளராக பதிவு செய்து OpenTTDவிற்கு உதவவும். மேலும் விவரங்கள் அறிய readme.txt ஐ பார்க்கவும்.. @@ -4063,7 +4060,6 @@ STR_AI_GAME_SCRIPT_TOOLTIP :{BLACK}வர STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/ஆட்ட வரிவடிவம் சரிபார்த்தல் கட்டம் சர்வர்களுக்கு மட்டுமே உள்ளது # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI/வரிவடிவம் ஏற்றபடி அமை STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}வரிவடிவம் அடுத்த ஆட்டங்களிலிருந்து பதிவேற்றப்படும் STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}அடுத்த ஆட்டங்களில் பதிவேற்றப்படும் AI-கள் STR_AI_CONFIG_HUMAN_PLAYER :மனித வீரர் @@ -4079,8 +4075,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}தே STR_AI_CONFIG_GAMESCRIPT :{SILVER}விளையாட்டின் ஸ்கிரிப்ட் STR_AI_CONFIG_AI :{SILVER}AIகள் -STR_AI_CONFIG_CHANGE :{BLACK}தேர்ந்தெடு {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :விளையாட்டின் ஸ்கிரிப்ட் STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}மற்றொறு வரிவடிவத்தினை பதிவேற்று @@ -4111,9 +4105,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}உய STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}சிறிய வரைபட திரைபிடிப்பு # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} குணாதிசயங்கள் STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :விளையாட்டின் ஸ்கிரிப்ட் STR_AI_SETTINGS_CLOSE :{BLACK}மூடு STR_AI_SETTINGS_RESET :{BLACK}முன்னிருந்தமாதிரி மாற்று STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/thai.txt b/src/lang/thai.txt index 6da3b39d8c..0d170fb68d 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -380,10 +380,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :ออก # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :ตัวเลือกเกม STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :การตั้งค่า -STR_SETTINGS_MENU_SCRIPT_SETTINGS :กำหนดค่าสคริปต์ AI/Game STR_SETTINGS_MENU_NEWGRF_SETTINGS :กำหนดค่า NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :แถบเมนูตั้งค่าวัตถุโปร่งใส STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :แสดงชื่อเมือง @@ -1937,7 +1936,6 @@ STR_INTRO_HIGHSCORE :{BLACK}ตา STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}ตั้งค่า STR_INTRO_NEWGRF_SETTINGS :{BLACK}การตั้งค่า NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}ตรวจสอบเนื้อหาออนไลน์ -STR_INTRO_SCRIPT_SETTINGS :{BLACK}ตั้งค่า AI/Game Script STR_INTRO_QUIT :{BLACK}ออก STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}เริ่มเกมใหม่, Ctrl+Click เพื่อข้ามการตั้งค่าแผนที่ @@ -1957,7 +1955,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}แส STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}การตั้งค่า หน้าจอ STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}แสดงการกำหนดค่า NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}ตรวจสอบเนื้อหาใหม่และการปรับปรุงสำหรับดาวโหลด -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}แสดงการตั้งค่า AI/Game script STR_INTRO_TOOLTIP_QUIT :{BLACK}ออกจากเกม OpenTTD STR_INTRO_TRANSLATION :{BLACK} การแปลภาษาส่วนนี้หายไป {NUM} string{P ""}. โปรดช่วยทำให้ OpenTTD ดีขึ้นโดยการสมัครเป็นผู้แปล. ดูใน readme.txt สำหรับรายละเอียด. @@ -4240,7 +4237,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}ถ้ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/Game Script Debug window จะใช้งานได้เฉพาะที่เป็น Server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}ปรับแต่ง AI/Game Script STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Game Script จะเปิดใช้งานในเกมถัดไป STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}AI จะทำการเปิดใช้งานในเกมถัดไป STR_AI_CONFIG_HUMAN_PLAYER :ผู้เล่น @@ -4256,8 +4252,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}ย้ STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}เลือก {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}โหลดscriptอื่น @@ -4283,9 +4277,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}บั STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}จับภาพหน้าจอ มินิแมพ # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parameters STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script STR_AI_SETTINGS_CLOSE :{BLACK}ปิด STR_AI_SETTINGS_RESET :{BLACK}เริ่มใหม่ STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt index fc1e66b5c5..e5545a5580 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :離開 # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :遊戲選項 STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :設定 -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / 遊戲腳本設定 STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF 設定 STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :透明度選項 STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :顯示市鎮名稱 @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}積分 STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}設定 STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF 設定 STR_INTRO_ONLINE_CONTENT :{BLACK}檢查線上內容 -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / 遊戲腳本設定 STR_INTRO_QUIT :{BLACK}離開 STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}開始新遊戲。按住 Ctrl 點選可跳過地圖設定畫面 @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}顯示 STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}顯示設定 STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}顯示 NewGRF 設定 STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}檢查有無最新或可更新的內容可下載 -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}顯示AI和遊戲腳本設定 STR_INTRO_TOOLTIP_QUIT :{BLACK}離開「OpenTTD」 STR_INTRO_BASESET :{BLACK}目前圖形設定缺少 {NUM}個貼圖。 請確認基礎貼圖組是否有更新。 @@ -4532,7 +4529,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}正在 STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}AI/只可於伺服器打開遊戲腳本除錯視窗 # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}AI /遊戲腳本的組態 STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}將於下一次遊戲中載入的腳本 STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}下局開始時將啟用AI STR_AI_CONFIG_HUMAN_PLAYER :人類玩家 @@ -4548,8 +4544,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}向下 STR_AI_CONFIG_GAMESCRIPT :{SILVER}遊戲腳本 STR_AI_CONFIG_AI :{SILVER}AI -STR_AI_CONFIG_CHANGE :{BLACK}選擇 {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :遊戲腳本 STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}載入另一腳本 @@ -4580,9 +4574,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}高度 STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}小地圖截圖 # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} 參數 STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :遊戲腳本 STR_AI_SETTINGS_CLOSE :{BLACK}關閉 STR_AI_SETTINGS_RESET :{BLACK}重設 STR_AI_SETTINGS_SETTING :{STRING}:{ORANGE}{STRING} diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt index 096b1d1a12..e20147d266 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -393,10 +393,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Oyundan Çık # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Seçenekler STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Ayarlar -STR_SETTINGS_MENU_SCRIPT_SETTINGS :YZ/Oyun betik ayarları STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF ayarları STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Şeffaflık seçenekleri STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Şehir isimlerini göster @@ -2060,7 +2059,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Puan Tab STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Ayarlar STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF Ayarları STR_INTRO_ONLINE_CONTENT :{BLACK}Çevrimiçi İçeriği Kontrol Et -STR_INTRO_SCRIPT_SETTINGS :{BLACK}YZ/Oyun Betik Ayarları STR_INTRO_QUIT :{BLACK}Çıkış STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Yeni oyuna başla. Ctrl+Tıklama harita ayarlamasını atlar. @@ -2080,7 +2078,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Puan tab STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Görüntü ayarları STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF ayarlarını göster STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}İndirilecek yeni ve güncellenmiş içeriği kontrol et -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}YZ ve Oyun betik ayarlarını göster STR_INTRO_TOOLTIP_QUIT :{BLACK}'OpenTTD' den çık STR_INTRO_BASESET :{BLACK}Geçerli seçimdeki temel grafik setinin {NUM} örneği eksik. Lütfen temel setin güncellemelerini kontrol edin. @@ -4534,7 +4531,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Çalış STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}YZ Hata Ayıklama penceresi sadece sunucu içindir # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}YZ Yapılandırması STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Bir sonraki oyunda yüklenecek Oyun Betiği STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Bir sonraki oyunda yüklenecek YZ'ler STR_AI_CONFIG_HUMAN_PLAYER :İnsan oyuncu @@ -4550,8 +4546,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Seçilen STR_AI_CONFIG_GAMESCRIPT :{SILVER}Oyun Betiği STR_AI_CONFIG_AI :{SILVER}YZ'ler -STR_AI_CONFIG_CHANGE :{BLACK}{STRING} Seç -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :YZ STR_AI_CONFIG_CHANGE_GAMESCRIPT :Oyun Betiği STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Başka bir betik yükle @@ -4582,9 +4576,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Yüksekl STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Küçük harita ekran görüntüsü # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Parametreler STR_AI_SETTINGS_CAPTION_AI :YZ -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Oyun Betiği STR_AI_SETTINGS_CLOSE :{BLACK}Kapat STR_AI_SETTINGS_RESET :{BLACK}Yeniden başlat STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt index 1b93cf733f..9bbff10835 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -517,10 +517,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Вихід # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Налаштування гри STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Налаштування -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Налаштування AI / Ігрового скрипта STR_SETTINGS_MENU_NEWGRF_SETTINGS :Налаштування NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Налаштування прозорості STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Показувати назви міст @@ -2180,7 +2179,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Табл STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Налаштування STR_INTRO_NEWGRF_SETTINGS :{BLACK}Налаштування NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Додатковий контент -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Налаштування AI / GS STR_INTRO_QUIT :{BLACK}Вихід STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Почати нову гру. Ctrl+клац мишою пропускає конфігурацію карти @@ -2200,7 +2198,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Пока STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Налаштування відображення STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Показати налаштування NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Перевірити доступний для завантаження додатковий контент -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Показати налаштування AI / Ігрового Скрипта STR_INTRO_TOOLTIP_QUIT :{BLACK}Вийти з OpenTTD STR_INTRO_BASESET :{BLACK}В обраному наборі базової графіки немає {NUM} спрайт{P а ів ів}. Будь ласка, оновіть набір графіки. @@ -4645,7 +4642,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Один STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Вікно налагодження АІ / Ігрового Скрипта доступне тільки серверу # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Налаштування AI / Ігрового Скрипта STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Ігровий Скрипт, який буде завантажено в наступній грі STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}АІ, які будуть завантажені в наступній грі STR_AI_CONFIG_HUMAN_PLAYER :Гравець-людина @@ -4661,8 +4657,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Пере STR_AI_CONFIG_GAMESCRIPT :{SILVER}Ігровий Скрипт STR_AI_CONFIG_AI :{SILVER}АІ -STR_AI_CONFIG_CHANGE :{BLACK}Вибрати {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Ігровий Скрипт STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Завантажити інший скрипт @@ -4693,9 +4687,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Знят STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Зняток мінімапи # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Параметри STR_AI_SETTINGS_CAPTION_AI :АІ -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Ігровий Скрипт STR_AI_SETTINGS_CLOSE :{BLACK}Закрити STR_AI_SETTINGS_RESET :{BLACK}Скидання STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/urdu.txt b/src/lang/urdu.txt index ecf310cb1f..6998d21e4f 100644 --- a/src/lang/urdu.txt +++ b/src/lang/urdu.txt @@ -361,9 +361,8 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :باہر نکلو # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :کھیل کے اختیارات -STR_SETTINGS_MENU_SCRIPT_SETTINGS :AI / کھیل کے اختیارات STR_SETTINGS_MENU_NEWGRF_SETTINGS :NewGRF اختیارات STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Transparency کے اختیارات STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :آبادیوں کے نام دکھائے جائیں @@ -1533,7 +1532,6 @@ STR_INTRO_MULTIPLAYER :{BLACK}زیاد STR_INTRO_GAME_OPTIONS :{BLACK}کھیل کے اختیارات STR_INTRO_NEWGRF_SETTINGS :{BLACK}NewGRF چنئے STR_INTRO_ONLINE_CONTENT :{BLACK}آن لائن مواد دیکھیں -STR_INTRO_SCRIPT_SETTINGS :{BLACK}AI / کھیل کے اختیارات STR_INTRO_QUIT :{BLACK}باہر نکلو STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}نیا کھیل شروع کریں۔ Ctrl+Click نقشے کی ترتیب کو چھوڑ دے گا @@ -1551,7 +1549,6 @@ STR_INTRO_TOOLTIP_TOYLAND_LANDSCAPE :{BLACK}منظر STR_INTRO_TOOLTIP_GAME_OPTIONS :{BLACK}کھیل کے اختیارات دکھائیں STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}NewGRF سیٹنگز دیکھیئے STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}نئے اور ترمیم شدہ مواد کو ڈاون لوڈ کرنے کے لئے چیک کریں -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK} AI اور کھیل کے اختیارات دکھائیں STR_INTRO_TOOLTIP_QUIT :{BLACK}'OpenTTD' سے باہر نکلو STR_INTRO_TRANSLATION :{BLACK}اس ترجمے میں {NUM} لائنین{P "" یں} غیر ترجمہ سدہ ہیں۔ براہ مہربانی ترجمہ کُنندہ بن کر OpenTTD کی مدد کریں۔ تفصیلات کے لئے readme.txt دیکھیں @@ -2722,7 +2719,6 @@ STR_AI_CONFIG_MAX_COMPETITORS :{LTBLUE}مدم STR_AI_CONFIG_GAMESCRIPT :{SILVER}کھیل کا سکرپٹ -STR_AI_CONFIG_CHANGE_NONE : # Available AIs window diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt index 82ce14d2c1..8d01c65dd7 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -392,10 +392,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Thoát # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Cấu hình trò chơi STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Thiết lập -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Thiết lập AI / Game script STR_SETTINGS_MENU_NEWGRF_SETTINGS :Thông số NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Thiết lập hiệu ứng trong suốt STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Hiển thị tên thị trấn @@ -2059,7 +2058,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Bảng STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Thiết lập STR_INTRO_NEWGRF_SETTINGS :{BLACK}Thiết Lập NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Các Nội Dung Trên Mạng -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Thiết Lập AI / Game Script STR_INTRO_QUIT :{BLACK}Thoát STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Màn chơi mới.Ctrl+Click để bỏ qua phần điều chỉnh màn @@ -2079,7 +2077,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Hiện b STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Thiết lập hiển thị STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Hiển thị tùy chỉnh NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Kiểm tra những nội dung mới & cập nhật để tải về -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Hiển thị thiết lập AI và Game script STR_INTRO_TOOLTIP_QUIT :{BLACK}Thoát 'OpenTTD' STR_INTRO_BASESET :{BLACK}Gói đồ họa cơ sở đang chọn bị thiếu {NUM} sprite. Hãy cập nhật gói cơ sở này. @@ -4537,7 +4534,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Có mộ STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Cửa sổ gỡ lỗi AI/Game Script chỉ có trên server # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Thiết Lập Game AI/Game Script STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Các Game Script sẽ được chạy trong ván chơi tiếp theo STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Các AIs sẽ được chạy trong ván chơi tiếp theo STR_AI_CONFIG_HUMAN_PLAYER :Nhân vật người @@ -4553,8 +4549,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Di chuy STR_AI_CONFIG_GAMESCRIPT :{SILVER}Game Script STR_AI_CONFIG_AI :{SILVER}AIs -STR_AI_CONFIG_CHANGE :{BLACK}Chọn {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Game Script STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Chạy tập lệnh khác @@ -4585,9 +4579,7 @@ STR_SCREENSHOT_HEIGHTMAP_SCREENSHOT :{BLACK}Chụp b STR_SCREENSHOT_MINIMAP_SCREENSHOT :{BLACK}Chụp màn hình bản đồ nhỏ # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Các Thông Số STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Game Script STR_AI_SETTINGS_CLOSE :{BLACK}Đóng STR_AI_SETTINGS_RESET :{BLACK}Thiết Lập Lại STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt index 73a3c481f9..3064951178 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -376,10 +376,9 @@ STR_SCENEDIT_FILE_MENU_SEPARATOR : STR_SCENEDIT_FILE_MENU_QUIT :Gadael # Settings menu -###length 14 +###length 15 STR_SETTINGS_MENU_GAME_OPTIONS :Dewisiadau Gêm STR_SETTINGS_MENU_CONFIG_SETTINGS_TREE :Gosodiadau -STR_SETTINGS_MENU_SCRIPT_SETTINGS :Gosodiadau AI / sgript Gêm STR_SETTINGS_MENU_NEWGRF_SETTINGS :Gosodiadau NewGRF STR_SETTINGS_MENU_TRANSPARENCY_OPTIONS :Dewisiadau tryloywder STR_SETTINGS_MENU_TOWN_NAMES_DISPLAYED :Dangos enwau trefi @@ -1919,7 +1918,6 @@ STR_INTRO_HIGHSCORE :{BLACK}Tabl Sg STR_INTRO_CONFIG_SETTINGS_TREE :{BLACK}Gosodiadau STR_INTRO_NEWGRF_SETTINGS :{BLACK}Gosodiadau NewGRF STR_INTRO_ONLINE_CONTENT :{BLACK}Gwirio Cynnwys Ar-lein -STR_INTRO_SCRIPT_SETTINGS :{BLACK}Gosodiadau AI / Sgript Gêm STR_INTRO_QUIT :{BLACK}Gadael STR_INTRO_TOOLTIP_NEW_GAME :{BLACK}Dechrau gêm newydd. Mae Ctrl+Clic yn hepgor dewisiadau map @@ -1939,7 +1937,6 @@ STR_INTRO_TOOLTIP_HIGHSCORE :{BLACK}Dangos y STR_INTRO_TOOLTIP_CONFIG_SETTINGS_TREE :{BLACK}Gosodiadau arddangos STR_INTRO_TOOLTIP_NEWGRF_SETTINGS :{BLACK}Dangos gosodiadau NewGRF STR_INTRO_TOOLTIP_ONLINE_CONTENT :{BLACK}Gwirio am gynnwys newydd neu wedi'i ddiweddaru i'w lwytho i lawr -STR_INTRO_TOOLTIP_SCRIPT_SETTINGS :{BLACK}Dangos gosodiadau AI a sgript Gêm STR_INTRO_TOOLTIP_QUIT :{BLACK}Gadael 'OpenTTD' STR_INTRO_BASESET :{BLACK}Mae {NUM} corlun ar goll o'r set raffeg sylfaenol a ddewiswyd. Gwiriwch am ddiweddariadau i'r set raffeg. @@ -4146,7 +4143,6 @@ STR_ERROR_AI_PLEASE_REPORT_CRASH :{WHITE}Mae sgri STR_ERROR_AI_DEBUG_SERVER_ONLY :{YELLOW}Mae'r Ffenestr Ddadnamu AI / Sgript Gêm ar gael ar gyfer y gweinydd yn unig # AI configuration window -STR_AI_CONFIG_CAPTION :{WHITE}Ffurfweddiad AI / Sgript Gêm STR_AI_CONFIG_GAMELIST_TOOLTIP :{BLACK}Y Sgriptiau Gêm a lwythir yn y gêm nesaf STR_AI_CONFIG_AILIST_TOOLTIP :{BLACK}Yr AIau a lwythir yn y gêm nesaf STR_AI_CONFIG_HUMAN_PLAYER :Chwaraewr dynol @@ -4162,8 +4158,6 @@ STR_AI_CONFIG_MOVE_DOWN_TOOLTIP :{BLACK}Symud yr STR_AI_CONFIG_GAMESCRIPT :{SILVER}Sgript Gêm STR_AI_CONFIG_AI :{SILVER}AIau -STR_AI_CONFIG_CHANGE :{BLACK}Dewis {STRING} -STR_AI_CONFIG_CHANGE_NONE : STR_AI_CONFIG_CHANGE_AI :AI STR_AI_CONFIG_CHANGE_GAMESCRIPT :Sgript Gêm STR_AI_CONFIG_CHANGE_TOOLTIP :{BLACK}Llwytho sgript arall @@ -4187,9 +4181,7 @@ STR_AI_LIST_CANCEL_TOOLTIP :{BLACK}Peidio n # AI Parameters -STR_AI_SETTINGS_CAPTION :{WHITE}{STRING} Paramedrau STR_AI_SETTINGS_CAPTION_AI :AI -STR_AI_SETTINGS_CAPTION_GAMESCRIPT :Sgript Gêm STR_AI_SETTINGS_CLOSE :{BLACK}Cau STR_AI_SETTINGS_RESET :{BLACK}Ailosod STR_AI_SETTINGS_SETTING :{STRING}: {ORANGE}{STRING} From 5d6cdf438551e8bd4ddde1db71052183c61a7aef Mon Sep 17 00:00:00 2001 From: Artin Alavi <1361714+Arastais@users.noreply.github.com> Date: Fri, 11 Nov 2022 14:48:07 -0800 Subject: [PATCH 11/16] Feature: Allow AI/GS to be fully modified in scenario editor (#10152) --- src/ai/ai_gui.cpp | 7 ++++--- src/game/game_gui.cpp | 5 ++++- src/settings_type.h | 2 +- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ai/ai_gui.cpp b/src/ai/ai_gui.cpp index 8bf05b0192..a1cfade002 100644 --- a/src/ai/ai_gui.cpp +++ b/src/ai/ai_gui.cpp @@ -575,9 +575,10 @@ private: bool IsEditableItem(const ScriptConfigItem &config_item) const { return _game_mode == GM_MENU - || ((this->slot != OWNER_DEITY) && !Company::IsValidID(this->slot)) - || (config_item.flags & SCRIPTCONFIG_INGAME) != 0 - || _settings_client.gui.ai_developer_tools; + || _game_mode == GM_EDITOR + || ((this->slot != OWNER_DEITY) && !Company::IsValidID(this->slot)) + || (config_item.flags & SCRIPTCONFIG_INGAME) != 0 + || _settings_client.gui.ai_developer_tools; } void SetValue(int value) diff --git a/src/game/game_gui.cpp b/src/game/game_gui.cpp index 88dc4f0c4e..6b9dad8071 100644 --- a/src/game/game_gui.cpp +++ b/src/game/game_gui.cpp @@ -442,7 +442,10 @@ struct GSConfigWindow : public Window { private: bool IsEditableItem(const ScriptConfigItem &config_item) const { - return _game_mode == GM_MENU || (config_item.flags & SCRIPTCONFIG_INGAME) != 0; + return _game_mode == GM_MENU + || _game_mode == GM_EDITOR + || (config_item.flags & SCRIPTCONFIG_INGAME) != 0 + || _settings_client.gui.ai_developer_tools; } void SetValue(int value) diff --git a/src/settings_type.h b/src/settings_type.h index 2c3dea7b92..c53763ee36 100644 --- a/src/settings_type.h +++ b/src/settings_type.h @@ -187,7 +187,7 @@ struct GUISettings { uint8 developer; ///< print non-fatal warnings in console (>= 1), copy debug output to console (== 2) bool show_date_in_logs; ///< whether to show dates in console logs bool newgrf_developer_tools; ///< activate NewGRF developer tools and allow modifying NewGRFs in an existing game - bool ai_developer_tools; ///< activate AI developer tools + bool ai_developer_tools; ///< activate AI/GS developer tools bool scenario_developer; ///< activate scenario developer: allow modifying NewGRFs in an existing game uint8 settings_restriction_mode; ///< selected restriction mode in adv. settings GUI. @see RestrictionMode bool newgrf_show_old_versions; ///< whether to show old versions in the NewGRF list From a962d7476be7db89670dddc5a498f3bb164b91da Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Mon, 7 Nov 2022 21:19:06 +0000 Subject: [PATCH 12/16] Fix: Data races on MixerChannel active states --- src/mixer.cpp | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/src/mixer.cpp b/src/mixer.cpp index b9b20fccfd..2d8afa3f14 100644 --- a/src/mixer.cpp +++ b/src/mixer.cpp @@ -10,6 +10,7 @@ #include "stdafx.h" #include #include +#include #include "core/math_func.hpp" #include "framerate_type.h" #include "settings_type.h" @@ -18,8 +19,6 @@ #include "mixer.h" struct MixerChannel { - bool active; - /* pointer to allocated buffer memory */ int8 *memory; @@ -36,6 +35,7 @@ struct MixerChannel { bool is16bit; }; +static std::atomic _active_channels; static MixerChannel _channels[8]; static uint32 _play_rate = 11025; static uint32 _max_size = UINT_MAX; @@ -135,9 +135,9 @@ static void mix_int8_to_int16(MixerChannel *sc, int16 *buffer, uint samples, uin sc->pos = b - sc->memory; } -static void MxCloseChannel(MixerChannel *mc) +static void MxCloseChannel(uint8 channel_index) { - mc->active = false; + _active_channels.fetch_and(~(1 << channel_index), std::memory_order_release); } void MxMixSamples(void *buffer, uint samples) @@ -149,8 +149,6 @@ void MxMixSamples(void *buffer, uint samples) last_samples = samples; } - MixerChannel *mc; - /* Clear the buffer */ memset(buffer, 0, sizeof(int16) * 2 * samples); @@ -169,29 +167,30 @@ void MxMixSamples(void *buffer, uint samples) _settings_client.music.effect_vol) / (127 * 127); /* Mix each channel */ - for (mc = _channels; mc != endof(_channels); mc++) { - if (mc->active) { - if (mc->is16bit) { - mix_int16(mc, (int16*)buffer, samples, effect_vol); - } else { - mix_int8_to_int16(mc, (int16*)buffer, samples, effect_vol); - } - if (mc->samples_left == 0) MxCloseChannel(mc); + uint8 active = _active_channels.load(std::memory_order_acquire); + for (uint8 idx : SetBitIterator(active)) { + MixerChannel *mc = &_channels[idx]; + if (mc->is16bit) { + mix_int16(mc, (int16*)buffer, samples, effect_vol); + } else { + mix_int8_to_int16(mc, (int16*)buffer, samples, effect_vol); } + if (mc->samples_left == 0) MxCloseChannel(idx); } } MixerChannel *MxAllocateChannel() { - MixerChannel *mc; - for (mc = _channels; mc != endof(_channels); mc++) { - if (!mc->active) { - free(mc->memory); - mc->memory = nullptr; - return mc; - } - } - return nullptr; + uint8 currently_active = _active_channels.load(std::memory_order_acquire); + uint8 available = ~currently_active; + if (available == 0) return nullptr; + + uint8 channel_index = FindFirstBit(available); + + MixerChannel *mc = &_channels[channel_index]; + free(mc->memory); + mc->memory = nullptr; + return mc; } void MxSetChannelRawSrc(MixerChannel *mc, int8 *mem, size_t size, uint rate, bool is16bit) @@ -231,7 +230,8 @@ void MxSetChannelVolume(MixerChannel *mc, uint volume, float pan) void MxActivateChannel(MixerChannel *mc) { - mc->active = true; + uint8 channel_index = mc - _channels; + _active_channels.fetch_or((1 << channel_index), std::memory_order_release); } /** From 0fae0599b74fc3984b9a5b4c59719ff1019c8ec0 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Mon, 7 Nov 2022 21:26:03 +0000 Subject: [PATCH 13/16] Fix: Data race on effect volume setting with mixer thread --- src/mixer.cpp | 13 ++++++++++--- src/mixer.h | 2 ++ src/music_gui.cpp | 7 ++++++- src/openttd.cpp | 4 +++- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/mixer.cpp b/src/mixer.cpp index 2d8afa3f14..b862353383 100644 --- a/src/mixer.cpp +++ b/src/mixer.cpp @@ -41,6 +41,7 @@ static uint32 _play_rate = 11025; static uint32 _max_size = UINT_MAX; static MxStreamCallback _music_stream = nullptr; static std::mutex _music_stream_mutex; +static std::atomic _effect_vol; /** * The theoretical maximum volume for a single sound sample. Multiple sound @@ -162,9 +163,10 @@ void MxMixSamples(void *buffer, uint samples) * perceived difference in loudness to better match expectations. effect_vol * is expected to be in the range 0-127 hence the division by 127 * 127 to * get back into range. */ - uint8 effect_vol = (_settings_client.music.effect_vol * - _settings_client.music.effect_vol * - _settings_client.music.effect_vol) / (127 * 127); + uint8 effect_vol_setting = _effect_vol.load(std::memory_order_relaxed); + uint8 effect_vol = (effect_vol_setting * + effect_vol_setting * + effect_vol_setting) / (127 * 127); /* Mix each channel */ uint8 active = _active_channels.load(std::memory_order_acquire); @@ -255,3 +257,8 @@ bool MxInitialize(uint rate) _music_stream = nullptr; /* rate may have changed, any music source is now invalid */ return true; } + +void SetEffectVolume(uint8 volume) +{ + _effect_vol.store(volume, std::memory_order_relaxed); +} diff --git a/src/mixer.h b/src/mixer.h index bd7b18a44a..51669da71c 100644 --- a/src/mixer.h +++ b/src/mixer.h @@ -30,4 +30,6 @@ void MxActivateChannel(MixerChannel*); uint32 MxSetMusicSource(MxStreamCallback music_callback); +void SetEffectVolume(uint8 volume); + #endif /* MIXER_H */ diff --git a/src/music_gui.cpp b/src/music_gui.cpp index b4a4de5196..392ffcb636 100644 --- a/src/music_gui.cpp +++ b/src/music_gui.cpp @@ -27,6 +27,7 @@ #include "widgets/dropdown_func.h" #include "widgets/dropdown_type.h" #include "widgets/slider_func.h" +#include "mixer.h" #include "widgets/music_widget.h" @@ -788,7 +789,11 @@ struct MusicWindow : public Window { case WID_M_MUSIC_VOL: case WID_M_EFFECT_VOL: { // volume sliders byte &vol = (widget == WID_M_MUSIC_VOL) ? _settings_client.music.music_vol : _settings_client.music.effect_vol; if (ClickVolumeSliderWidget(this->GetWidget(widget)->GetCurrentRect(), pt, vol)) { - if (widget == WID_M_MUSIC_VOL) MusicDriver::GetInstance()->SetVolume(vol); + if (widget == WID_M_MUSIC_VOL) { + MusicDriver::GetInstance()->SetVolume(vol); + } else { + SetEffectVolume(vol); + } this->SetWidgetDirty(widget); SetWindowClassesDirty(WC_GAME_OPTIONS); } diff --git a/src/openttd.cpp b/src/openttd.cpp index 06ff78c713..1e7cd9ae0e 100644 --- a/src/openttd.cpp +++ b/src/openttd.cpp @@ -13,6 +13,7 @@ #include "sound/sound_driver.hpp" #include "music/music_driver.hpp" #include "video/video_driver.hpp" +#include "mixer.h" #include "fontcache.h" #include "error.h" @@ -452,8 +453,9 @@ struct AfterNewGRFScan : NewGRFScanCallback { /* We have loaded the config, so we may possibly save it. */ _save_config = save_config; - /* restore saved music volume */ + /* restore saved music and effects volumes */ MusicDriver::GetInstance()->SetVolume(_settings_client.music.music_vol); + SetEffectVolume(_settings_client.music.effect_vol); if (startyear != INVALID_YEAR) IConsoleSetSetting("game_creation.starting_year", startyear); if (generation_seed != GENERATE_NEW_SEED) _settings_newgame.game_creation.generation_seed = generation_seed; From 64b437fa89c0d02646395836e91f8043094e69a8 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Wed, 9 Nov 2022 23:12:30 +0000 Subject: [PATCH 14/16] Fix: Data race with mixer thread performance measurements --- src/framerate_gui.cpp | 41 +++++++++++++++++++++++++++++++++++++++++ src/window.cpp | 3 +++ 2 files changed, 44 insertions(+) diff --git a/src/framerate_gui.cpp b/src/framerate_gui.cpp index 903086caa5..6c9cc541ed 100644 --- a/src/framerate_gui.cpp +++ b/src/framerate_gui.cpp @@ -25,8 +25,16 @@ #include "game/game_instance.hpp" #include "widgets/framerate_widget.h" + +#include +#include +#include + #include "safeguards.h" +static std::mutex _sound_perf_lock; +static std::atomic _sound_perf_pending; +static std::vector _sound_perf_measurements; /** * Private declarations for performance measurement implementation @@ -251,6 +259,20 @@ PerformanceMeasurer::~PerformanceMeasurer() return; } } + if (this->elem == PFE_SOUND) { + /* PFE_SOUND measurements are made from the mixer thread. + * _pf_data cannot be concurrently accessed from the mixer thread + * and the main thread, so store the measurement results in a + * mutex-protected queue which is drained by the main thread. + * See: ProcessPendingPerformanceMeasurements() */ + TimingMeasurement end = GetPerformanceTimer(); + std::lock_guard lk(_sound_perf_lock); + if (_sound_perf_measurements.size() >= NUM_FRAMERATE_POINTS * 2) return; + _sound_perf_measurements.push_back(this->start_time); + _sound_perf_measurements.push_back(end); + _sound_perf_pending.store(true, std::memory_order_release); + return; + } _pf_data[this->elem].Add(this->start_time, GetPerformanceTimer()); } @@ -1079,3 +1101,22 @@ void ConPrintFramerate() IConsolePrint(CC_ERROR, "No performance measurements have been taken yet."); } } + +/** + * This drains the PFE_SOUND measurement data queue into _pf_data. + * PFE_SOUND measurements are made by the mixer thread and so cannot be stored + * into _pf_data directly, because this would not be thread safe and would violate + * the invariants of the FPS and frame graph windows. + * @see PerformanceMeasurement::~PerformanceMeasurement() + */ +void ProcessPendingPerformanceMeasurements() +{ + if (_sound_perf_pending.load(std::memory_order_acquire)) { + std::lock_guard lk(_sound_perf_lock); + for (size_t i = 0; i < _sound_perf_measurements.size(); i += 2) { + _pf_data[PFE_SOUND].Add(_sound_perf_measurements[i], _sound_perf_measurements[i + 1]); + } + _sound_perf_measurements.clear(); + _sound_perf_pending.store(false, std::memory_order_relaxed); + } +} diff --git a/src/window.cpp b/src/window.cpp index 6d94dacfb3..3cda423f37 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -3067,6 +3067,9 @@ void UpdateWindows() PerformanceMeasurer framerate(PFE_DRAWING); PerformanceAccumulator::Reset(PFE_DRAWWORLD); + extern void ProcessPendingPerformanceMeasurements(); + ProcessPendingPerformanceMeasurements(); + CallWindowRealtimeTickEvent(delta_ms); static GUITimer network_message_timer = GUITimer(1); From 59645c67335447e03721a67ebb3de083947dbb81 Mon Sep 17 00:00:00 2001 From: Joel-Milligan <52927756+Joel-Milligan@users.noreply.github.com> Date: Sat, 12 Nov 2022 06:52:38 +0800 Subject: [PATCH 15/16] Change: Remove scrollbar from town authority actions panel (#9928) --- src/lang/english.txt | 16 +-- src/script/api/script_town.cpp | 2 +- src/table/settings/economy_settings.ini | 8 +- src/town.h | 24 ++--- src/town_cmd.cpp | 12 +-- src/town_gui.cpp | 132 ++++++++++++++---------- 6 files changed, 109 insertions(+), 85 deletions(-) diff --git a/src/lang/english.txt b/src/lang/english.txt index 9ddae0f670..a13bfebe7c 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -3482,14 +3482,14 @@ STR_LOCAL_AUTHORITY_ACTION_EXCLUSIVE_TRANSPORT :Buy exclusive t STR_LOCAL_AUTHORITY_ACTION_BRIBE :Bribe the local authority ###length 8 -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{YELLOW}Initiate a small local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a small radius around the town centre.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{YELLOW}Initiate a medium local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a medium radius around the town centre.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{YELLOW}Initiate a large local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a large radius around the town centre.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{YELLOW}Fund the reconstruction of the urban road network.{}Causes considerable disruption to road traffic for up to 6 months.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{YELLOW}Build a statue in honour of your company.{}Provides a permanent boost to station rating in this town.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{YELLOW}Fund the construction of new buildings in the town.{}Provides a temporary boost to town growth in this town.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{YELLOW}Buy 1 year's exclusive transport rights in town.{}Town authority will not allow passengers and cargo to use your competitors' stations.{}Cost: {CURRENCY_LONG} -STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Bribe the local authority to increase your rating, at the risk of a severe penalty if caught.{}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING :{PUSH_COLOUR}{YELLOW}Initiate a small local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a small radius around the town centre.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_MEDIUM_ADVERTISING :{PUSH_COLOUR}{YELLOW}Initiate a medium local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a medium radius around the town centre.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_LARGE_ADVERTISING :{PUSH_COLOUR}{YELLOW}Initiate a large local advertising campaign, to attract more passengers and cargo to your transport services.{}Provides a temporary boost to station rating in a large radius around the town centre.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_ROAD_RECONSTRUCTION :{PUSH_COLOUR}{YELLOW}Fund the reconstruction of the urban road network.{}Causes considerable disruption to road traffic for up to 6 months.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_STATUE_OF_COMPANY :{PUSH_COLOUR}{YELLOW}Build a statue in honour of your company.{}Provides a permanent boost to station rating in this town.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_NEW_BUILDINGS :{PUSH_COLOUR}{YELLOW}Fund the construction of new buildings in the town.{}Provides a temporary boost to town growth in this town.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_EXCLUSIVE_TRANSPORT :{PUSH_COLOUR}{YELLOW}Buy 1 year's exclusive transport rights in town.{}Town authority will not allow passengers and cargo to use your competitors' stations.{}{POP_COLOUR}Cost: {CURRENCY_LONG} +STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{PUSH_COLOUR}{YELLOW}Bribe the local authority to increase your rating, at the risk of a severe penalty if caught.{}{POP_COLOUR}Cost: {CURRENCY_LONG} # Goal window STR_GOALS_CAPTION :{WHITE}{COMPANY} Goals diff --git a/src/script/api/script_town.cpp b/src/script/api/script_town.cpp index 78a1734441..afa309c92b 100644 --- a/src/script/api/script_town.cpp +++ b/src/script/api/script_town.cpp @@ -258,7 +258,7 @@ if (ScriptObject::GetCompany() == OWNER_DEITY) return false; if (!IsValidTown(town_id)) return false; - return HasBit(::GetMaskOfTownActions(nullptr, ScriptObject::GetCompany(), ::Town::Get(town_id)), town_action); + return HasBit(::GetMaskOfTownActions(ScriptObject::GetCompany(), ::Town::Get(town_id)), town_action); } /* static */ bool ScriptTown::PerformTownAction(TownID town_id, TownAction town_action) diff --git a/src/table/settings/economy_settings.ini b/src/table/settings/economy_settings.ini index 0101e1bf98..ad2a74319d 100644 --- a/src/table/settings/economy_settings.ini +++ b/src/table/settings/economy_settings.ini @@ -123,7 +123,7 @@ var = economy.bribe def = true str = STR_CONFIG_SETTING_BRIBE strhelp = STR_CONFIG_SETTING_BRIBE_HELPTEXT -post_cb = [](auto) { SetWindowClassesDirty(WC_TOWN_AUTHORITY); } +post_cb = [](auto) { InvalidateWindowClassesData(WC_TOWN_AUTHORITY); } cat = SC_BASIC [SDT_BOOL] @@ -132,7 +132,7 @@ from = SLV_79 def = true str = STR_CONFIG_SETTING_ALLOW_EXCLUSIVE strhelp = STR_CONFIG_SETTING_ALLOW_EXCLUSIVE_HELPTEXT -post_cb = [](auto) { SetWindowClassesDirty(WC_TOWN_AUTHORITY); } +post_cb = [](auto) { InvalidateWindowClassesData(WC_TOWN_AUTHORITY); } cat = SC_BASIC [SDT_BOOL] @@ -141,7 +141,7 @@ from = SLV_165 def = true str = STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS strhelp = STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS_HELPTEXT -post_cb = [](auto) { SetWindowClassesDirty(WC_TOWN_AUTHORITY); } +post_cb = [](auto) { InvalidateWindowClassesData(WC_TOWN_AUTHORITY); } cat = SC_BASIC [SDT_BOOL] @@ -150,7 +150,7 @@ from = SLV_160 def = true str = STR_CONFIG_SETTING_ALLOW_FUND_ROAD strhelp = STR_CONFIG_SETTING_ALLOW_FUND_ROAD_HELPTEXT -post_cb = [](auto) { SetWindowClassesDirty(WC_TOWN_AUTHORITY); } +post_cb = [](auto) { InvalidateWindowClassesData(WC_TOWN_AUTHORITY); } cat = SC_BASIC [SDT_BOOL] diff --git a/src/town.h b/src/town.h index 76b6e9c15c..2dda7cf2e9 100644 --- a/src/town.h +++ b/src/town.h @@ -200,18 +200,6 @@ Town *CalcClosestTownFromTile(TileIndex tile, uint threshold = UINT_MAX); void ResetHouses(); -void ClearTownHouse(Town *t, TileIndex tile); -void UpdateTownMaxPass(Town *t); -void UpdateTownRadius(Town *t); -CommandCost CheckIfAuthorityAllowsNewStation(TileIndex tile, DoCommandFlag flags); -Town *ClosestTownFromTile(TileIndex tile, uint threshold); -void ChangeTownRating(Town *t, int add, int max, DoCommandFlag flags); -HouseZonesBits GetTownRadiusGroup(const Town *t, TileIndex tile); -void SetTownRatingTestMode(bool mode); -uint GetMaskOfTownActions(int *nump, CompanyID cid, const Town *t); -bool GenerateTowns(TownLayout layout); -const CargoSpec *FindFirstCargoWithTownEffect(TownEffect effect); - /** Town actions of a company. */ enum TownActions { TACT_NONE = 0x00, ///< Empty action set. @@ -234,6 +222,18 @@ enum TownActions { }; DECLARE_ENUM_AS_BIT_SET(TownActions) +void ClearTownHouse(Town *t, TileIndex tile); +void UpdateTownMaxPass(Town *t); +void UpdateTownRadius(Town *t); +CommandCost CheckIfAuthorityAllowsNewStation(TileIndex tile, DoCommandFlag flags); +Town *ClosestTownFromTile(TileIndex tile, uint threshold); +void ChangeTownRating(Town *t, int add, int max, DoCommandFlag flags); +HouseZonesBits GetTownRadiusGroup(const Town *t, TileIndex tile); +void SetTownRatingTestMode(bool mode); +TownActions GetMaskOfTownActions(CompanyID cid, const Town *t); +bool GenerateTowns(TownLayout layout); +const CargoSpec *FindFirstCargoWithTownEffect(TownEffect effect); + extern const byte _town_action_costs[TACT_COUNT]; /** diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index a07946029c..680bffda2f 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -3293,21 +3293,19 @@ static TownActionProc * const _town_action_proc[] = { /** * Get a list of available actions to do at a town. - * @param nump if not nullptr add put the number of available actions in it * @param cid the company that is querying the town * @param t the town that is queried * @return bitmasked value of enabled actions */ -uint GetMaskOfTownActions(int *nump, CompanyID cid, const Town *t) +TownActions GetMaskOfTownActions(CompanyID cid, const Town *t) { - int num = 0; TownActions buttons = TACT_NONE; /* Spectators and unwanted have no options */ if (cid != COMPANY_SPECTATOR && !(_settings_game.economy.bribe && t->unwanted[cid])) { - /* Things worth more than this are not shown */ - Money avail = Company::Get(cid)->money + _price[PR_STATION_VALUE] * 200; + /* Actions worth more than this are not able to be performed */ + Money avail = Company::Get(cid)->money; /* Check the action bits for validity and * if they are valid add them */ @@ -3331,12 +3329,10 @@ uint GetMaskOfTownActions(int *nump, CompanyID cid, const Town *t) if (avail >= _town_action_costs[i] * _price[PR_TOWN_ACTION] >> 8) { buttons |= cur; - num++; } } } - if (nump != nullptr) *nump = num; return buttons; } @@ -3354,7 +3350,7 @@ CommandCost CmdDoTownAction(DoCommandFlag flags, TownID town_id, uint8 action) Town *t = Town::GetIfValid(town_id); if (t == nullptr || action >= lengthof(_town_action_proc)) return CMD_ERROR; - if (!HasBit(GetMaskOfTownActions(nullptr, _current_company, t), action)) return CMD_ERROR; + if (!HasBit(GetMaskOfTownActions(_current_company, t), action)) return CMD_ERROR; CommandCost cost(EXPENSES_OTHER, _price[PR_TOWN_ACTION] * _town_action_costs[action] >> 8); diff --git a/src/town_gui.cpp b/src/town_gui.cpp index 216de7e79a..95a08a8e13 100644 --- a/src/town_gui.cpp +++ b/src/town_gui.cpp @@ -56,10 +56,7 @@ static const NWidgetPart _nested_town_authority_widgets[] = { NWidget(WWT_STICKYBOX, COLOUR_BROWN), EndContainer(), NWidget(WWT_PANEL, COLOUR_BROWN, WID_TA_RATING_INFO), SetMinimalSize(317, 92), SetResize(1, 1), EndContainer(), - NWidget(NWID_HORIZONTAL), - NWidget(WWT_PANEL, COLOUR_BROWN, WID_TA_COMMAND_LIST), SetMinimalSize(305, 52), SetResize(1, 0), SetDataTip(0x0, STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP), SetScrollbar(WID_TA_SCROLLBAR), EndContainer(), - NWidget(NWID_VSCROLLBAR, COLOUR_BROWN, WID_TA_SCROLLBAR), - EndContainer(), + NWidget(WWT_PANEL, COLOUR_BROWN, WID_TA_COMMAND_LIST), SetMinimalSize(317, 52), SetResize(1, 0), SetDataTip(0x0, STR_LOCAL_AUTHORITY_ACTIONS_TOOLTIP), EndContainer(), NWidget(WWT_PANEL, COLOUR_BROWN, WID_TA_ACTION_INFO), SetMinimalSize(317, 52), SetResize(1, 0), EndContainer(), NWidget(NWID_HORIZONTAL), NWidget(WWT_PUSHTXTBTN, COLOUR_BROWN, WID_TA_EXECUTE), SetMinimalSize(317, 12), SetResize(1, 0), SetFill(1, 0), SetDataTip(STR_LOCAL_AUTHORITY_DO_IT_BUTTON, STR_LOCAL_AUTHORITY_DO_IT_TOOLTIP), @@ -72,22 +69,22 @@ struct TownAuthorityWindow : Window { private: Town *town; ///< Town being displayed. int sel_index; ///< Currently selected town action, \c 0 to \c TACT_COUNT-1, \c -1 means no action selected. - Scrollbar *vscroll; uint displayed_actions_on_previous_painting; ///< Actions that were available on the previous call to OnPaint() + TownActions enabled_actions; ///< Actions that are enabled in settings. + TownActions available_actions; ///< Actions that are available to execute for the current company. /** * Get the position of the Nth set bit. * * If there is no Nth bit set return -1 * - * @param bits The value to search in * @param n The Nth set bit from which we want to know the position - * @return The position of the Nth set bit + * @return The position of the Nth set bit, or -1 if no Nth bit set. */ - static int GetNthSetBit(uint32 bits, int n) + int GetNthSetBit(int n) { if (n >= 0) { - for (uint i : SetBitIterator(bits)) { + for (uint i : SetBitIterator(this->enabled_actions)) { n--; if (n < 0) return i; } @@ -95,33 +92,46 @@ private: return -1; } + /** + * Gets all town authority actions enabled in settings. + * + * @return Bitmask of actions enabled in the settings. + */ + static TownActions GetEnabledActions() + { + TownActions enabled = TACT_ALL; + + if (!_settings_game.economy.fund_roads) CLRBITS(enabled, TACT_ROAD_REBUILD); + if (!_settings_game.economy.fund_buildings) CLRBITS(enabled, TACT_FUND_BUILDINGS); + if (!_settings_game.economy.exclusive_rights) CLRBITS(enabled, TACT_BUY_RIGHTS); + if (!_settings_game.economy.bribe) CLRBITS(enabled, TACT_BRIBE); + + return enabled; + } + public: - TownAuthorityWindow(WindowDesc *desc, WindowNumber window_number) : Window(desc), sel_index(-1), displayed_actions_on_previous_painting(0) + TownAuthorityWindow(WindowDesc *desc, WindowNumber window_number) : Window(desc), sel_index(-1), displayed_actions_on_previous_painting(0), available_actions(TACT_NONE) { this->town = Town::Get(window_number); + this->enabled_actions = GetEnabledActions(); this->InitNested(window_number); - this->vscroll = this->GetScrollbar(WID_TA_SCROLLBAR); - this->vscroll->SetCapacity((this->GetWidget(WID_TA_COMMAND_LIST)->current_y - WD_FRAMERECT_TOP - WD_FRAMERECT_BOTTOM) / FONT_HEIGHT_NORMAL); } void OnPaint() override { - int numact; - uint buttons = GetMaskOfTownActions(&numact, _local_company, this->town); - if (buttons != displayed_actions_on_previous_painting) this->SetDirty(); - displayed_actions_on_previous_painting = buttons; - - this->vscroll->SetCount(numact + 1); - - if (this->sel_index != -1 && !HasBit(buttons, this->sel_index)) { - this->sel_index = -1; - } + this->available_actions = GetMaskOfTownActions(_local_company, this->town); + if (this->available_actions != displayed_actions_on_previous_painting) this->SetDirty(); + displayed_actions_on_previous_painting = this->available_actions; this->SetWidgetLoweredState(WID_TA_ZONE_BUTTON, this->town->show_zone); - this->SetWidgetDisabledState(WID_TA_EXECUTE, this->sel_index == -1); + this->SetWidgetDisabledState(WID_TA_EXECUTE, (this->sel_index == -1) || !HasBit(this->available_actions, this->sel_index)); this->DrawWidgets(); - if (!this->IsShaded()) this->DrawRatings(); + if (!this->IsShaded()) + { + this->DrawRatings(); + this->DrawActions(); + } } /** Draw the contents of the ratings panel. May request a resize of the window if the contents does not fit. */ @@ -185,6 +195,32 @@ public: } } + /** Draws the contents of the actions panel. May re-initialise window to resize panel, if the list does not fit. */ + void DrawActions() + { + NWidgetBase *nwid = this->GetWidget(WID_TA_COMMAND_LIST); + uint left = nwid->pos_x + WD_FRAMERECT_LEFT; + uint right = nwid->pos_x + nwid->current_x - 1 - WD_FRAMERECT_RIGHT; + uint y = nwid->pos_y + WD_FRAMERECT_TOP; + + DrawString(left + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, y, STR_LOCAL_AUTHORITY_ACTIONS_TITLE); + y += FONT_HEIGHT_NORMAL; + + /* Draw list of actions */ + for (int i = 0; i < TACT_COUNT; i++) { + /* Don't show actions if disabled in settings. */ + if (!HasBit(this->enabled_actions, i)) continue; + + /* Set colour of action based on ability to execute and if selected. */ + TextColour action_colour = TC_GREY | TC_NO_SHADE; + if (HasBit(this->available_actions, i)) action_colour = TC_ORANGE; + if (this->sel_index == i) action_colour = TC_WHITE; + + DrawString(left + WD_FRAMERECT_LEFT, right - WD_FRAMERECT_RIGHT, y, STR_LOCAL_AUTHORITY_ACTION_SMALL_ADVERTISING_CAMPAIGN + i, action_colour); + y += FONT_HEIGHT_NORMAL; + } + } + void SetStringParameters(int widget) const override { if (widget == WID_TA_CAPTION) SetDParam(0, this->window_number); @@ -195,33 +231,15 @@ public: switch (widget) { case WID_TA_ACTION_INFO: if (this->sel_index != -1) { - SetDParam(0, _price[PR_TOWN_ACTION] * _town_action_costs[this->sel_index] >> 8); + Money action_cost = _price[PR_TOWN_ACTION] * _town_action_costs[this->sel_index] >> 8; + bool affordable = action_cost < Company::GetIfValid(_local_company)->money; + + SetDParam(0, action_cost); DrawStringMultiLine(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, r.top + WD_FRAMERECT_TOP, r.bottom - WD_FRAMERECT_BOTTOM, - STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING + this->sel_index); + STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_SMALL_ADVERTISING + this->sel_index, + affordable ? TC_YELLOW : TC_RED); } break; - case WID_TA_COMMAND_LIST: { - int numact; - uint buttons = GetMaskOfTownActions(&numact, _local_company, this->town); - int y = r.top + WD_FRAMERECT_TOP; - int pos = this->vscroll->GetPosition(); - - if (--pos < 0) { - DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, STR_LOCAL_AUTHORITY_ACTIONS_TITLE); - y += FONT_HEIGHT_NORMAL; - } - - for (int i = 0; buttons; i++, buttons >>= 1) { - if (pos <= -5) break; ///< Draw only the 5 fitting lines - - if ((buttons & 1) && --pos < 0) { - DrawString(r.left + WD_FRAMERECT_LEFT, r.right - WD_FRAMERECT_RIGHT, y, - STR_LOCAL_AUTHORITY_ACTION_SMALL_ADVERTISING_CAMPAIGN + i, this->sel_index == i ? TC_WHITE : TC_ORANGE); - y += FONT_HEIGHT_NORMAL; - } - } - break; - } } } @@ -244,7 +262,7 @@ public: } case WID_TA_COMMAND_LIST: - size->height = WD_FRAMERECT_TOP + 5 * FONT_HEIGHT_NORMAL + WD_FRAMERECT_BOTTOM; + size->height = WD_FRAMERECT_TOP + (TACT_COUNT + 1) * FONT_HEIGHT_NORMAL + WD_FRAMERECT_BOTTOM; size->width = GetStringBoundingBox(STR_LOCAL_AUTHORITY_ACTIONS_TITLE).width; for (uint i = 0; i < TACT_COUNT; i++ ) { size->width = std::max(size->width, GetStringBoundingBox(STR_LOCAL_AUTHORITY_ACTION_SMALL_ADVERTISING_CAMPAIGN + i).width); @@ -275,14 +293,14 @@ public: } case WID_TA_COMMAND_LIST: { - int y = this->GetRowFromWidget(pt.y, WID_TA_COMMAND_LIST, 1, FONT_HEIGHT_NORMAL); - if (!IsInsideMM(y, 0, 5)) return; + int y = this->GetRowFromWidget(pt.y, WID_TA_COMMAND_LIST, 1, FONT_HEIGHT_NORMAL) - 1; - y = GetNthSetBit(GetMaskOfTownActions(nullptr, _local_company, this->town), y + this->vscroll->GetPosition() - 1); + y = GetNthSetBit(y); if (y >= 0) { this->sel_index = y; this->SetDirty(); } + /* When double-clicking, continue */ if (click_count == 1 || y < 0) break; FALLTHROUGH; @@ -298,6 +316,16 @@ public: { this->SetDirty(); } + + void OnInvalidateData(int data = 0, bool gui_scope = true) override + { + if (!gui_scope) return; + + this->enabled_actions = this->GetEnabledActions(); + if (!HasBit(this->enabled_actions, this->sel_index)) { + this->sel_index = -1; + } + } }; static WindowDesc _town_authority_desc( From 7c3c92f8b8d0c67d817095d367720272d96882ab Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sat, 12 Nov 2022 17:24:31 +0000 Subject: [PATCH 16/16] Fix #10155: SyncCompanySettings sending old instead of new setting values (#10158) --- src/settings.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/settings.cpp b/src/settings.cpp index 975c82f850..edf4e2441d 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -1602,8 +1602,8 @@ void SyncCompanySettings() const void *new_object = &_settings_client.company; for (auto &desc : _company_settings) { const SettingDesc *sd = GetSettingDesc(desc); - uint32 old_value = (uint32)sd->AsIntSetting()->Read(new_object); - uint32 new_value = (uint32)sd->AsIntSetting()->Read(old_object); + uint32 old_value = (uint32)sd->AsIntSetting()->Read(old_object); + uint32 new_value = (uint32)sd->AsIntSetting()->Read(new_object); if (old_value != new_value) Command::SendNet(STR_NULL, _local_company, sd->GetName(), new_value); } }