(svn r11005) -Codechange: move the tiletype specific terraforming checks to the functions for those tile types.

-Codechange: barren the rail grounds on terraforming.
This commit is contained in:
rubidium
2007-08-30 17:17:04 +00:00
parent 9b65bc430c
commit b284b5fa92
12 changed files with 161 additions and 80 deletions

View File

@@ -802,6 +802,14 @@ static uint32 VehicleEnter_Water(Vehicle *v, TileIndex tile, int x, int y)
return VETSB_CONTINUE;
}
static CommandCost TerraformTile_Water(TileIndex tile, uint32 flags, uint z_new, Slope tileh_new)
{
/* Canals can't be terraformed */
if (IsClearWaterTile(tile) && IsCanal(tile)) return_cmd_error(STR_MUST_DEMOLISH_CANAL_FIRST);
return DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR);
}
extern const TileTypeProcs _tile_type_water_procs = {
DrawTile_Water, /* draw_tile_proc */
@@ -817,4 +825,5 @@ extern const TileTypeProcs _tile_type_water_procs = {
NULL, /* get_produced_cargo_proc */
VehicleEnter_Water, /* vehicle_enter_tile_proc */
GetFoundation_Water, /* get_foundation_proc */
TerraformTile_Water, /* terraform_tile_proc */
};