From c6743c5e114eadce5f88c95c261ad7a11e9d94ad Mon Sep 17 00:00:00 2001 From: tron Date: Sun, 18 Feb 2007 08:37:39 +0000 Subject: (svn r8794) -Fix Remove the possiblity to take over stations with OWNER_NONE by building a station next to it -Fix: It was possible to take over buoys by building a station next to them Also remove the now unnecessary special case which prevented taking over oilrigs NOTE: 0.5 candidate --- src/station_cmd.cpp | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index c49108882..a13edd7a5 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -129,12 +129,6 @@ static Station* GetStationAround(TileIndex tile, int w, int h, StationID closest BEGIN_TILE_LOOP(tile_cur, w + 2, h + 2, tile - TileDiffXY(1, 1)) if (IsTileType(tile_cur, MP_STATION)) { StationID t = GetStationIndex(tile_cur); - { - Station *st = GetStation(t); - // you cannot take control of an oilrig!! - if (st->airport_type == AT_OILRIG && st->facilities == (FACIL_AIRPORT|FACIL_DOCK)) - continue; - } if (closest_station == INVALID_STATION) { closest_station = t; @@ -910,7 +904,7 @@ int32 CmdBuildRailroadStation(TileIndex tile_org, uint32 flags, uint32 p1, uint3 if (st != NULL) { // Reuse an existing station. - if (st->owner != OWNER_NONE && st->owner != _current_player) + if (st->owner != _current_player) return_cmd_error(STR_3009_TOO_CLOSE_TO_ANOTHER_STATION); if (st->train_tile != 0) { @@ -1293,7 +1287,7 @@ int32 CmdBuildRoadStop(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) AutoPtrT st_auto_delete; if (st != NULL) { - if (st->owner != OWNER_NONE && st->owner != _current_player) { + if (st->owner != _current_player) { return_cmd_error(STR_3009_TOO_CLOSE_TO_ANOTHER_STATION); } @@ -1585,7 +1579,7 @@ int32 CmdBuildAirport(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) AutoPtrT st_auto_delete; if (st != NULL) { - if (st->owner != OWNER_NONE && st->owner != _current_player) + if (st->owner != _current_player) return_cmd_error(STR_3009_TOO_CLOSE_TO_ANOTHER_STATION); if (!st->rect.BeforeAddRect(tile, w, h, StationRect::ADD_TEST)) return CMD_ERROR; @@ -1872,7 +1866,7 @@ int32 CmdBuildDock(TileIndex tile, uint32 flags, uint32 p1, uint32 p2) AutoPtrT st_auto_delete; if (st != NULL) { - if (st->owner != OWNER_NONE && st->owner != _current_player) + if (st->owner != _current_player) return_cmd_error(STR_3009_TOO_CLOSE_TO_ANOTHER_STATION); if (!st->rect.BeforeAddRect(tile, _dock_w_chk[direction], _dock_h_chk[direction], StationRect::ADD_TEST)) return CMD_ERROR; -- cgit v1.2.3-70-g09d2