(svn r20640) -Add: support for water under objects

pull/155/head
rubidium 14 years ago
parent a126dc7500
commit b79c5b5f84

@ -19,6 +19,7 @@
#include "genworld.h"
#include "autoslope.h"
#include "functions.h"
#include "water.h"
#include "window_func.h"
#include "company_gui.h"
#include "cheat_type.h"
@ -316,7 +317,7 @@ static CommandCost ClearTile_Object(TileIndex tile, DoCommandFlag flags)
}
if (flags & DC_EXEC) {
TILE_AREA_LOOP(tile_cur, ta) DoClearSquare(tile_cur);
TILE_AREA_LOOP(tile_cur, ta) MakeWaterKeepingClass(tile_cur, GetTileOwner(tile_cur));
delete o;
}
@ -356,6 +357,8 @@ static void GetTileDesc_Object(TileIndex tile, TileDesc *td)
static void TileLoop_Object(TileIndex tile)
{
if (IsTileOnWater(tile)) TileLoop_Water(tile);
if (!IsCompanyHQ(tile)) return;
/* HQ accepts passenger and mail; but we have to divide the values

@ -499,6 +499,8 @@ static bool IsWateredTile(TileIndex tile, Direction from)
return IsTileOnWater(tile);
}
case MP_OBJECT: return IsTileOnWater(tile);
case MP_TUNNELBRIDGE: return GetTunnelBridgeTransportType(tile) == TRANSPORT_WATER && ReverseDiagDir(GetTunnelBridgeDirection(tile)) == DirToDiagDir(from);
default: return false;
@ -935,6 +937,7 @@ FloodingBehaviour GetFloodingBehaviour(TileIndex tile)
/* FALL THROUGH */
case MP_STATION:
case MP_INDUSTRY:
case MP_OBJECT:
return (GetWaterClass(tile) == WATER_CLASS_SEA) ? FLOOD_ACTIVE : FLOOD_NONE;
case MP_RAILWAY:

Loading…
Cancel
Save