From 7bde0532c176969e9d0d1339bb6915eca09b089b Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Thu, 26 Dec 2019 21:21:51 +0100 Subject: openttd-git: 29183.e54184d18-2 -> 29230.18f03a300-1 --- openttd-git/PKGBUILD | 10 +- openttd-git/signaltunnel.patch | 101 +++++++++--------- openttd-git/sloped-stations.patch | 18 ++-- openttd-git/underground.patch | 210 +++++++++++++++++++------------------- 4 files changed, 169 insertions(+), 170 deletions(-) diff --git a/openttd-git/PKGBUILD b/openttd-git/PKGBUILD index 65d281ac5..7382898d4 100644 --- a/openttd-git/PKGBUILD +++ b/openttd-git/PKGBUILD @@ -1,8 +1,8 @@ # Maintainer: Erich Eckner pkgname=openttd-git -pkgver=29183.e54184d18 +pkgver=29230.18f03a300 _commit=${pkgver#*.} -pkgrel=2 +pkgrel=1 pkgdesc="A FOSS clone of Transport Tycoon Deluxe." arch=('x86_64' 'i686' 'pentium4') url="http://www.openttd.org" @@ -39,9 +39,9 @@ source=( "underground.patch" ) sha512sums=('SKIP' - '347edcf329e082b82d80504a2e08040706a72d74dbaede87be719e121c46ff3a02d20b8c59bfa99d3925cc1f10a76d51e29d83f5fe4b1d18421d72d5b80ece96' - '2f6a2fbd6931330f84611c5256ebdbf003484e83c85aeaea13a298b75159ef0256072b4094a2c8c92a8f5a912e695a738ed3b9ca9b05da2bf9396b19970a55cd' - '9aefde1091be171c5d4747a331a9cb56e0b9a9dcc16c5a78545249755a8e1d3b3af2b47fcc4981d96101c8450ed09f0cc775c9079918042cd0afcfd3dfe731ec') + '3b9af0ae5e91a639dca3f2cea255f5e174df2ef6dcbb39baffb241624414d93710155fab966fbe345b076e7a885ec0539478258380306a612ad0d4466436f1f5' + 'ebb36911d64b3cf9dd315a47753f3621f32d2b1ae864ee70a3b01cbfc9946079d3c57d5605b4af143e1ddef76569b9812535cb99468a993596a464a448dc311e' + '6567eaef386e74170ab80fa314066b389bcb04ba6b5260bc3b3958d0f3aee069d49653deceba7fef5b51a5bdf19c8ca46405df37efba11813640bd3ee3dc8089') pkgver() { printf '%s.%s\n' \ diff --git a/openttd-git/signaltunnel.patch b/openttd-git/signaltunnel.patch index 236afd3c2..308ae9053 100644 --- a/openttd-git/signaltunnel.patch +++ b/openttd-git/signaltunnel.patch @@ -1,9 +1,9 @@ diff --git a/src/lang/english.txt b/src/lang/english.txt -index 5115a0eb5f7..e8a3071f83d 100644 +index bc89cfee3d..4ac0917b4a 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt -@@ -1558,6 +1558,8 @@ STR_CONFIG_SETTING_ALLOW_SHARES :Allow buying sh - STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :When enabled, allow buying and selling of company shares. Shares will only be available for companies reaching a certain age +@@ -1560,6 +1560,8 @@ STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Minimum company + STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES_HELPTEXT :Set the minimum age of a company for others to be able to buy and sell shares from them. STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Percentage of leg profit to pay in feeder systems: {STRING2} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Percentage of income given to the intermediate legs in feeder systems, giving more control over the income +STR_CONFIG_SETTING_SIMULATE_SIGNALS :Simulate signals in tunnels, bridges every: {STRING2} @@ -11,7 +11,7 @@ index 5115a0eb5f7..e8a3071f83d 100644 STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :When dragging, place signals every: {STRING2} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Set the distance at which signals will be built on a track up to the next obstacle (signal, junction), if signals are dragged STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} tile{P 0 "" s} -@@ -2703,8 +2705,10 @@ STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Ship depot +@@ -2705,8 +2707,10 @@ STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Ship depot # Industries come directly from their industry names STR_LAI_TUNNEL_DESCRIPTION_RAILROAD :Railway tunnel @@ -23,11 +23,11 @@ index 5115a0eb5f7..e8a3071f83d 100644 STR_LAI_BRIDGE_DESCRIPTION_RAIL_GIRDER_STEEL :Steel girder rail bridge STR_LAI_BRIDGE_DESCRIPTION_RAIL_CANTILEVER_STEEL :Steel cantilever rail bridge diff --git a/src/lang/russian.txt b/src/lang/russian.txt -index ef03ace5b0d..2f71eb8cdd8 100644 +index 8c3776a776..004af31654 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt -@@ -1710,6 +1710,8 @@ STR_CONFIG_SETTING_ALLOW_SHARES :Разреши - STR_CONFIG_SETTING_ALLOW_SHARES_HELPTEXT :Разрешает торговлю акциями транспортных компаний. Акции выпускаются компаниями через некоторое время после основания. +@@ -1711,6 +1711,8 @@ STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES :Мин. воз + STR_CONFIG_SETTING_MIN_YEARS_FOR_SHARES_HELPTEXT :Минимальный возраст, которого должна достичь компания для начала выпуска акций, которыми смогут торговать другие игроки. STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE :Процент дохода, начисляемый при частичной перевозке: {STRING} STR_CONFIG_SETTING_FEEDER_PAYMENT_SHARE_HELPTEXT :Процент прибыли, начисляемый транспорту за частичную перевозку груза. +STR_CONFIG_SETTING_SIMULATE_SIGNALS :Симуляция светофоров в туннелях и на мостах каждые: {STRING} @@ -35,7 +35,7 @@ index ef03ace5b0d..2f71eb8cdd8 100644 STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY :При перетаскивании ставить сигналы каждые: {STRING} STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT :Настройка периодичности расстановки сигналов методом перетаскивания. Сигналы будут устанавливаться до первого встреченного препятствия (пересечения или другого сигнала). STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE :{COMMA} клет{P ку ки ок} -@@ -2883,8 +2885,10 @@ STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Верфь +@@ -2884,8 +2886,10 @@ STR_LAI_WATER_DESCRIPTION_SHIP_DEPOT :Верфь # Industries come directly from their industry names STR_LAI_TUNNEL_DESCRIPTION_RAILROAD :Железнодорожный туннель @@ -47,10 +47,10 @@ index ef03ace5b0d..2f71eb8cdd8 100644 STR_LAI_BRIDGE_DESCRIPTION_RAIL_GIRDER_STEEL :Стальной балочный ж/д мост STR_LAI_BRIDGE_DESCRIPTION_RAIL_CANTILEVER_STEEL :Стальной консольный ж/д мост diff --git a/src/pathfinder/follow_track.hpp b/src/pathfinder/follow_track.hpp -index 31a78165091..3442e6f796f 100644 +index 2cfe4d9e4a..dbf225d785 100644 --- a/src/pathfinder/follow_track.hpp +++ b/src/pathfinder/follow_track.hpp -@@ -372,7 +372,7 @@ protected: +@@ -370,7 +370,7 @@ protected: if (IsTunnel(m_new_tile)) { if (!m_is_tunnel) { DiagDirection tunnel_enterdir = GetTunnelBridgeDirection(m_new_tile); @@ -59,7 +59,7 @@ index 31a78165091..3442e6f796f 100644 m_err = EC_NO_WAY; return false; } -@@ -380,7 +380,7 @@ protected: +@@ -378,7 +378,7 @@ protected: } else { // IsBridge(m_new_tile) if (!m_is_bridge) { DiagDirection ramp_enderdir = GetTunnelBridgeDirection(m_new_tile); @@ -69,10 +69,10 @@ index 31a78165091..3442e6f796f 100644 return false; } diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp -index 1a4728c6c30..0194656c7ed 100644 +index 7de00327eb..b96e2240f6 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp -@@ -1062,9 +1062,12 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, +@@ -1060,9 +1060,12 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, if (sigtype > SIGTYPE_LAST) return CMD_ERROR; if (cycle_start > cycle_stop || cycle_stop > SIGTYPE_LAST) return CMD_ERROR; @@ -88,7 +88,7 @@ index 1a4728c6c30..0194656c7ed 100644 return_cmd_error(STR_ERROR_THERE_IS_NO_RAILROAD_TRACK); } /* Protect against invalid signal copying */ -@@ -1073,6 +1076,53 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, +@@ -1071,6 +1074,53 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, CommandCost ret = CheckTileOwnership(tile); if (ret.Failed()) return ret; @@ -142,7 +142,7 @@ index 1a4728c6c30..0194656c7ed 100644 /* See if this is a valid track combination for signals (no overlap) */ if (TracksOverlap(GetTrackBits(tile))) return_cmd_error(STR_ERROR_NO_SUITABLE_RAILROAD_TRACK); -@@ -1082,7 +1132,6 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, +@@ -1080,7 +1130,6 @@ CommandCost CmdBuildSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, /* you can not convert a signal if no signal is on track */ if (convert_signal && !HasSignalOnTrack(tile, track)) return_cmd_error(STR_ERROR_THERE_ARE_NO_SIGNALS); @@ -150,7 +150,7 @@ index 1a4728c6c30..0194656c7ed 100644 if (!HasSignalOnTrack(tile, track)) { /* build new signals */ cost = CommandCost(EXPENSES_CONSTRUCTION, _price[PR_BUILD_SIGNALS]); -@@ -1240,6 +1289,7 @@ static bool CheckSignalAutoFill(TileIndex &tile, Trackdir &trackdir, int &signal +@@ -1238,6 +1287,7 @@ static bool CheckSignalAutoFill(TileIndex &tile, Trackdir &trackdir, int &signal return true; case MP_TUNNELBRIDGE: { @@ -158,7 +158,7 @@ index 1a4728c6c30..0194656c7ed 100644 TileIndex orig_tile = tile; // backup old value if (GetTunnelBridgeTransportType(tile) != TRANSPORT_RAIL) return false; -@@ -1351,7 +1401,8 @@ static CommandCost CmdSignalTrackHelper(TileIndex tile, DoCommandFlag flags, uin +@@ -1349,7 +1399,8 @@ static CommandCost CmdSignalTrackHelper(TileIndex tile, DoCommandFlag flags, uin bool had_success = false; for (;;) { /* only build/remove signals with the specified density */ @@ -168,7 +168,7 @@ index 1a4728c6c30..0194656c7ed 100644 uint32 p1 = GB(TrackdirToTrack(trackdir), 0, 3); SB(p1, 3, 1, mode); SB(p1, 4, 1, semaphores); -@@ -1387,13 +1438,20 @@ static CommandCost CmdSignalTrackHelper(TileIndex tile, DoCommandFlag flags, uin +@@ -1385,13 +1436,20 @@ static CommandCost CmdSignalTrackHelper(TileIndex tile, DoCommandFlag flags, uin /* Collect cost. */ if (!test_only) { @@ -195,7 +195,7 @@ index 1a4728c6c30..0194656c7ed 100644 /* The "No railway" error is the least important one. */ if (ret.GetErrorMessage() != STR_ERROR_THERE_IS_NO_RAILROAD_TRACK || last_error.GetErrorMessage() == INVALID_STRING_ID) { -@@ -1464,22 +1522,48 @@ CommandCost CmdBuildSignalTrack(TileIndex tile, DoCommandFlag flags, uint32 p1, +@@ -1462,22 +1520,48 @@ CommandCost CmdBuildSignalTrack(TileIndex tile, DoCommandFlag flags, uint32 p1, CommandCost CmdRemoveSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const char *text) { Track track = Extract(p1); @@ -251,7 +251,7 @@ index 1a4728c6c30..0194656c7ed 100644 Train *v = nullptr; if (HasReservedTracks(tile, TrackToTrackBits(track))) { v = GetTrainForReservation(tile, track); -@@ -1515,7 +1599,7 @@ CommandCost CmdRemoveSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1 +@@ -1513,7 +1597,7 @@ CommandCost CmdRemoveSingleSignal(TileIndex tile, DoCommandFlag flags, uint32 p1 MarkTileDirtyByTile(tile); } @@ -261,10 +261,10 @@ index 1a4728c6c30..0194656c7ed 100644 /** diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp -index bde6e05579d..8f15bd07b41 100644 +index 4b7768dfa9..b17520b182 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp -@@ -1553,6 +1553,7 @@ static SettingsContainer &GetSettingsTree() +@@ -1551,6 +1551,7 @@ static SettingsContainer &GetSettingsTree() SettingsPage *construction = interface->Add(new SettingsPage(STR_CONFIG_SETTING_INTERFACE_CONSTRUCTION)); { construction->Add(new SettingEntry("gui.link_terraform_toolbar")); @@ -273,10 +273,10 @@ index bde6e05579d..8f15bd07b41 100644 construction->Add(new SettingEntry("gui.persistent_buildingtools")); construction->Add(new SettingEntry("gui.quick_goto")); diff --git a/src/settings_type.h b/src/settings_type.h -index 9315cdd968c..a1d1aa8c452 100644 +index 60db6c9f97..ae4a384966 100644 --- a/src/settings_type.h +++ b/src/settings_type.h -@@ -317,6 +317,7 @@ struct ConstructionSettings { +@@ -315,6 +315,7 @@ struct ConstructionSettings { bool freeform_edges; ///< allow terraforming the tiles at the map edges uint8 extra_tree_placement; ///< (dis)allow building extra trees in-game uint8 command_pause_level; ///< level/amount of commands that can't be executed while paused @@ -285,10 +285,10 @@ index 9315cdd968c..a1d1aa8c452 100644 uint32 terraform_per_64k_frames; ///< how many tile heights may, over a long period, be terraformed per 65536 frames? uint16 terraform_frame_burst; ///< how many tile heights may, over a short period, be terraformed? diff --git a/src/signal.cpp b/src/signal.cpp -index 8952000a51c..137e435fb30 100644 +index 068ca6193b..b9627483ac 100644 --- a/src/signal.cpp +++ b/src/signal.cpp -@@ -197,6 +197,14 @@ static Vehicle *TrainOnTileEnum(Vehicle *v, void *) +@@ -195,6 +195,14 @@ static Vehicle *TrainOnTileEnum(Vehicle *v, void *) return v; } @@ -303,7 +303,7 @@ index 8952000a51c..137e435fb30 100644 /** * Perform some operations before adding data into Todo set -@@ -376,17 +384,39 @@ static SigFlags ExploreSegment(Owner owner) +@@ -374,17 +382,39 @@ static SigFlags ExploreSegment(Owner owner) if (GetTunnelBridgeTransportType(tile) != TRANSPORT_RAIL) continue; DiagDirection dir = GetTunnelBridgeDirection(tile); @@ -354,7 +354,7 @@ index 8952000a51c..137e435fb30 100644 } } break; -@@ -494,7 +524,9 @@ static SigSegState UpdateSignalsInBuffer(Owner owner) +@@ -492,7 +522,9 @@ static SigSegState UpdateSignalsInBuffer(Owner owner) assert(GetTunnelBridgeTransportType(tile) == TRANSPORT_RAIL); assert(dir == INVALID_DIAGDIR || dir == ReverseDiagDir(GetTunnelBridgeDirection(tile))); _tbdset.Add(tile, INVALID_DIAGDIR); // we can safely start from wormhole centre @@ -366,10 +366,10 @@ index 8952000a51c..137e435fb30 100644 case MP_RAILWAY: diff --git a/src/table/settings.ini b/src/table/settings.ini -index 800d6f79c18..df72c1ab609 100644 +index 4c3d6ce0d4..b2936d8d55 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini -@@ -541,6 +541,20 @@ str = STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH +@@ -539,6 +539,20 @@ str = STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH strhelp = STR_CONFIG_SETTING_MAX_TUNNEL_LENGTH_HELPTEXT strval = STR_CONFIG_SETTING_TILE_LENGTH @@ -391,10 +391,10 @@ index 800d6f79c18..df72c1ab609 100644 [SDT_NULL] length = 1 diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp -index 71b34d6ba2f..256982315c8 100644 +index 5d02764b55..1eddbf665e 100644 --- a/src/train_cmd.cpp +++ b/src/train_cmd.cpp -@@ -1851,6 +1851,17 @@ void ReverseTrainDirection(Train *v) +@@ -1845,6 +1845,17 @@ void ReverseTrainDirection(Train *v) return; } @@ -412,7 +412,7 @@ index 71b34d6ba2f..256982315c8 100644 /* VehicleExitDir does not always produce the desired dir for depots and * tunnels/bridges that is needed for UpdateSignalsOnSegment. */ DiagDirection dir = VehicleExitDir(v->direction, v->track); -@@ -2185,6 +2196,42 @@ static bool CheckTrainStayInDepot(Train *v) +@@ -2179,6 +2190,42 @@ static bool CheckTrainStayInDepot(Train *v) return false; } @@ -455,7 +455,7 @@ index 71b34d6ba2f..256982315c8 100644 /** * Clear the reservation of \a tile that was just left by a wagon on \a track_dir. * @param v %Train owning the reservation. -@@ -2200,7 +2247,8 @@ static void ClearPathReservation(const Train *v, TileIndex tile, Trackdir track_ +@@ -2194,7 +2241,8 @@ static void ClearPathReservation(const Train *v, TileIndex tile, Trackdir track_ if (GetTunnelBridgeDirection(tile) == ReverseDiagDir(dir)) { TileIndex end = GetOtherTunnelBridgeEnd(tile); @@ -465,7 +465,7 @@ index 71b34d6ba2f..256982315c8 100644 /* Free the reservation only if no other train is on the tiles. */ SetTunnelBridgeReservation(tile, false); SetTunnelBridgeReservation(end, false); -@@ -2214,6 +2262,7 @@ static void ClearPathReservation(const Train *v, TileIndex tile, Trackdir track_ +@@ -2208,6 +2256,7 @@ static void ClearPathReservation(const Train *v, TileIndex tile, Trackdir track_ } } } @@ -473,7 +473,7 @@ index 71b34d6ba2f..256982315c8 100644 } } else if (IsRailStationTile(tile)) { TileIndex new_tile = TileAddByDiagDir(tile, dir); -@@ -3080,6 +3129,99 @@ static Vehicle *CheckTrainAtSignal(Vehicle *v, void *data) +@@ -3074,6 +3123,99 @@ static Vehicle *CheckTrainAtSignal(Vehicle *v, void *data) return t; } @@ -573,7 +573,7 @@ index 71b34d6ba2f..256982315c8 100644 /** * Move a vehicle chain one movement stop forwards. * @param v First vehicle to move. -@@ -3265,6 +3407,23 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) +@@ -3259,6 +3401,23 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) goto invalid_rail; } @@ -597,7 +597,7 @@ index 71b34d6ba2f..256982315c8 100644 if (!HasBit(r, VETS_ENTERED_WORMHOLE)) { Track track = FindFirstTrack(chosen_track); Trackdir tdir = TrackDirectionToTrackdir(track, chosen_dir); -@@ -3317,6 +3476,64 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) +@@ -3311,6 +3470,64 @@ bool TrainController(Train *v, Vehicle *nomove, bool reverse) } } } else { @@ -663,10 +663,10 @@ index 71b34d6ba2f..256982315c8 100644 /* Perform look-ahead on tunnel exit. */ if (v->IsFrontEngine()) { diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp -index fce0855d258..5bd1a1529f0 100644 +index 00c362e776..88e682fe9e 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp -@@ -30,6 +30,7 @@ +@@ -28,6 +28,7 @@ #include "date_func.h" #include "clear_func.h" #include "vehicle_func.h" @@ -674,7 +674,7 @@ index fce0855d258..5bd1a1529f0 100644 #include "sound_func.h" #include "tunnelbridge.h" #include "cheat_type.h" -@@ -1221,6 +1222,103 @@ static void DrawBridgeRoadBits(TileIndex head_tile, int x, int y, int z, int off +@@ -1219,6 +1220,103 @@ static void DrawBridgeRoadBits(TileIndex head_tile, int x, int y, int z, int off } } @@ -778,7 +778,7 @@ index fce0855d258..5bd1a1529f0 100644 /** * Draws a tunnel of bridge tile. * For tunnels, this is rather simple, as you only need to draw the entrance. -@@ -1352,6 +1450,9 @@ static void DrawTile_TunnelBridge(TileInfo *ti) +@@ -1350,6 +1448,9 @@ static void DrawTile_TunnelBridge(TileInfo *ti) AddSortableSpriteToDraw(SPR_EMPTY_BOUNDING_BOX, PAL_NONE, ti->x, ti->y, BB_data[6], BB_data[7], TILE_HEIGHT, ti->z); AddSortableSpriteToDraw(SPR_EMPTY_BOUNDING_BOX, PAL_NONE, ti->x + BB_data[4], ti->y + BB_data[5], BB_data[6], BB_data[7], TILE_HEIGHT, ti->z); @@ -788,7 +788,7 @@ index fce0855d258..5bd1a1529f0 100644 DrawBridgeMiddle(ti); } else { // IsBridge(ti->tile) const PalSpriteID *psid; -@@ -1457,6 +1558,9 @@ static void DrawTile_TunnelBridge(TileInfo *ti) +@@ -1455,6 +1556,9 @@ static void DrawTile_TunnelBridge(TileInfo *ti) } } @@ -798,7 +798,7 @@ index fce0855d258..5bd1a1529f0 100644 DrawBridgeMiddle(ti); } } -@@ -1598,6 +1702,9 @@ void DrawBridgeMiddle(const TileInfo *ti) +@@ -1596,6 +1700,9 @@ void DrawBridgeMiddle(const TileInfo *ti) if (HasRailCatenaryDrawn(GetRailType(rampsouth))) { DrawRailCatenaryOnBridge(ti); } @@ -808,7 +808,7 @@ index fce0855d258..5bd1a1529f0 100644 } /* draw roof, the component of the bridge which is logically between the vehicle and the camera */ -@@ -1686,9 +1793,9 @@ static void GetTileDesc_TunnelBridge(TileIndex tile, TileDesc *td) +@@ -1684,9 +1791,9 @@ static void GetTileDesc_TunnelBridge(TileIndex tile, TileDesc *td) TransportType tt = GetTunnelBridgeTransportType(tile); if (IsTunnel(tile)) { @@ -820,7 +820,7 @@ index fce0855d258..5bd1a1529f0 100644 } td->owner[0] = GetTileOwner(tile); -@@ -1771,6 +1878,26 @@ static void TileLoop_TunnelBridge(TileIndex tile) +@@ -1769,6 +1876,25 @@ static void TileLoop_TunnelBridge(TileIndex tile) } } @@ -829,9 +829,8 @@ index fce0855d258..5bd1a1529f0 100644 + /* Show vehicles found in tunnel. */ + if (IsTunnelTile(tile)) { + int count = 0; -+ const Train *t; + TileIndex tile_end = GetOtherTunnelBridgeEnd(tile); -+ FOR_ALL_TRAINS(t) { ++ for (Train *t : Train::Iterate()) { + if (!t->IsFrontEngine()) continue; + if (tile == t->tile || tile_end == t->tile) { + ShowVehicleViewWindow(t); @@ -847,7 +846,7 @@ index fce0855d258..5bd1a1529f0 100644 static TrackStatus GetTileTrackStatus_TunnelBridge(TileIndex tile, TransportType mode, uint sub_mode, DiagDirection side) { TransportType transport_type = GetTunnelBridgeTransportType(tile); -@@ -2024,8 +2151,8 @@ extern const TileTypeProcs _tile_type_tunnelbridge_procs = { +@@ -2022,8 +2148,8 @@ extern const TileTypeProcs _tile_type_tunnelbridge_procs = { nullptr, // add_accepted_cargo_proc GetTileDesc_TunnelBridge, // get_tile_desc_proc GetTileTrackStatus_TunnelBridge, // get_tile_track_status_proc @@ -859,10 +858,10 @@ index fce0855d258..5bd1a1529f0 100644 ChangeTileOwner_TunnelBridge, // change_tile_owner_proc nullptr, // add_produced_cargo_proc diff --git a/src/tunnelbridge_map.h b/src/tunnelbridge_map.h -index 0f7f17b3ac6..57f338b8be3 100644 +index 62d3c14b2d..fa029dcf4d 100644 --- a/src/tunnelbridge_map.h +++ b/src/tunnelbridge_map.h -@@ -121,4 +121,98 @@ static inline TrackBits GetTunnelBridgeReservationTrackBits(TileIndex t) +@@ -119,4 +119,98 @@ static inline TrackBits GetTunnelBridgeReservationTrackBits(TileIndex t) return HasTunnelBridgeReservation(t) ? DiagDirToDiagTrackBits(GetTunnelBridgeDirection(t)) : TRACK_BIT_NONE; } diff --git a/openttd-git/sloped-stations.patch b/openttd-git/sloped-stations.patch index 1d1a9c75f..304332a64 100644 --- a/openttd-git/sloped-stations.patch +++ b/openttd-git/sloped-stations.patch @@ -1,5 +1,5 @@ diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp -index 1a4728c6c30..67475164b45 100644 +index 1a4728c6c3..67475164b4 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -189,14 +189,6 @@ RailType AllocateRailType(RailTypeLabel label) @@ -18,7 +18,7 @@ index 1a4728c6c30..67475164b45 100644 * --------- * |\ /| diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp -index 4f5519c31ec..42fcd067c3c 100644 +index 4f5519c31e..42fcd067c3 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -39,6 +39,7 @@ @@ -62,7 +62,7 @@ index 4f5519c31ec..42fcd067c3c 100644 * Get the sprite offset within a spritegroup. * @param slope Slope diff --git a/src/road_cmd.h b/src/road_cmd.h -index 3cf588dcd60..2a0da614270 100644 +index 3cf588dcd6..2a0da61427 100644 --- a/src/road_cmd.h +++ b/src/road_cmd.h @@ -14,8 +14,11 @@ @@ -78,7 +78,7 @@ index 3cf588dcd60..2a0da614270 100644 + #endif /* ROAD_CMD_H */ diff --git a/src/road_type.h b/src/road_type.h -index f01d1d0353d..a5754911630 100644 +index f01d1d0353..a575491163 100644 --- a/src/road_type.h +++ b/src/road_type.h @@ -73,4 +73,11 @@ enum RoadBits { @@ -94,7 +94,7 @@ index f01d1d0353d..a5754911630 100644 + #endif /* ROAD_TYPE_H */ diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp -index d323bc1ecb5..033792ff3ef 100644 +index d323bc1ecb..033792ff3e 100644 --- a/src/roadveh_cmd.cpp +++ b/src/roadveh_cmd.cpp @@ -1502,7 +1502,7 @@ again: @@ -107,7 +107,7 @@ index d323bc1ecb5..033792ff3ef 100644 } } diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp -index 546aecc2693..672dbed6f3d 100644 +index 546aecc269..672dbed6f3 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -57,6 +57,7 @@ @@ -311,7 +311,7 @@ index 546aecc2693..672dbed6f3d 100644 } diff --git a/src/table/sprites.h b/src/table/sprites.h -index 5f5aa470578..6a2c20cf46a 100644 +index 5f5aa47057..6a2c20cf46 100644 --- a/src/table/sprites.h +++ b/src/table/sprites.h @@ -260,7 +260,26 @@ static const SpriteID SPR_TRUCK_STOP_DT_Y_W = SPR_ROADSTOP_BASE + 4; @@ -343,7 +343,7 @@ index 5f5aa470578..6a2c20cf46a 100644 /** Tramway sprites */ static const SpriteID SPR_TRAMWAY_BASE = SPR_ROADSTOP_BASE + ROADSTOP_SPRITE_COUNT; diff --git a/src/table/station_land.h b/src/table/station_land.h -index b678297d90a..2291ba6bd37 100644 +index b678297d90..2291ba6bd3 100644 --- a/src/table/station_land.h +++ b/src/table/station_land.h @@ -777,6 +777,62 @@ static const DrawTileSeqStruct _station_display_datas_waypoint_Y[] = { @@ -432,7 +432,7 @@ index b678297d90a..2291ba6bd37 100644 static const DrawTileSprites _station_display_datas_oilrig[] = { diff --git a/src/track_type.h b/src/track_type.h -index 233376b0063..26018048136 100644 +index 233376b006..2601804813 100644 --- a/src/track_type.h +++ b/src/track_type.h @@ -122,4 +122,11 @@ DECLARE_ENUM_AS_BIT_SET(TrackdirBits) diff --git a/openttd-git/underground.patch b/openttd-git/underground.patch index b0fd481aa..db521b288 100644 --- a/openttd-git/underground.patch +++ b/openttd-git/underground.patch @@ -1,6 +1,6 @@ diff --git a/layer.txt b/layer.txt new file mode 100644 -index 00000000000..a5947189b91 +index 0000000000..a5947189b9 --- /dev/null +++ b/layer.txt @@ -0,0 +1,48 @@ @@ -53,7 +53,7 @@ index 00000000000..a5947189b91 +* Expansion of the underground station does not work (when adding cells, a new one is added) +- GF. "jumps" (the non-editable part of the station changes randomly when the station is modified) diff --git a/source.list b/source.list -index 4f9c8aa0d77..6e427ce4ec4 100644 +index 4f9c8aa0d7..6e427ce4ec 100644 --- a/source.list +++ b/source.list @@ -1179,3 +1179,12 @@ sound/null_s.cpp @@ -70,7 +70,7 @@ index 4f9c8aa0d77..6e427ce4ec4 100644 +underground_gui.h +widgets/underground_widget.h diff --git a/src/base_station_base.h b/src/base_station_base.h -index eaeb246ef14..c4e802d1c1b 100644 +index eaeb246ef1..c4e802d1c1 100644 --- a/src/base_station_base.h +++ b/src/base_station_base.h @@ -28,6 +28,13 @@ struct StationSpecList { @@ -97,7 +97,7 @@ index eaeb246ef14..c4e802d1c1b 100644 CommandCost BeforeAddTile(TileIndex tile, StationRectMode mode); CommandCost BeforeAddRect(TileIndex tile, int w, int h, StationRectMode mode); diff --git a/src/clear_cmd.cpp b/src/clear_cmd.cpp -index bfe5c66b3c9..230fc9421a2 100644 +index bfe5c66b3c..230fc9421a 100644 --- a/src/clear_cmd.cpp +++ b/src/clear_cmd.cpp @@ -14,6 +14,7 @@ @@ -148,7 +148,7 @@ index bfe5c66b3c9..230fc9421a2 100644 } diff --git a/src/console_cmds.cpp b/src/console_cmds.cpp -index 740bbdde889..0646d83731d 100644 +index 740bbdde88..0646d83731 100644 --- a/src/console_cmds.cpp +++ b/src/console_cmds.cpp @@ -27,6 +27,7 @@ @@ -168,7 +168,7 @@ index 740bbdde889..0646d83731d 100644 _settings_game.game_creation.map_y = FindFirstBit(MapSizeY()); _switch_mode = SM_RESTARTGAME; diff --git a/src/genworld_gui.cpp b/src/genworld_gui.cpp -index 550a193d791..011fe186f97 100644 +index 550a193d79..011fe186f9 100644 --- a/src/genworld_gui.cpp +++ b/src/genworld_gui.cpp @@ -18,6 +18,8 @@ @@ -332,7 +332,7 @@ index 550a193d791..011fe186f97 100644 /* Date. */ NWidget(NWID_HORIZONTAL), diff --git a/src/gfx_type.h b/src/gfx_type.h -index cc884b06df0..0c0c2586447 100644 +index cc884b06df..0c0c258644 100644 --- a/src/gfx_type.h +++ b/src/gfx_type.h @@ -157,6 +157,7 @@ struct DrawPixelInfo { @@ -344,7 +344,7 @@ index cc884b06df0..0c0c2586447 100644 }; diff --git a/src/heightmap.cpp b/src/heightmap.cpp -index 4609dceeb98..86ee14cc560 100644 +index 4609dceeb9..86ee14cc56 100644 --- a/src/heightmap.cpp +++ b/src/heightmap.cpp @@ -16,6 +16,7 @@ @@ -366,7 +366,7 @@ index 4609dceeb98..86ee14cc560 100644 for (row = 0; (uint)row < height; row++) { for (col = 0; (uint)col < width; col++) { diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp -index 4e4ff5c82fe..befe0609937 100644 +index 4e4ff5c82f..befe060993 100644 --- a/src/industry_cmd.cpp +++ b/src/industry_cmd.cpp @@ -14,6 +14,7 @@ @@ -387,7 +387,7 @@ index 4e4ff5c82fe..befe0609937 100644 } diff --git a/src/landscape.cpp b/src/landscape.cpp -index 66be73bd659..dced07599e3 100644 +index 66be73bd65..dced07599e 100644 --- a/src/landscape.cpp +++ b/src/landscape.cpp @@ -35,6 +35,7 @@ @@ -432,7 +432,7 @@ index 66be73bd659..dced07599e3 100644 static const byte _genterrain_tbl_1[5] = { 10, 22, 33, 37, 4 }; diff --git a/src/lang/afrikaans.txt b/src/lang/afrikaans.txt -index 8340207dc36..30485b0ffd7 100644 +index 8340207dc3..30485b0ffd 100644 --- a/src/lang/afrikaans.txt +++ b/src/lang/afrikaans.txt @@ -2570,7 +2570,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tremweg @@ -445,7 +445,7 @@ index 8340207dc36..30485b0ffd7 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stasie klas: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stasie tiepe: {LTBLUE}{STRING} diff --git a/src/lang/arabic_egypt.txt b/src/lang/arabic_egypt.txt -index cb558aa3a4e..4e08bd22b50 100644 +index cb558aa3a4..4e08bd22b5 100644 --- a/src/lang/arabic_egypt.txt +++ b/src/lang/arabic_egypt.txt @@ -2205,7 +2205,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}مالك @@ -458,7 +458,7 @@ index cb558aa3a4e..4e08bd22b50 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK} فئة المحطة: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}نوع المحطة: {LTBLUE}{STRING} diff --git a/src/lang/basque.txt b/src/lang/basque.txt -index f6d5cbeb48e..a2d7d692b65 100644 +index f6d5cbeb48..a2d7d692b6 100644 --- a/src/lang/basque.txt +++ b/src/lang/basque.txt @@ -2473,7 +2473,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tranbia @@ -471,7 +471,7 @@ index f6d5cbeb48e..a2d7d692b65 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Geltoki mota: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Geltoki mota: {LTBLUE}{STRING} diff --git a/src/lang/belarusian.txt b/src/lang/belarusian.txt -index 5a7011e3b29..39bd4456cd9 100644 +index 5a7011e3b2..39bd4456cd 100644 --- a/src/lang/belarusian.txt +++ b/src/lang/belarusian.txt @@ -2916,7 +2916,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Улад @@ -484,7 +484,7 @@ index 5a7011e3b29..39bd4456cd9 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Кляса станцыі: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Тып станцыi: {LTBLUE}{STRING} diff --git a/src/lang/brazilian_portuguese.txt b/src/lang/brazilian_portuguese.txt -index 5e688f006bc..c8f4af128ef 100644 +index 5e688f006b..c8f4af128e 100644 --- a/src/lang/brazilian_portuguese.txt +++ b/src/lang/brazilian_portuguese.txt @@ -2587,7 +2587,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Dono da @@ -497,7 +497,7 @@ index 5e688f006bc..c8f4af128ef 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Classe de Estação: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo de Estação: {LTBLUE}{STRING} diff --git a/src/lang/bulgarian.txt b/src/lang/bulgarian.txt -index 974557ff9c4..7afb4c19944 100644 +index 974557ff9c..7afb4c1994 100644 --- a/src/lang/bulgarian.txt +++ b/src/lang/bulgarian.txt @@ -2535,7 +2535,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Собс @@ -510,7 +510,7 @@ index 974557ff9c4..7afb4c19944 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Клас на станцията: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Тип на станцията: {LTBLUE}{STRING} diff --git a/src/lang/catalan.txt b/src/lang/catalan.txt -index 52fed2d757f..31d1df932a3 100644 +index 52fed2d757..31d1df932a 100644 --- a/src/lang/catalan.txt +++ b/src/lang/catalan.txt @@ -2604,7 +2604,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propieta @@ -523,7 +523,7 @@ index 52fed2d757f..31d1df932a3 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Classe d'estació: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipus d'estació: {LTBLUE}{STRING} diff --git a/src/lang/croatian.txt b/src/lang/croatian.txt -index 344702819c6..33630abec4d 100644 +index 344702819c..33630abec4 100644 --- a/src/lang/croatian.txt +++ b/src/lang/croatian.txt @@ -2716,7 +2716,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Vlasnik @@ -536,7 +536,7 @@ index 344702819c6..33630abec4d 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Klasa postaje: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Vrsta postaje: {LTBLUE}{STRING} diff --git a/src/lang/czech.txt b/src/lang/czech.txt -index a79e7d88d7b..c36bbee385e 100644 +index a79e7d88d7..c36bbee385 100644 --- a/src/lang/czech.txt +++ b/src/lang/czech.txt @@ -2683,7 +2683,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Majitel @@ -549,7 +549,7 @@ index a79e7d88d7b..c36bbee385e 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Třída stanice: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Druh stanice: {LTBLUE}{STRING} diff --git a/src/lang/danish.txt b/src/lang/danish.txt -index deb41bef259..1e955392cc6 100644 +index deb41bef25..1e955392cc 100644 --- a/src/lang/danish.txt +++ b/src/lang/danish.txt @@ -2605,7 +2605,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Ejer af @@ -562,7 +562,7 @@ index deb41bef259..1e955392cc6 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stationsklasse: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stationstype: {LTBLUE}{STRING} diff --git a/src/lang/dutch.txt b/src/lang/dutch.txt -index 951b2d0236f..08041f45f4f 100644 +index 951b2d0236..08041f45f4 100644 --- a/src/lang/dutch.txt +++ b/src/lang/dutch.txt @@ -2620,7 +2620,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Eigenaar @@ -575,7 +575,7 @@ index 951b2d0236f..08041f45f4f 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stationsklasse: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stationstype: {LTBLUE}{STRING} diff --git a/src/lang/english.txt b/src/lang/english.txt -index 5115a0eb5f7..21e161aa447 100644 +index 5115a0eb5f..21e161aa44 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -464,6 +464,18 @@ STR_LANDSCAPING_MENU_PLANT_TREES :Plant trees @@ -643,7 +643,7 @@ index 5115a0eb5f7..21e161aa447 100644 + +# end underground string diff --git a/src/lang/english_AU.txt b/src/lang/english_AU.txt -index f20c10058fb..5d800a3d370 100644 +index f20c10058f..5d800a3d37 100644 --- a/src/lang/english_AU.txt +++ b/src/lang/english_AU.txt @@ -2544,7 +2544,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramway @@ -656,7 +656,7 @@ index f20c10058fb..5d800a3d370 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Station class: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Station type: {LTBLUE}{STRING} diff --git a/src/lang/english_US.txt b/src/lang/english_US.txt -index 6bf3ba3dd09..bd86accd68a 100644 +index 6bf3ba3dd0..bd86accd68 100644 --- a/src/lang/english_US.txt +++ b/src/lang/english_US.txt @@ -2620,7 +2620,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Streetca @@ -669,7 +669,7 @@ index 6bf3ba3dd09..bd86accd68a 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Station class: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Station type: {LTBLUE}{STRING} diff --git a/src/lang/esperanto.txt b/src/lang/esperanto.txt -index b7f657523c5..e95f86f253c 100644 +index b7f657523c..e95f86f253 100644 --- a/src/lang/esperanto.txt +++ b/src/lang/esperanto.txt @@ -2174,7 +2174,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Posedant @@ -682,7 +682,7 @@ index b7f657523c5..e95f86f253c 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stacioklaso: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Staciotipo: {LTBLUE}{STRING} diff --git a/src/lang/estonian.txt b/src/lang/estonian.txt -index ea32d2a4fe1..941cd172025 100644 +index ea32d2a4fe..941cd17202 100644 --- a/src/lang/estonian.txt +++ b/src/lang/estonian.txt @@ -2632,7 +2632,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Trammite @@ -695,7 +695,7 @@ index ea32d2a4fe1..941cd172025 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Jaama liik: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Jaama rühm: {LTBLUE}{STRING} diff --git a/src/lang/faroese.txt b/src/lang/faroese.txt -index 890f085fca3..5745bd78044 100644 +index 890f085fca..5745bd7804 100644 --- a/src/lang/faroese.txt +++ b/src/lang/faroese.txt @@ -2312,7 +2312,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Sporvogn @@ -708,7 +708,7 @@ index 890f085fca3..5745bd78044 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Støð klassi: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Støð slag: {LTBLUE}{STRING} diff --git a/src/lang/finnish.txt b/src/lang/finnish.txt -index 34520ac0b61..b5848d81dee 100644 +index 34520ac0b6..b5848d81de 100644 --- a/src/lang/finnish.txt +++ b/src/lang/finnish.txt @@ -2620,7 +2620,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Raitioti @@ -721,7 +721,7 @@ index 34520ac0b61..b5848d81dee 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Aseman luokka: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Aseman tyyppi: {LTBLUE}{STRING} diff --git a/src/lang/french.txt b/src/lang/french.txt -index e21dcfccb13..9a4f49ad74b 100644 +index e21dcfccb1..9a4f49ad74 100644 --- a/src/lang/french.txt +++ b/src/lang/french.txt @@ -2621,7 +2621,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Proprié @@ -734,7 +734,7 @@ index e21dcfccb13..9a4f49ad74b 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Type de station{NBSP}: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Type de station{NBSP}: {LTBLUE}{STRING} diff --git a/src/lang/gaelic.txt b/src/lang/gaelic.txt -index 056bbe387a6..e3cea6c5b8e 100644 +index 056bbe387a..e3cea6c5b8 100644 --- a/src/lang/gaelic.txt +++ b/src/lang/gaelic.txt @@ -2802,7 +2802,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Seilbhea @@ -747,7 +747,7 @@ index 056bbe387a6..e3cea6c5b8e 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Seòrsa an stèisein: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Seòrsa an stèisein: {LTBLUE}{STRING} diff --git a/src/lang/galician.txt b/src/lang/galician.txt -index 65f6f4c7b1d..04fca18d683 100644 +index 65f6f4c7b1..04fca18d68 100644 --- a/src/lang/galician.txt +++ b/src/lang/galician.txt @@ -2573,7 +2573,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propieta @@ -760,7 +760,7 @@ index 65f6f4c7b1d..04fca18d683 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Clase de estación: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo de estación: {LTBLUE}{STRING} diff --git a/src/lang/german.txt b/src/lang/german.txt -index f1940b1ec18..847b6430faa 100644 +index f1940b1ec1..847b6430fa 100644 --- a/src/lang/german.txt +++ b/src/lang/german.txt @@ -2593,7 +2593,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Straßen @@ -773,7 +773,7 @@ index f1940b1ec18..847b6430faa 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stationsklasse: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stationstyp: {LTBLUE}{STRING} diff --git a/src/lang/greek.txt b/src/lang/greek.txt -index 2ff31a610d1..dfcca33d395 100644 +index 2ff31a610d..dfcca33d39 100644 --- a/src/lang/greek.txt +++ b/src/lang/greek.txt @@ -2712,7 +2712,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Ιδιο @@ -786,7 +786,7 @@ index 2ff31a610d1..dfcca33d395 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Κατηγορία σταθμού: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Τύπος σταθμού: {LTBLUE}{STRING} diff --git a/src/lang/hebrew.txt b/src/lang/hebrew.txt -index 3c576bdf4d5..8c9647ca778 100644 +index 3c576bdf4d..8c9647ca77 100644 --- a/src/lang/hebrew.txt +++ b/src/lang/hebrew.txt @@ -2595,7 +2595,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}:בעל @@ -799,7 +799,7 @@ index 3c576bdf4d5..8c9647ca778 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}{LTBLUE}{STRING}: אופי התחנה STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK} {LTBLUE}{STRING}: סוג התחנה diff --git a/src/lang/hungarian.txt b/src/lang/hungarian.txt -index 641eb3c01bc..0cca5fced6a 100644 +index 641eb3c01b..0cca5fced6 100644 --- a/src/lang/hungarian.txt +++ b/src/lang/hungarian.txt @@ -2684,7 +2684,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}A villam @@ -812,7 +812,7 @@ index 641eb3c01bc..0cca5fced6a 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Állomás osztálya: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Állomás típusa: {LTBLUE}{STRING} diff --git a/src/lang/icelandic.txt b/src/lang/icelandic.txt -index 7ad0c23cfb0..40b5676762b 100644 +index 7ad0c23cfb..40b5676762 100644 --- a/src/lang/icelandic.txt +++ b/src/lang/icelandic.txt @@ -2419,7 +2419,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Eigandi @@ -825,7 +825,7 @@ index 7ad0c23cfb0..40b5676762b 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Tegund stöðvar: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tegund stöðvar: {LTBLUE}{STRING} diff --git a/src/lang/indonesian.txt b/src/lang/indonesian.txt -index c35f02079f1..0f317fab133 100644 +index c35f02079f..0f317fab13 100644 --- a/src/lang/indonesian.txt +++ b/src/lang/indonesian.txt @@ -2589,7 +2589,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Pemilik @@ -838,7 +838,7 @@ index c35f02079f1..0f317fab133 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Kelas Stasiun: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipe Stasiun: {LTBLUE}{STRING} diff --git a/src/lang/irish.txt b/src/lang/irish.txt -index 17a5ad57c43..8ea4c594258 100644 +index 17a5ad57c4..8ea4c59425 100644 --- a/src/lang/irish.txt +++ b/src/lang/irish.txt @@ -2569,7 +2569,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Úinéir @@ -851,7 +851,7 @@ index 17a5ad57c43..8ea4c594258 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Aicme an stáisiúin: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Cineál stáisiúin: {LTBLUE}{STRING} diff --git a/src/lang/italian.txt b/src/lang/italian.txt -index c3e23286c32..94677276faa 100644 +index c3e23286c3..94677276fa 100644 --- a/src/lang/italian.txt +++ b/src/lang/italian.txt @@ -2650,7 +2650,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propriet @@ -864,7 +864,7 @@ index c3e23286c32..94677276faa 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Tipo stazione: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo stazione: {LTBLUE}{STRING} diff --git a/src/lang/korean.txt b/src/lang/korean.txt -index c91b052cff5..e0d5fcc40d5 100644 +index c91b052cff..e0d5fcc40d 100644 --- a/src/lang/korean.txt +++ b/src/lang/korean.txt @@ -2621,7 +2621,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}전찻 @@ -877,7 +877,7 @@ index c91b052cff5..e0d5fcc40d5 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}역 분류: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}역 종류: {LTBLUE}{STRING} diff --git a/src/lang/latin.txt b/src/lang/latin.txt -index a9cd5087457..3f064ce6913 100644 +index a9cd508745..3f064ce691 100644 --- a/src/lang/latin.txt +++ b/src/lang/latin.txt @@ -2804,7 +2804,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Possesso @@ -890,7 +890,7 @@ index a9cd5087457..3f064ce6913 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Classis stationis: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Typus stationis: {LTBLUE}{STRING} diff --git a/src/lang/latvian.txt b/src/lang/latvian.txt -index 494182806aa..1d7952a6745 100644 +index 494182806a..1d7952a674 100644 --- a/src/lang/latvian.txt +++ b/src/lang/latvian.txt @@ -2515,7 +2515,7 @@ STR_LAND_AREA_INFORMATION_RAIL_OWNER :{BLACK}Dzelzce @@ -903,7 +903,7 @@ index 494182806aa..1d7952a6745 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stacijas klase: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stacijas tips: {LTBLUE}{STRING} diff --git a/src/lang/lithuanian.txt b/src/lang/lithuanian.txt -index 9c8d320060c..edd25ff2e61 100644 +index 9c8d320060..edd25ff2e6 100644 --- a/src/lang/lithuanian.txt +++ b/src/lang/lithuanian.txt @@ -2788,7 +2788,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramvaja @@ -916,7 +916,7 @@ index 9c8d320060c..edd25ff2e61 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stotelės rūšis: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stotelės tipas: {LTBLUE}{STRING} diff --git a/src/lang/luxembourgish.txt b/src/lang/luxembourgish.txt -index 1b976dd7e8d..9b64c7749cd 100644 +index 1b976dd7e8..9b64c7749c 100644 --- a/src/lang/luxembourgish.txt +++ b/src/lang/luxembourgish.txt @@ -2599,7 +2599,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramschi @@ -929,7 +929,7 @@ index 1b976dd7e8d..9b64c7749cd 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Statiounsklass: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Statiounstyp: {LTBLUE}{STRING} diff --git a/src/lang/malay.txt b/src/lang/malay.txt -index 3bdb601406f..7d397505a4f 100644 +index 3bdb601406..7d397505a4 100644 --- a/src/lang/malay.txt +++ b/src/lang/malay.txt @@ -2316,7 +2316,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Pemilik @@ -942,7 +942,7 @@ index 3bdb601406f..7d397505a4f 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Kelas stesen: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Jenis stesen: {LTBLUE}{STRING} diff --git a/src/lang/norwegian_bokmal.txt b/src/lang/norwegian_bokmal.txt -index 9d5f3635760..0a2b9b21a9b 100644 +index 9d5f363576..0a2b9b21a9 100644 --- a/src/lang/norwegian_bokmal.txt +++ b/src/lang/norwegian_bokmal.txt @@ -2624,7 +2624,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Eier av @@ -955,7 +955,7 @@ index 9d5f3635760..0a2b9b21a9b 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stasjonstype: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stasjonstype: {LTBLUE}{STRING} diff --git a/src/lang/norwegian_nynorsk.txt b/src/lang/norwegian_nynorsk.txt -index 54b8c110543..d4992d65b67 100644 +index 54b8c11054..d4992d65b6 100644 --- a/src/lang/norwegian_nynorsk.txt +++ b/src/lang/norwegian_nynorsk.txt @@ -2492,7 +2492,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Trikkesp @@ -968,7 +968,7 @@ index 54b8c110543..d4992d65b67 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stasjonsklasse: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stasjontype: {LTBLUE}{STRING} diff --git a/src/lang/polish.txt b/src/lang/polish.txt -index 285096874b6..9d5e0d18d8a 100644 +index 285096874b..9d5e0d18d8 100644 --- a/src/lang/polish.txt +++ b/src/lang/polish.txt @@ -2971,7 +2971,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Wlascici @@ -981,7 +981,7 @@ index 285096874b6..9d5e0d18d8a 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Rodzaj stacji: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Typ stacji: {LTBLUE}{STRING} diff --git a/src/lang/portuguese.txt b/src/lang/portuguese.txt -index f90aaaefbb3..185368c6a45 100644 +index f90aaaefbb..185368c6a4 100644 --- a/src/lang/portuguese.txt +++ b/src/lang/portuguese.txt @@ -2606,7 +2606,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Dono da @@ -994,7 +994,7 @@ index f90aaaefbb3..185368c6a45 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Tipo de Estação: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo de Estação: {LTBLUE}{STRING} diff --git a/src/lang/romanian.txt b/src/lang/romanian.txt -index f0dee3c6753..406cb5efc99 100644 +index f0dee3c675..406cb5efc9 100644 --- a/src/lang/romanian.txt +++ b/src/lang/romanian.txt @@ -2551,7 +2551,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propriet @@ -1007,7 +1007,7 @@ index f0dee3c6753..406cb5efc99 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Clasa staţiei: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tip staţie: {LTBLUE}{STRING} diff --git a/src/lang/russian.txt b/src/lang/russian.txt -index ef03ace5b0d..3b372656ca9 100644 +index ef03ace5b0..3b372656ca 100644 --- a/src/lang/russian.txt +++ b/src/lang/russian.txt @@ -590,6 +590,18 @@ STR_LANDSCAPING_MENU_PLANT_TREES :Высадка @@ -1075,7 +1075,7 @@ index ef03ace5b0d..3b372656ca9 100644 + +# end underground string diff --git a/src/lang/serbian.txt b/src/lang/serbian.txt -index 45681680831..f18ff72ecfc 100644 +index 4568168083..f18ff72ecf 100644 --- a/src/lang/serbian.txt +++ b/src/lang/serbian.txt @@ -2777,7 +2777,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Vlasnik @@ -1088,7 +1088,7 @@ index 45681680831..f18ff72ecfc 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Klasa stanice: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Vrsta stanice: {LTBLUE}{STRING} diff --git a/src/lang/simplified_chinese.txt b/src/lang/simplified_chinese.txt -index b87fce0daeb..1b5a1035a3b 100644 +index b87fce0dae..1b5a1035a3 100644 --- a/src/lang/simplified_chinese.txt +++ b/src/lang/simplified_chinese.txt @@ -2579,7 +2579,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}有轨 @@ -1101,7 +1101,7 @@ index b87fce0daeb..1b5a1035a3b 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}车站分类: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}车站类型: {LTBLUE}{STRING} diff --git a/src/lang/slovak.txt b/src/lang/slovak.txt -index 995007c687f..cb0e8339aac 100644 +index 995007c687..cb0e8339aa 100644 --- a/src/lang/slovak.txt +++ b/src/lang/slovak.txt @@ -2637,7 +2637,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Vlastní @@ -1114,7 +1114,7 @@ index 995007c687f..cb0e8339aac 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Trieda stanice: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Typ stanice: {LTBLUE}{STRING} diff --git a/src/lang/slovenian.txt b/src/lang/slovenian.txt -index 6e38e90b06e..05972541b46 100644 +index 6e38e90b06..05972541b4 100644 --- a/src/lang/slovenian.txt +++ b/src/lang/slovenian.txt @@ -2723,7 +2723,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Lastnik @@ -1127,7 +1127,7 @@ index 6e38e90b06e..05972541b46 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Razred postaje: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Vrsta postaje: {LTBLUE}{STRING} diff --git a/src/lang/spanish.txt b/src/lang/spanish.txt -index 97cac76def8..0568fc91bf9 100644 +index 97cac76def..0568fc91bf 100644 --- a/src/lang/spanish.txt +++ b/src/lang/spanish.txt @@ -2584,7 +2584,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propieta @@ -1140,7 +1140,7 @@ index 97cac76def8..0568fc91bf9 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Clase de estación: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo de estación: {LTBLUE}{STRING} diff --git a/src/lang/spanish_MX.txt b/src/lang/spanish_MX.txt -index d6da66d53a0..e8e39a87c46 100644 +index d6da66d53a..e8e39a87c4 100644 --- a/src/lang/spanish_MX.txt +++ b/src/lang/spanish_MX.txt @@ -2616,7 +2616,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Propieta @@ -1153,7 +1153,7 @@ index d6da66d53a0..e8e39a87c46 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Clase de estación: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Tipo de estación: {LTBLUE}{STRING} diff --git a/src/lang/swedish.txt b/src/lang/swedish.txt -index 6f09523d61c..aa9e56d9485 100644 +index 6f09523d61..aa9e56d948 100644 --- a/src/lang/swedish.txt +++ b/src/lang/swedish.txt @@ -2601,7 +2601,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Spårvä @@ -1166,7 +1166,7 @@ index 6f09523d61c..aa9e56d9485 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Stationsklass: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Stationstyp: {LTBLUE}{STRING} diff --git a/src/lang/tamil.txt b/src/lang/tamil.txt -index 71c62c6f639..1860709ad52 100644 +index 71c62c6f63..1860709ad5 100644 --- a/src/lang/tamil.txt +++ b/src/lang/tamil.txt @@ -2263,7 +2263,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}ட் @@ -1179,7 +1179,7 @@ index 71c62c6f639..1860709ad52 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}நிலையத்தின் பிரிவு: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}நிலையத்தின் வகை: {LTBLUE}{STRING} diff --git a/src/lang/thai.txt b/src/lang/thai.txt -index 20ddb974bce..14816206e7f 100644 +index 20ddb974bc..14816206e7 100644 --- a/src/lang/thai.txt +++ b/src/lang/thai.txt @@ -2518,7 +2518,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}ผู @@ -1192,7 +1192,7 @@ index 20ddb974bce..14816206e7f 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}ประเภทของสถานี: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}รูปแบบของสถานี: {LTBLUE}{STRING} diff --git a/src/lang/traditional_chinese.txt b/src/lang/traditional_chinese.txt -index db3238b709a..e0c5ae30d85 100644 +index db3238b709..e0c5ae30d8 100644 --- a/src/lang/traditional_chinese.txt +++ b/src/lang/traditional_chinese.txt @@ -2569,7 +2569,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}電車 @@ -1205,7 +1205,7 @@ index db3238b709a..e0c5ae30d85 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}車站風格:{LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}車站種類:{LTBLUE}{STRING} diff --git a/src/lang/turkish.txt b/src/lang/turkish.txt -index 8e6e5196aad..aaf1f6f93cf 100644 +index 8e6e5196aa..aaf1f6f93c 100644 --- a/src/lang/turkish.txt +++ b/src/lang/turkish.txt @@ -2598,7 +2598,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Tramvay @@ -1218,7 +1218,7 @@ index 8e6e5196aad..aaf1f6f93cf 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}İstasyon sınıfı: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}İstasyon türü: {LTBLUE}{STRING} diff --git a/src/lang/ukrainian.txt b/src/lang/ukrainian.txt -index 32466276853..4bab3e0170f 100644 +index 3246627685..4bab3e0170 100644 --- a/src/lang/ukrainian.txt +++ b/src/lang/ukrainian.txt @@ -2739,7 +2739,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Влас @@ -1231,7 +1231,7 @@ index 32466276853..4bab3e0170f 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Клас станції: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Тип станції: {LTBLUE}{STRING} diff --git a/src/lang/unfinished/persian.txt b/src/lang/unfinished/persian.txt -index de218abc8f1..acb534b4ba7 100644 +index de218abc8f..acb534b4ba 100644 --- a/src/lang/unfinished/persian.txt +++ b/src/lang/unfinished/persian.txt @@ -2273,7 +2273,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}مالک @@ -1244,7 +1244,7 @@ index de218abc8f1..acb534b4ba7 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}کلاس ایستگاه: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}نوع ایستگاه: {LTBLUE}{STRING} diff --git a/src/lang/vietnamese.txt b/src/lang/vietnamese.txt -index 8bd361273d2..357d8eb8ec6 100644 +index 8bd361273d..357d8eb8ec 100644 --- a/src/lang/vietnamese.txt +++ b/src/lang/vietnamese.txt @@ -2586,7 +2586,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Chủ đ @@ -1257,7 +1257,7 @@ index 8bd361273d2..357d8eb8ec6 100644 STR_LAND_AREA_INFORMATION_STATION_CLASS :{BLACK}Loại ga,bến: {LTBLUE}{STRING} STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Kiểu ga,bến: {LTBLUE}{STRING} diff --git a/src/lang/welsh.txt b/src/lang/welsh.txt -index 36fc85a62d7..aaf5e4d40f0 100644 +index 36fc85a62d..aaf5e4d40f 100644 --- a/src/lang/welsh.txt +++ b/src/lang/welsh.txt @@ -2572,7 +2572,7 @@ STR_LAND_AREA_INFORMATION_TRAM_OWNER :{BLACK}Perchenn @@ -1271,7 +1271,7 @@ index 36fc85a62d7..aaf5e4d40f0 100644 STR_LAND_AREA_INFORMATION_STATION_TYPE :{BLACK}Math gorsaf: {LTBLUE}{STRING} diff --git a/src/layer.cpp b/src/layer.cpp new file mode 100644 -index 00000000000..6ed117c03cf +index 0000000000..6ed117c03c --- /dev/null +++ b/src/layer.cpp @@ -0,0 +1,136 @@ @@ -1413,7 +1413,7 @@ index 00000000000..6ed117c03cf +} diff --git a/src/layer_func.h b/src/layer_func.h new file mode 100644 -index 00000000000..05022163a2d +index 0000000000..05022163a2 --- /dev/null +++ b/src/layer_func.h @@ -0,0 +1,102 @@ @@ -1521,7 +1521,7 @@ index 00000000000..05022163a2d +#endif /* LAYER_FUNC_H */ diff --git a/src/layer_gui.h b/src/layer_gui.h new file mode 100644 -index 00000000000..303fa32a3aa +index 0000000000..303fa32a3a --- /dev/null +++ b/src/layer_gui.h @@ -0,0 +1,17 @@ @@ -1544,7 +1544,7 @@ index 00000000000..303fa32a3aa +#endif /* LAYER_GUI_H */ diff --git a/src/layer_type.h b/src/layer_type.h new file mode 100644 -index 00000000000..53eafdde639 +index 0000000000..53eafdde63 --- /dev/null +++ b/src/layer_type.h @@ -0,0 +1,22 @@ @@ -1571,7 +1571,7 @@ index 00000000000..53eafdde639 + +#endif /* LAYER_TYPE_H */ diff --git a/src/main_gui.cpp b/src/main_gui.cpp -index b6cf616d173..31a769f5a3d 100644 +index b6cf616d17..31a769f5a3 100644 --- a/src/main_gui.cpp +++ b/src/main_gui.cpp @@ -33,6 +33,9 @@ @@ -1630,7 +1630,7 @@ index b6cf616d173..31a769f5a3d 100644 } diff --git a/src/map.cpp b/src/map.cpp -index 53e26ed73ef..c45ac1b0ff6 100644 +index 53e26ed73e..c45ac1b0ff 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -13,6 +13,7 @@ @@ -1670,7 +1670,7 @@ index 53e26ed73ef..c45ac1b0ff6 100644 } else { return CircularTileSearch(tile, size / 2, 0, 0, proc, user_data); diff --git a/src/map_func.h b/src/map_func.h -index 21d69b13823..b0a59eb1487 100644 +index 21d69b1382..b0a59eb148 100644 --- a/src/map_func.h +++ b/src/map_func.h @@ -43,7 +43,7 @@ extern Tile *_m; @@ -1757,7 +1757,7 @@ index 21d69b13823..b0a59eb1487 100644 diff --git a/src/misc.cpp b/src/misc.cpp -index 3d09f26f26e..251ea4990d5 100644 +index 3d09f26f26..251ea4990d 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -10,6 +10,7 @@ @@ -1778,7 +1778,7 @@ index 3d09f26f26e..251ea4990d5 100644 _pause_mode = PM_UNPAUSED; _fast_forward = 0; diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp -index 353972d4893..3d0c029a2e6 100644 +index 353972d489..3d0c029a2e 100644 --- a/src/misc_gui.cpp +++ b/src/misc_gui.cpp @@ -217,10 +217,11 @@ public: @@ -1797,7 +1797,7 @@ index 353972d4893..3d0c029a2e6 100644 line_nr++; diff --git a/src/rail.h b/src/rail.h -index 8619bac6d91..c22b1d2cbc8 100644 +index 8619bac6d9..c22b1d2cbc 100644 --- a/src/rail.h +++ b/src/rail.h @@ -160,7 +160,7 @@ public: @@ -1810,7 +1810,7 @@ index 8619bac6d91..c22b1d2cbc8 100644 CursorID rail_swne; ///< Cursor for building rail in X direction CursorID rail_ew; ///< Cursor for building rail in E-W direction diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp -index 1a4728c6c30..0181644b52a 100644 +index 1a4728c6c3..0181644b52 100644 --- a/src/rail_cmd.cpp +++ b/src/rail_cmd.cpp @@ -535,12 +535,12 @@ CommandCost CmdBuildSingleRail(TileIndex tile, DoCommandFlag flags, uint32 p1, u @@ -1912,7 +1912,7 @@ index 1a4728c6c30..0181644b52a 100644 } diff --git a/src/road_cmd.cpp b/src/road_cmd.cpp -index 4f5519c31ec..b88f621375c 100644 +index 4f5519c31e..b88f621375 100644 --- a/src/road_cmd.cpp +++ b/src/road_cmd.cpp @@ -407,7 +407,7 @@ static CommandCost RemoveRoad(TileIndex tile, DoCommandFlag flags, RoadBits piec @@ -1943,7 +1943,7 @@ index 4f5519c31ec..b88f621375c 100644 } diff --git a/src/saveload/map_sl.cpp b/src/saveload/map_sl.cpp -index a857d5b15a6..892eba93bfa 100644 +index a857d5b15a..892eba93bf 100644 --- a/src/saveload/map_sl.cpp +++ b/src/saveload/map_sl.cpp @@ -11,6 +11,7 @@ @@ -1984,7 +1984,7 @@ index a857d5b15a6..892eba93bfa 100644 static void Check_MAPS() diff --git a/src/script/api/script_window.hpp b/src/script/api/script_window.hpp -index 902b19244a8..96a4d017898 100644 +index 902b19244a..96a4d01789 100644 --- a/src/script/api/script_window.hpp +++ b/src/script/api/script_window.hpp @@ -1330,6 +1330,7 @@ public: @@ -2004,7 +2004,7 @@ index 902b19244a8..96a4d017898 100644 WID_CS_START_DATE_TEXT = ::WID_CS_START_DATE_TEXT, ///< Clickable start date value. WID_CS_START_DATE_UP = ::WID_CS_START_DATE_UP, ///< Increase start year (start later). diff --git a/src/settings.cpp b/src/settings.cpp -index 88cd95b7104..76debc56a40 100644 +index 88cd95b710..76debc56a4 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -32,6 +32,7 @@ @@ -2016,7 +2016,7 @@ index 88cd95b7104..76debc56a40 100644 #include "train.h" #include "news_func.h" diff --git a/src/settings_type.h b/src/settings_type.h -index 9315cdd968c..0fb72eb2192 100644 +index 9315cdd968..0fb72eb219 100644 --- a/src/settings_type.h +++ b/src/settings_type.h @@ -148,6 +148,8 @@ struct GUISettings { @@ -2037,7 +2037,7 @@ index 9315cdd968c..0fb72eb2192 100644 byte oil_refinery_limit; ///< distance oil refineries allowed from map edge byte snow_line_height; ///< the configured snow line height diff --git a/src/station.cpp b/src/station.cpp -index 1d2eea4ca61..eaa9f1b964e 100644 +index 1d2eea4ca6..eaa9f1b964 100644 --- a/src/station.cpp +++ b/src/station.cpp @@ -13,6 +13,7 @@ @@ -2133,7 +2133,7 @@ index 1d2eea4ca61..eaa9f1b964e 100644 bool empty = this->AfterRemoveTile(st, ta.tile); if (ta.w != 1 || ta.h != 1) empty = empty || this->AfterRemoveTile(st, TILE_ADDXY(ta.tile, ta.w - 1, ta.h - 1)); diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp -index 546aecc2693..a59d80a3a9e 100644 +index 546aecc269..a59d80a3a9 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -13,6 +13,7 @@ @@ -2341,7 +2341,7 @@ index 546aecc2693..a59d80a3a9e 100644 AirportTileTableIterator iter(as->table[layout], tile); CommandCost cost = CheckFlatLandAirport(iter, flags); diff --git a/src/station_gui.cpp b/src/station_gui.cpp -index 2bee2d80fbf..5a956c6c834 100644 +index 2bee2d80fb..5a956c6c83 100644 --- a/src/station_gui.cpp +++ b/src/station_gui.cpp @@ -21,6 +21,7 @@ @@ -2401,7 +2401,7 @@ index 2bee2d80fbf..5a956c6c834 100644 return nullptr; } diff --git a/src/table/settings.ini b/src/table/settings.ini -index 800d6f79c18..33fc0fda93a 100644 +index 800d6f79c1..33fc0fda93 100644 --- a/src/table/settings.ini +++ b/src/table/settings.ini @@ -1876,6 +1876,15 @@ min = 500 @@ -2437,7 +2437,7 @@ index 800d6f79c18..33fc0fda93a 100644 [SDTC_BOOL] ifdef = DEDICATED diff --git a/src/terraform_cmd.cpp b/src/terraform_cmd.cpp -index eb6ec2b530e..8dd16dce11b 100644 +index eb6ec2b530..8dd16dce11 100644 --- a/src/terraform_cmd.cpp +++ b/src/terraform_cmd.cpp @@ -10,6 +10,7 @@ @@ -2460,7 +2460,7 @@ index eb6ec2b530e..8dd16dce11b 100644 if (IsBridgeAbove(tile)) { int bridge_height = GetBridgeHeight(GetSouthernBridgeEnd(tile)); diff --git a/src/tgp.cpp b/src/tgp.cpp -index 3fd42e0fdb9..433dd7cb758 100644 +index 3fd42e0fdb..433dd7cb75 100644 --- a/src/tgp.cpp +++ b/src/tgp.cpp @@ -14,6 +14,7 @@ @@ -2506,7 +2506,7 @@ index 3fd42e0fdb9..433dd7cb758 100644 int max_height = H2I(TGPGetMaxHeight()); diff --git a/src/tile_map.h b/src/tile_map.h -index 0cb28122d8f..c6f62dac0f1 100644 +index 0cb28122d8..c6f62dac0f 100644 --- a/src/tile_map.h +++ b/src/tile_map.h @@ -16,6 +16,7 @@ @@ -2541,7 +2541,7 @@ index 0cb28122d8f..c6f62dac0f1 100644 } diff --git a/src/tilearea_type.h b/src/tilearea_type.h -index c599753498a..869ff3e09ab 100644 +index c599753498..869ff3e09a 100644 --- a/src/tilearea_type.h +++ b/src/tilearea_type.h @@ -44,6 +44,16 @@ struct OrthogonalTileArea { @@ -2562,7 +2562,7 @@ index c599753498a..869ff3e09ab 100644 bool Contains(TileIndex tile) const; diff --git a/src/toolbar_gui.cpp b/src/toolbar_gui.cpp -index 23c10fb7273..b2c7ee31bd9 100644 +index 23c10fb727..b2c7ee31bd 100644 --- a/src/toolbar_gui.cpp +++ b/src/toolbar_gui.cpp @@ -13,7 +13,10 @@ @@ -2749,7 +2749,7 @@ index 23c10fb7273..b2c7ee31bd9 100644 SPR_IMG_MESSAGES, // WID_TN_MESSAGES SPR_IMG_QUERY, // WID_TN_HELP diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp -index 65032c1fb2d..635243bf546 100644 +index 65032c1fb2..635243bf54 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -14,6 +14,7 @@ @@ -2780,7 +2780,7 @@ index 65032c1fb2d..635243bf546 100644 } return CommandCost(); diff --git a/src/tree_cmd.cpp b/src/tree_cmd.cpp -index e982abfb28a..a8283b8da8c 100644 +index e982abfb28..a8283b8da8 100644 --- a/src/tree_cmd.cpp +++ b/src/tree_cmd.cpp @@ -13,6 +13,7 @@ @@ -2813,7 +2813,7 @@ index e982abfb28a..a8283b8da8c 100644 if (tree_to_plant != TREE_INVALID && !IsInsideBS(tree_to_plant, _tree_base_by_landscape[_settings_game.game_creation.landscape], _tree_count_by_landscape[_settings_game.game_creation.landscape])) return CMD_ERROR; diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp -index fce0855d258..b31a25e5971 100644 +index fce0855d25..b31a25e597 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -15,6 +15,7 @@ @@ -2850,7 +2850,7 @@ index fce0855d258..b31a25e5971 100644 if (start_z == end_z) break; diff --git a/src/underground_gui.cpp b/src/underground_gui.cpp new file mode 100644 -index 00000000000..406bd8cb7d1 +index 0000000000..406bd8cb7d --- /dev/null +++ b/src/underground_gui.cpp @@ -0,0 +1,321 @@ @@ -3177,7 +3177,7 @@ index 00000000000..406bd8cb7d1 +} diff --git a/src/underground_gui.h b/src/underground_gui.h new file mode 100644 -index 00000000000..81b119545ec +index 0000000000..81b119545e --- /dev/null +++ b/src/underground_gui.h @@ -0,0 +1,19 @@ @@ -3201,7 +3201,7 @@ index 00000000000..81b119545ec + +#endif /* UNDERGROUND_GUI_H */ diff --git a/src/vehicle.cpp b/src/vehicle.cpp -index 6e26c7bfe8d..1c1bf10adb6 100644 +index 6e26c7bfe8..1c1bf10adb 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -15,6 +15,7 @@ @@ -3221,7 +3221,7 @@ index 6e26c7bfe8d..1c1bf10adb6 100644 l <= v->coord.right && t <= v->coord.bottom && diff --git a/src/viewport.cpp b/src/viewport.cpp -index 534de090b54..a954d02bf91 100644 +index 534de090b5..a954d02bf9 100644 --- a/src/viewport.cpp +++ b/src/viewport.cpp @@ -64,6 +64,8 @@ @@ -3289,7 +3289,7 @@ index 534de090b54..a954d02bf91 100644 ViewportAddVehicles(&_vd.dpi); diff --git a/src/viewport_func.h b/src/viewport_func.h -index 8b23cc02a94..e4469ace383 100644 +index 8b23cc02a9..e4469ace38 100644 --- a/src/viewport_func.h +++ b/src/viewport_func.h @@ -33,6 +33,7 @@ void MarkAllViewportsDirty(int left, int top, int right, int bottom); @@ -3301,7 +3301,7 @@ index 8b23cc02a94..e4469ace383 100644 void FixTitleGameZoom(); void HandleZoomMessage(Window *w, const ViewPort *vp, byte widget_zoom_in, byte widget_zoom_out); diff --git a/src/viewport_gui.cpp b/src/viewport_gui.cpp -index 85b278b2a79..8e03178ffc1 100644 +index 85b278b2a7..8e03178ffc 100644 --- a/src/viewport_gui.cpp +++ b/src/viewport_gui.cpp @@ -16,6 +16,7 @@ @@ -3326,7 +3326,7 @@ index 85b278b2a79..8e03178ffc1 100644 } diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp -index 7091f9f2d44..84b5e4ef09a 100644 +index 7091f9f2d4..84b5e4ef09 100644 --- a/src/water_cmd.cpp +++ b/src/water_cmd.cpp @@ -12,6 +12,7 @@ @@ -3369,7 +3369,7 @@ index 7091f9f2d44..84b5e4ef09a 100644 * and make shore, as that looks much better * during the generation. */ diff --git a/src/widgets/genworld_widget.h b/src/widgets/genworld_widget.h -index 877efbb9211..9766a064004 100644 +index 877efbb921..9766a06400 100644 --- a/src/widgets/genworld_widget.h +++ b/src/widgets/genworld_widget.h @@ -21,6 +21,7 @@ enum GenerateLandscapeWidgets { @@ -3389,7 +3389,7 @@ index 877efbb9211..9766a064004 100644 WID_CS_START_DATE_TEXT, ///< Clickable start date value. WID_CS_START_DATE_UP, ///< Increase start year (start later). diff --git a/src/widgets/toolbar_widget.h b/src/widgets/toolbar_widget.h -index 5b9d1e1568f..8a865ab6d6c 100644 +index 5b9d1e1568..8a865ab6d6 100644 --- a/src/widgets/toolbar_widget.h +++ b/src/widgets/toolbar_widget.h @@ -43,6 +43,7 @@ enum ToolbarNormalWidgets { @@ -3402,7 +3402,7 @@ index 5b9d1e1568f..8a865ab6d6c 100644 WID_TN_HELP, ///< Help menu. diff --git a/src/widgets/underground_widget.h b/src/widgets/underground_widget.h new file mode 100644 -index 00000000000..522c9db8bf2 +index 0000000000..522c9db8bf --- /dev/null +++ b/src/widgets/underground_widget.h @@ -0,0 +1,21 @@ @@ -3428,7 +3428,7 @@ index 00000000000..522c9db8bf2 + +#endif /* WIDGETS_UNDERGROUND_WIDGET_H */ diff --git a/src/window_type.h b/src/window_type.h -index 7185bfcb4f1..85f54f07602 100644 +index 7185bfcb4f..85f54f0760 100644 --- a/src/window_type.h +++ b/src/window_type.h @@ -443,6 +443,12 @@ enum WindowClass { -- cgit v1.2.3-70-g09d2