Loading

Paste #pqeuk1r9b

  1. Index: src/water_cmd.cpp
  2. ===================================================================
  3. --- src/water_cmd.cpp   (revision 27196)
  4. +++ src/water_cmd.cpp   (working copy)
  5. @@ -419,6 +419,7 @@
  6.         if (IsTileType(tile, MP_WATER) && (!IsTileOwner(tile, OWNER_WATER) || wc == WATER_CLASS_SEA)) continue;
  7.  
  8.         bool water = IsWaterTile(tile);
  9. +       bool river = HasTileWaterClass(tile) && GetWaterClass(tile) == WATER_CLASS_RIVER;
  10.         ret = DoCommand(tile, 0, 0, flags | DC_FORCE_CLEAR_TILE, CMD_LANDSCAPE_CLEAR);
  11.         if (ret.Failed()) return ret;
  12.  
  13. @@ -442,6 +443,7 @@
  14.                     /* FALL THROUGH */
  15.  
  16.                 default:
  17. +                   if (river) SB(_me[tile].m6, 0, 0, 1);
  18.                     MakeCanal(tile, _current_company, Random());
  19.                     if (Company::IsValidID(_current_company)) {
  20.                         Company::Get(_current_company)->infrastructure.water++;
  21. @@ -485,7 +487,7 @@
  22.                 CommandCost ret = CheckTileOwnership(tile);
  23.                 if (ret.Failed()) return ret;
  24.             }
  25. -
  26. +           bool river = HasBit(_me[tile].m6, 0);
  27.             if (flags & DC_EXEC) {
  28.                 if (IsCanal(tile) && Company::IsValidID(owner)) {
  29.                     Company::Get(owner)->infrastructure.water--;
  30. @@ -492,9 +494,9 @@
  31.                     DirtyCompanyInfrastructureWindows(owner);
  32.                 }
  33.                 DoClearSquare(tile);
  34. +               if (river) MakeRiver(tile, Random());
  35.                 MarkCanalsAndRiversAroundDirty(tile);
  36.             }
  37. -
  38.             return CommandCost(EXPENSES_CONSTRUCTION, base_cost);
  39.         }

Version history

Revision # Author Created at
pg4tog6je Anonymous 18 Mar 2015, 19:06:18 UTC Diff

Comments