436 if (flags & DC_EXEC) { |
436 if (flags & DC_EXEC) { |
437 MakeOwnedLand(tile, _current_player); |
437 MakeOwnedLand(tile, _current_player); |
438 MarkTileDirtyByTile(tile); |
438 MarkTileDirtyByTile(tile); |
439 } |
439 } |
440 |
440 |
441 return cost.AddCost(_price.purchase_land * 10); |
441 return cost.AddCost(_price.clear_roughland * 10); |
442 } |
442 } |
443 |
443 |
444 |
444 |
445 static CommandCost ClearTile_Clear(TileIndex tile, byte flags) |
445 static CommandCost ClearTile_Clear(TileIndex tile, byte flags) |
446 { |
446 { |
447 static const Money* clear_price_table[] = { |
447 static const Money* clear_price_table[] = { |
448 &_price.clear_1, |
448 &_price.clear_grass, |
449 &_price.purchase_land, |
449 &_price.clear_roughland, |
450 &_price.clear_2, |
450 &_price.clear_rocks, |
451 &_price.clear_3, |
451 &_price.clear_fields, |
452 &_price.purchase_land, |
452 &_price.clear_roughland, |
453 &_price.purchase_land, |
453 &_price.clear_roughland, |
454 &_price.clear_2, // XXX unused? |
|
455 }; |
454 }; |
456 CommandCost price; |
455 CommandCost price; |
457 |
456 |
458 if (!IsClearGround(tile, CLEAR_GRASS) || GetClearDensity(tile) != 0) { |
457 if (!IsClearGround(tile, CLEAR_GRASS) || GetClearDensity(tile) != 0) { |
459 price.AddCost(*clear_price_table[GetClearGround(tile)]); |
458 price.AddCost(*clear_price_table[GetClearGround(tile)]); |