Loading

Paste #pzbhgrhma

  1.             case MP_STATION:
  2.                 c = Company::GetIfValid(GetTileOwner(tile));
  3.                 if (c != NULL && GetStationType(tile) != STATION_AIRPORT && !IsBuoy(tile) && !IsDock(tile)) c->infrastructure.station++;
  4.  
  5.                 switch (GetStationType(tile)) {
  6.                     case STATION_RAIL:
  7.                     case STATION_WAYPOINT:
  8.                         if (c != NULL && !IsStationTileBlocked(tile)) c->infrastructure.rail[GetRailType(tile)]++;
  9.                         break;
  10.  
  11.                     case STATION_BUS:
  12.                     case STATION_TRUCK: {
  13.                         /* Iterate all present road types as each can have a different owner. */
  14.                         RoadType rt;
  15.                         FOR_EACH_SET_ROADTYPE(rt, GetRoadTypes(tile)) {
  16.                             c = Company::GetIfValid(GetRoadOwner(tile, rt));
  17.                             if (c != NULL) c->infrastructure.road[rt] += 2; // A road stop has two road bits.
  18.                         }
  19.                         break;
  20.                     }
  21.  
  22.                     case STATION_DOCK:
  23.                         if (IsDockTile(tile) && !HasTileWaterGround(tile)) {
  24.                             if (c != NULL) c->infrastructure.station += 2;
  25.                         }
  26.                         /* FALL THROUGH */
  27.  
  28.                     case STATION_BUOY:
  29.                         if (GetWaterClass(tile) == WATER_CLASS_CANAL) {
  30.                             if (c != NULL) c->infrastructure.water++;
  31.                         }
  32.                         break;
  33.  
  34.                     default:
  35.                         break;
  36.                 }
  37.                 break;

Comments