summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ai/default/default.cpp5
-rw-r--r--src/ai/trolly/build.cpp5
-rw-r--r--src/ai/trolly/trolly.cpp2
-rw-r--r--src/aircraft.h1
-rw-r--r--src/aircraft_cmd.cpp1
-rw-r--r--src/airport_gui.cpp1
-rw-r--r--src/build_vehicle_gui.cpp1
-rw-r--r--src/cargopacket.cpp2
-rw-r--r--src/cargopacket.h1
-rw-r--r--src/disaster_cmd.cpp2
-rw-r--r--src/economy.cpp1
-rw-r--r--src/industry_cmd.cpp1
-rw-r--r--src/misc_gui.cpp2
-rw-r--r--src/network/network_server.cpp2
-rw-r--r--src/newgrf.cpp1
-rw-r--r--src/newgrf.h2
-rw-r--r--src/newgrf_engine.cpp2
-rw-r--r--src/newgrf_station.cpp2
-rw-r--r--src/newgrf_station.h3
-rw-r--r--src/npf.cpp2
-rw-r--r--src/npf.h4
-rw-r--r--src/oldloader.cpp1
-rw-r--r--src/openttd.cpp1
-rw-r--r--src/order_cmd.cpp1
-rw-r--r--src/order_gui.cpp2
-rw-r--r--src/players.cpp2
-rw-r--r--src/rail_cmd.cpp1
-rw-r--r--src/rail_gui.cpp2
-rw-r--r--src/road_gui.cpp19
-rw-r--r--src/road_map.cpp1
-rw-r--r--src/roadveh_cmd.cpp8
-rw-r--r--src/saveload.cpp2
-rw-r--r--src/settings_gui.cpp1
-rw-r--r--src/ship_cmd.cpp2
-rw-r--r--src/station.cpp4
-rw-r--r--src/station_base.h (renamed from src/station.h)52
-rw-r--r--src/station_cmd.cpp19
-rw-r--r--src/station_func.h43
-rw-r--r--src/station_gui.cpp4
-rw-r--r--src/station_map.h16
-rw-r--r--src/station_type.h6
-rw-r--r--src/strings.cpp2
-rw-r--r--src/subsidy_gui.cpp2
-rw-r--r--src/town_cmd.cpp2
-rw-r--r--src/train_cmd.cpp2
-rw-r--r--src/unmovable_cmd.cpp1
-rw-r--r--src/vehicle.cpp1
-rw-r--r--src/vehicle_gui.cpp1
-rw-r--r--src/viewport.cpp3
-rw-r--r--src/water_cmd.cpp2
-rw-r--r--src/waypoint.cpp2
-rw-r--r--src/yapf/yapf.h1
-rw-r--r--src/yapf/yapf.hpp2
53 files changed, 130 insertions, 121 deletions
diff --git a/src/ai/default/default.cpp b/src/ai/default/default.cpp
index 4708e5f55..62829b4e0 100644
--- a/src/ai/default/default.cpp
+++ b/src/ai/default/default.cpp
@@ -15,7 +15,6 @@
#include "../../command_func.h"
#include "../../town.h"
#include "../../industry.h"
-#include "../../station.h"
#include "../../pathfind.h"
#include "../../airport.h"
#include "../../depot.h"
@@ -2690,10 +2689,10 @@ static CommandCost AiDoBuildDefaultRoadBlock(TileIndex tile, const AiDefaultBloc
} else if (p->mode == 1) {
if (_want_road_truck_station) {
// Truck station
- ret = DoCommand(c, p->attr, ROADTYPES_ROAD << 2 | RoadStop::TRUCK, flag | DC_AUTO | DC_NO_WATER | DC_AI_BUILDING, CMD_BUILD_ROAD_STOP);
+ ret = DoCommand(c, p->attr, ROADTYPES_ROAD << 2 | ROADSTOP_TRUCK, flag | DC_AUTO | DC_NO_WATER | DC_AI_BUILDING, CMD_BUILD_ROAD_STOP);
} else {
// Bus station
- ret = DoCommand(c, p->attr, ROADTYPES_ROAD << 2 | RoadStop::BUS, flag | DC_AUTO | DC_NO_WATER | DC_AI_BUILDING, CMD_BUILD_ROAD_STOP);
+ ret = DoCommand(c, p->attr, ROADTYPES_ROAD << 2 | ROADSTOP_BUS, flag | DC_AUTO | DC_NO_WATER | DC_AI_BUILDING, CMD_BUILD_ROAD_STOP);
}
clear_town_stuff:;
diff --git a/src/ai/trolly/build.cpp b/src/ai/trolly/build.cpp
index c6bf330e7..109b937aa 100644
--- a/src/ai/trolly/build.cpp
+++ b/src/ai/trolly/build.cpp
@@ -7,7 +7,6 @@
#include "../../command_func.h"
#include "trolly.h"
#include "../../engine.h"
-#include "../../station.h"
#include "../../variables.h"
#include "../../bridge.h"
#include "../../vehicle_func.h"
@@ -44,9 +43,9 @@ CommandCost AiNew_Build_Station(Player *p, byte type, TileIndex tile, byte lengt
return AI_DoCommand(tile, direction + (numtracks << 8) + (length << 16), 0, flag | DC_AUTO | DC_NO_WATER, CMD_BUILD_RAILROAD_STATION);
if (type == AI_BUS)
- return AI_DoCommand(tile, direction, ROADTYPES_ROAD << 2 | RoadStop::BUS, flag | DC_AUTO | DC_NO_WATER, CMD_BUILD_ROAD_STOP);
+ return AI_DoCommand(tile, direction, ROADTYPES_ROAD << 2 | ROADSTOP_BUS, flag | DC_AUTO | DC_NO_WATER, CMD_BUILD_ROAD_STOP);
- return AI_DoCommand(tile, direction, ROADTYPES_ROAD << 2 | RoadStop::TRUCK, flag | DC_AUTO | DC_NO_WATER, CMD_BUILD_ROAD_STOP);
+ return AI_DoCommand(tile, direction, ROADTYPES_ROAD << 2 | ROADSTOP_TRUCK, flag | DC_AUTO | DC_NO_WATER, CMD_BUILD_ROAD_STOP);
}
diff --git a/src/ai/trolly/trolly.cpp b/src/ai/trolly/trolly.cpp
index e06582e74..0d176dc14 100644
--- a/src/ai/trolly/trolly.cpp
+++ b/src/ai/trolly/trolly.cpp
@@ -26,7 +26,7 @@
#include "trolly.h"
#include "../../town.h"
#include "../../industry.h"
-#include "../../station.h"
+#include "../../station_base.h"
#include "../../engine.h"
#include "../../gui.h"
#include "../../depot.h"
diff --git a/src/aircraft.h b/src/aircraft.h
index 2aa05ace5..0012878b6 100644
--- a/src/aircraft.h
+++ b/src/aircraft.h
@@ -6,6 +6,7 @@
#define AIRCRAFT_H
#include "station_map.h"
+#include "station_base.h"
#include "vehicle_base.h"
#include "engine.h"
diff --git a/src/aircraft_cmd.cpp b/src/aircraft_cmd.cpp
index 9421c3b9a..22e04b0a0 100644
--- a/src/aircraft_cmd.cpp
+++ b/src/aircraft_cmd.cpp
@@ -12,7 +12,6 @@
#include "timetable.h"
#include "depot.h"
#include "engine.h"
-#include "station.h"
#include "news_func.h"
#include "aircraft.h"
#include "airport.h"
diff --git a/src/airport_gui.cpp b/src/airport_gui.cpp
index 595eaff8f..85c839c00 100644
--- a/src/airport_gui.cpp
+++ b/src/airport_gui.cpp
@@ -9,7 +9,6 @@
#include "station_gui.h"
#include "terraform_gui.h"
#include "command_func.h"
-#include "station.h"
#include "airport.h"
#include "depot.h"
#include "sound_func.h"
diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp
index 8772135eb..396c85587 100644
--- a/src/build_vehicle_gui.cpp
+++ b/src/build_vehicle_gui.cpp
@@ -12,7 +12,6 @@
#include "gui.h"
#include "articulated_vehicles.h"
#include "textbuf_gui.h"
-#include "station.h"
#include "command_func.h"
#include "engine.h"
#include "player_func.h"
diff --git a/src/cargopacket.cpp b/src/cargopacket.cpp
index e97ff866c..9d5f14b04 100644
--- a/src/cargopacket.cpp
+++ b/src/cargopacket.cpp
@@ -4,7 +4,7 @@
#include "stdafx.h"
#include "openttd.h"
-#include "station.h"
+#include "station_base.h"
#include "cargopacket.h"
#include "saveload.h"
diff --git a/src/cargopacket.h b/src/cargopacket.h
index 4b6397b62..cce9a4398 100644
--- a/src/cargopacket.h
+++ b/src/cargopacket.h
@@ -5,6 +5,7 @@
#ifndef CARGOPACKET_H
#define CARGOPACKET_H
+#include "oldpool.h"
#include "economy_type.h"
#include "tile_type.h"
#include "station_type.h"
diff --git a/src/disaster_cmd.cpp b/src/disaster_cmd.cpp
index 12d9f649d..0482edeaa 100644
--- a/src/disaster_cmd.cpp
+++ b/src/disaster_cmd.cpp
@@ -25,7 +25,7 @@
#include "command_func.h"
#include "tile_cmd.h"
#include "news_func.h"
-#include "station.h"
+#include "station_base.h"
#include "waypoint.h"
#include "town.h"
#include "industry.h"
diff --git a/src/economy.cpp b/src/economy.cpp
index 70f0d8849..9a7203af0 100644
--- a/src/economy.cpp
+++ b/src/economy.cpp
@@ -8,7 +8,6 @@
#include "landscape.h"
#include "player_base.h"
#include "player_func.h"
-#include "station.h"
#include "command_func.h"
#include "saveload.h"
#include "industry.h"
diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp
index 9dd1077ec..3886ddc0e 100644
--- a/src/industry_cmd.cpp
+++ b/src/industry_cmd.cpp
@@ -36,6 +36,7 @@
#include "date_func.h"
#include "vehicle_func.h"
#include "sound_func.h"
+#include "station_base.h"
#include "table/strings.h"
#include "table/sprites.h"
diff --git a/src/misc_gui.cpp b/src/misc_gui.cpp
index 375eb2701..b92501d3e 100644
--- a/src/misc_gui.cpp
+++ b/src/misc_gui.cpp
@@ -17,7 +17,7 @@
#include "textbuf_gui.h"
#include "viewport_func.h"
#include "gfx_func.h"
-#include "station.h"
+#include "station_func.h"
#include "command_func.h"
#include "player_func.h"
#include "player_base.h"
diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp
index 29b21fc47..51bc76233 100644
--- a/src/network/network_server.cpp
+++ b/src/network/network_server.cpp
@@ -16,7 +16,7 @@
#include "../console.h"
#include "../command_func.h"
#include "../saveload.h"
-#include "../station.h"
+#include "../station_base.h"
#include "../variables.h"
#include "../genworld.h"
#include "../core/alloc_func.hpp"
diff --git a/src/newgrf.cpp b/src/newgrf.cpp
index b267d3198..dde16e732 100644
--- a/src/newgrf.cpp
+++ b/src/newgrf.cpp
@@ -11,7 +11,6 @@
#include "fileio.h"
#include "engine.h"
#include "spritecache.h"
-#include "station.h"
#include "sprite.h"
#include "newgrf.h"
#include "variables.h"
diff --git a/src/newgrf.h b/src/newgrf.h
index adf43921c..b0e3b5c04 100644
--- a/src/newgrf.h
+++ b/src/newgrf.h
@@ -5,11 +5,11 @@
#ifndef NEWGRF_H
#define NEWGRF_H
-#include "station.h"
#include "town_type.h"
#include "newgrf_config.h"
#include "cargotype.h"
#include "industry_type.h"
+#include "newgrf_station.h"
enum GrfLoadingStage {
GLS_FILESCAN,
diff --git a/src/newgrf_engine.cpp b/src/newgrf_engine.cpp
index 9e7d154b9..d455552c9 100644
--- a/src/newgrf_engine.cpp
+++ b/src/newgrf_engine.cpp
@@ -10,7 +10,7 @@
#include "train.h"
#include "player_func.h"
#include "player_base.h"
-#include "station.h"
+#include "station_base.h"
#include "airport.h"
#include "newgrf.h"
#include "newgrf_callbacks.h"
diff --git a/src/newgrf_station.cpp b/src/newgrf_station.cpp
index 5162f6028..96654d90b 100644
--- a/src/newgrf_station.cpp
+++ b/src/newgrf_station.cpp
@@ -9,7 +9,7 @@
#include "landscape.h"
#include "debug.h"
#include "sprite.h"
-#include "station.h"
+#include "station_base.h"
#include "station_map.h"
#include "newgrf.h"
#include "newgrf_callbacks.h"
diff --git a/src/newgrf_station.h b/src/newgrf_station.h
index 1bd02818f..ff5d82ab0 100644
--- a/src/newgrf_station.h
+++ b/src/newgrf_station.h
@@ -9,7 +9,10 @@
#include "newgrf_callbacks.h"
#include "newgrf_cargo.h"
#include "tile_type.h"
+#include "station_type.h"
#include "strings_type.h"
+#include "sprite.h"
+#include "direction_type.h"
enum StationClassID {
STAT_CLASS_BEGIN = 0, ///< the lowest valid value
diff --git a/src/npf.cpp b/src/npf.cpp
index 14cebac9e..1432c9189 100644
--- a/src/npf.cpp
+++ b/src/npf.cpp
@@ -12,7 +12,7 @@
#include "landscape.h"
#include "aystar.h"
#include "pathfind.h"
-#include "station.h"
+#include "station_base.h"
#include "station_map.h"
#include "depot.h"
#include "tunnel_map.h"
diff --git a/src/npf.h b/src/npf.h
index 8448c30b5..ca4580d14 100644
--- a/src/npf.h
+++ b/src/npf.h
@@ -6,7 +6,9 @@
#define NPF_H
#include "aystar.h"
-#include "station.h"
+#include "station_type.h"
+#include "rail_type.h"
+#include "player_type.h"
#include "vehicle_type.h"
#include "tile_type.h"
#include "track_type.h"
diff --git a/src/oldloader.cpp b/src/oldloader.cpp
index 0c985c375..1d7008c17 100644
--- a/src/oldloader.cpp
+++ b/src/oldloader.cpp
@@ -7,7 +7,6 @@
#include "station_map.h"
#include "town.h"
#include "industry.h"
-#include "station.h"
#include "player_func.h"
#include "player_base.h"
#include "engine.h"
diff --git a/src/openttd.cpp b/src/openttd.cpp
index 14412d8e4..70e2a1b51 100644
--- a/src/openttd.cpp
+++ b/src/openttd.cpp
@@ -15,7 +15,6 @@
#include "gfxinit.h"
#include "gui.h"
#include "landscape.h"
-#include "station.h"
#include "station_map.h"
#include "town_map.h"
#include "tunnel_map.h"
diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp
index 2cce9c55a..3aa87886b 100644
--- a/src/order_cmd.cpp
+++ b/src/order_cmd.cpp
@@ -10,7 +10,6 @@
#include "depot.h"
#include "waypoint.h"
#include "command_func.h"
-#include "station.h"
#include "player_func.h"
#include "news_func.h"
#include "saveload.h"
diff --git a/src/order_gui.cpp b/src/order_gui.cpp
index 7ec38c7c3..8d2fd6b1d 100644
--- a/src/order_gui.cpp
+++ b/src/order_gui.cpp
@@ -8,7 +8,7 @@
#include "station_map.h"
#include "gui.h"
#include "window_gui.h"
-#include "station.h"
+#include "station_base.h"
#include "town.h"
#include "command_func.h"
#include "viewport_func.h"
diff --git a/src/players.cpp b/src/players.cpp
index 18df770bd..85a5ef5d0 100644
--- a/src/players.cpp
+++ b/src/players.cpp
@@ -8,7 +8,6 @@
#include "player_func.h"
#include "player_gui.h"
#include "town.h"
-#include "station.h"
#include "news_func.h"
#include "saveload.h"
#include "command_func.h"
@@ -34,6 +33,7 @@
#include "ai/trolly/trolly.h"
#include "road_func.h"
#include "rail.h"
+#include "sprite.h"
#include "table/strings.h"
#include "table/sprites.h"
diff --git a/src/rail_cmd.cpp b/src/rail_cmd.cpp
index 1292a6523..2828bfafe 100644
--- a/src/rail_cmd.cpp
+++ b/src/rail_cmd.cpp
@@ -19,7 +19,6 @@
#include "pathfind.h"
#include "engine.h"
#include "town.h"
-#include "station.h"
#include "sprite.h"
#include "depot.h"
#include "waypoint.h"
diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp
index 939cd8fe4..28c0670c5 100644
--- a/src/rail_gui.cpp
+++ b/src/rail_gui.cpp
@@ -13,7 +13,7 @@
#include "viewport_func.h"
#include "gfx_func.h"
#include "command_func.h"
-#include "station.h"
+#include "town_type.h"
#include "waypoint.h"
#include "debug.h"
#include "variables.h"
diff --git a/src/road_gui.cpp b/src/road_gui.cpp
index fe5410df1..2d1ccb19d 100644
--- a/src/road_gui.cpp
+++ b/src/road_gui.cpp
@@ -16,7 +16,6 @@
#include "road_cmd.h"
#include "road_map.h"
#include "station_map.h"
-#include "station.h"
#include "functions.h"
#include "window_func.h"
#include "vehicle_func.h"
@@ -27,7 +26,7 @@
#include "table/sprites.h"
#include "table/strings.h"
-static void ShowRVStationPicker(RoadStop::Type rs);
+static void ShowRVStationPicker(RoadStopType rs);
static void ShowRoadDepotPicker();
static bool _remove_button_clicked;
@@ -215,18 +214,18 @@ static void PlaceRoadStop(TileIndex tile, uint32 p2, uint32 cmd)
static void PlaceRoad_BusStation(TileIndex tile)
{
if (_remove_button_clicked) {
- DoCommandP(tile, 0, RoadStop::BUS, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[RoadStop::BUS]));
+ DoCommandP(tile, 0, ROADSTOP_BUS, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_BUS]));
} else {
- PlaceRoadStop(tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | RoadStop::BUS, CMD_BUILD_ROAD_STOP | CMD_NO_WATER | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[RoadStop::BUS]));
+ PlaceRoadStop(tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | ROADSTOP_BUS, CMD_BUILD_ROAD_STOP | CMD_NO_WATER | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[ROADSTOP_BUS]));
}
}
static void PlaceRoad_TruckStation(TileIndex tile)
{
if (_remove_button_clicked) {
- DoCommandP(tile, 0, RoadStop::TRUCK, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[RoadStop::TRUCK]));
+ DoCommandP(tile, 0, ROADSTOP_TRUCK, CcPlaySound1D, CMD_REMOVE_ROAD_STOP | CMD_MSG(_road_type_infos[_cur_roadtype].err_remove_station[ROADSTOP_TRUCK]));
} else {
- PlaceRoadStop(tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | RoadStop::TRUCK, CMD_BUILD_ROAD_STOP | CMD_NO_WATER | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[RoadStop::TRUCK]));
+ PlaceRoadStop(tile, (_ctrl_pressed << 5) | RoadTypeToRoadTypes(_cur_roadtype) << 2 | ROADSTOP_TRUCK, CMD_BUILD_ROAD_STOP | CMD_NO_WATER | CMD_MSG(_road_type_infos[_cur_roadtype].err_build_station[ROADSTOP_TRUCK]));
}
}
@@ -334,13 +333,13 @@ static void BuildRoadClick_Depot(Window *w)
static void BuildRoadClick_BusStation(Window *w)
{
if (_game_mode == GM_EDITOR || !CanBuildVehicleInfrastructure(VEH_ROAD)) return;
- if (HandlePlacePushButton(w, RTW_BUS_STATION, SPR_CURSOR_BUS_STATION, VHM_RECT, PlaceRoad_BusStation)) ShowRVStationPicker(RoadStop::BUS);
+ if (HandlePlacePushButton(w, RTW_BUS_STATION, SPR_CURSOR_BUS_STATION, VHM_RECT, PlaceRoad_BusStation)) ShowRVStationPicker(ROADSTOP_BUS);
}
static void BuildRoadClick_TruckStation(Window *w)
{
if (_game_mode == GM_EDITOR || !CanBuildVehicleInfrastructure(VEH_ROAD)) return;
- if (HandlePlacePushButton(w, RTW_TRUCK_STATION, SPR_CURSOR_TRUCK_STATION, VHM_RECT, PlaceRoad_TruckStation)) ShowRVStationPicker(RoadStop::TRUCK);
+ if (HandlePlacePushButton(w, RTW_TRUCK_STATION, SPR_CURSOR_TRUCK_STATION, VHM_RECT, PlaceRoad_TruckStation)) ShowRVStationPicker(ROADSTOP_TRUCK);
}
/**
@@ -942,12 +941,12 @@ static const WindowDesc _rv_station_picker_desc = {
RoadStationPickerWndProc
};
-static void ShowRVStationPicker(RoadStop::Type rs)
+static void ShowRVStationPicker(RoadStopType rs)
{
Window *w = AllocateWindowDesc(&_rv_station_picker_desc);
if (w == NULL) return;
- w->window_class = (rs == RoadStop::BUS) ? WC_BUS_STATION : WC_TRUCK_STATION;
+ w->window_class = (rs == ROADSTOP_BUS) ? WC_BUS_STATION : WC_TRUCK_STATION;
w->widget[BRSW_CAPTION].data = _road_type_infos[_cur_roadtype].picker_title[rs];
for (uint i = BRSW_STATION_NE; i < BRSW_LT_OFF; i++) w->widget[i].tooltips = _road_type_infos[_cur_roadtype].picker_tooltip[rs];
}
diff --git a/src/road_map.cpp b/src/road_map.cpp
index a39fa5fc9..8c1783640 100644
--- a/src/road_map.cpp
+++ b/src/road_map.cpp
@@ -7,7 +7,6 @@
#include "bridge_map.h"
#include "tile_cmd.h"
#include "road_map.h"
-#include "station.h"
#include "tunnel_map.h"
#include "station_map.h"
#include "depot.h"
diff --git a/src/roadveh_cmd.cpp b/src/roadveh_cmd.cpp
index 572d04fc9..9be636077 100644
--- a/src/roadveh_cmd.cpp
+++ b/src/roadveh_cmd.cpp
@@ -13,7 +13,7 @@
#include "timetable.h"
#include "engine.h"
#include "command_func.h"
-#include "station.h"
+#include "station_base.h"
#include "news_func.h"
#include "pathfind.h"
#include "npf.h"
@@ -1171,7 +1171,7 @@ static Trackdir RoadFindPathToDest(Vehicle* v, TileIndex tile, DiagDirection ent
trackdirs = TRACKDIR_BIT_NONE;
} else {
/* Our station */
- RoadStop::Type rstype = IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? RoadStop::BUS : RoadStop::TRUCK;
+ RoadStopType rstype = IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? ROADSTOP_BUS : ROADSTOP_TRUCK;
if (GetRoadStopType(tile) != rstype) {
/* Wrong station type */
@@ -1807,7 +1807,7 @@ again:
_road_veh_data_1[v->u.road.state - RVSB_IN_ROAD_STOP + (_opt.road_side << RVS_DRIVE_SIDE)] == v->u.road.frame) ||
(IsInsideMM(v->u.road.state, RVSB_IN_DT_ROAD_STOP, RVSB_IN_DT_ROAD_STOP_END) &&
v->current_order.dest == GetStationIndex(v->tile) &&
- GetRoadStopType(v->tile) == (IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? RoadStop::BUS : RoadStop::TRUCK) &&
+ GetRoadStopType(v->tile) == (IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? ROADSTOP_BUS : ROADSTOP_TRUCK) &&
v->u.road.frame == RVC_DRIVE_THROUGH_STOP_FRAME))) {
RoadStop *rs = GetRoadStopByTile(v->tile, GetRoadStopType(v->tile));
@@ -1822,7 +1822,7 @@ again:
if (IsDriveThroughStopTile(v->tile)) {
TileIndex next_tile = TILE_ADD(v->tile, TileOffsByDir(v->direction));
- RoadStop::Type type = IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? RoadStop::BUS : RoadStop::TRUCK;
+ RoadStopType type = IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? ROADSTOP_BUS : ROADSTOP_TRUCK;
/* Check if next inline bay is free */
if (IsDriveThroughStopTile(next_tile) && (GetRoadStopType(next_tile) == type)) {
diff --git a/src/saveload.cpp b/src/saveload.cpp
index bf3ed3a23..463782c41 100644
--- a/src/saveload.cpp
+++ b/src/saveload.cpp
@@ -16,7 +16,7 @@
#include "stdafx.h"
#include "openttd.h"
#include "debug.h"
-#include "station.h"
+#include "station_base.h"
#include "thread.h"
#include "town.h"
#include "saveload.h"
diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp
index d7be418ef..ca2592a19 100644
--- a/src/settings_gui.cpp
+++ b/src/settings_gui.cpp
@@ -27,6 +27,7 @@
#include "waypoint.h"
#include "widgets/dropdown_type.h"
#include "widgets/dropdown_func.h"
+#include "station_func.h"
#include "table/sprites.h"
#include "table/strings.h"
diff --git a/src/ship_cmd.cpp b/src/ship_cmd.cpp
index 84241c788..d9147c4ce 100644
--- a/src/ship_cmd.cpp
+++ b/src/ship_cmd.cpp
@@ -11,7 +11,7 @@
#include "command_func.h"
#include "pathfind.h"
#include "station_map.h"
-#include "station.h"
+#include "station_base.h"
#include "news_func.h"
#include "engine.h"
#include "player_func.h"
diff --git a/src/station.cpp b/src/station.cpp
index 21147c2ef..f16fb8430 100644
--- a/src/station.cpp
+++ b/src/station.cpp
@@ -7,7 +7,7 @@
#include "bridge_map.h"
#include "debug.h"
#include "station_map.h"
-#include "station.h"
+#include "station_base.h"
#include "town.h"
#include "saveload.h"
#include "player_func.h"
@@ -100,7 +100,7 @@ Station::~Station()
*/
RoadStop *Station::GetPrimaryRoadStop(const Vehicle *v) const
{
- RoadStop *rs = this->GetPrimaryRoadStop(IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? RoadStop::BUS : RoadStop::TRUCK);
+ RoadStop *rs = this->GetPrimaryRoadStop(IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? ROADSTOP_BUS : ROADSTOP_TRUCK);
for (; rs != NULL; rs = rs->next) {
/* The vehicle cannot go to this roadstop (different roadtype) */
diff --git a/src/station.h b/src/station_base.h
index 2458e6e56..ffc40a624 100644
--- a/src/station.h
+++ b/src/station_base.h
@@ -1,22 +1,18 @@
/* $Id$ */
-/** @file station.h */
+/** @file station_base.h Base classes/functions for stations. */
-#ifndef STATION_H
-#define STATION_H
+#ifndef STATION_BASE_H
+#define STATION_BASE_H
#include "station_type.h"
#include "airport.h"
#include "oldpool.h"
-#include "sprite.h"
-#include "road_type.h"
-#include "newgrf_station.h"
#include "cargopacket.h"
#include "cargo_type.h"
#include "town_type.h"
-#include "core/geometry_type.hpp"
+#include "newgrf_station.h"
#include <list>
-#include <set>
DECLARE_OLD_POOL(Station, Station, 6, 1000)
DECLARE_OLD_POOL(RoadStop, RoadStop, 5, 2000)
@@ -47,12 +43,6 @@ struct GoodsEntry {
/** A Stop for a Road Vehicle */
struct RoadStop : PoolItem<RoadStop, RoadStopID, &_RoadStop_pool> {
- /** Types of RoadStops */
- enum Type {
- BUS, ///< A standard stop for buses
- TRUCK ///< A standard stop for trucks
- };
-
static const int cDebugCtorLevel = 5; ///< Debug level on which Contructor / Destructor messages are printed
static const uint LIMIT = 16; ///< The maximum amount of roadstops that are allowed at a single station
static const uint MAX_BAY_COUNT = 2; ///< The maximum number of loading bays
@@ -114,9 +104,9 @@ struct StationRect : public Rect {
struct Station : PoolItem<Station, StationID, &_Station_pool> {
public:
- RoadStop *GetPrimaryRoadStop(RoadStop::Type type) const
+ RoadStop *GetPrimaryRoadStop(RoadStopType type) const
{
- return type == RoadStop::BUS ? bus_stops : truck_stops;
+ return type == ROADSTOP_BUS ? bus_stops : truck_stops;
}
RoadStop *GetPrimaryRoadStop(const Vehicle *v) const;
@@ -200,16 +190,6 @@ public:
inline bool IsValid() const { return this->xy != 0; }
};
-void ModifyStationRatingAround(TileIndex tile, PlayerID owner, int amount, uint radius);
-
-/** A set of stations (\c const \c Station* ) */
-typedef std::set<Station*> StationSet;
-
-StationSet FindStationsAroundIndustryTile(TileIndex tile, int w, int h);
-
-void ShowStationViewWindow(StationID station);
-void UpdateAllStationVirtCoord();
-
static inline StationID GetMaxStationIndex()
{
/* TODO - This isn't the real content of the function, but
@@ -241,22 +221,4 @@ static inline bool IsValidStationID(StationID index)
/* End of stuff for ROADSTOPS */
-
-void AfterLoadStations();
-void GetProductionAroundTiles(AcceptedCargo produced, TileIndex tile, int w, int h, int rad);
-void GetAcceptanceAroundTiles(AcceptedCargo accepts, TileIndex tile, int w, int h, int rad);
-
-
-const DrawTileSprites *GetStationTileLayout(StationType st, byte gfx);
-void StationPickerDrawSprite(int x, int y, StationType st, RailType railtype, RoadType roadtype, int image);
-
-RoadStop * GetRoadStopByTile(TileIndex tile, RoadStop::Type type);
-uint GetNumRoadStops(const Station* st, RoadStop::Type type);
-RoadStop * AllocateRoadStop();
-void ClearSlot(Vehicle *v);
-
-bool HasStationInUse(StationID station, PlayerID player);
-
-void DeleteOilRig(TileIndex t);
-
-#endif /* STATION_H */
+#endif /* STATION_BASE_H */
diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp
index aa354cfae..df9e6cbbc 100644
--- a/src/station_cmd.cpp
+++ b/src/station_cmd.cpp
@@ -11,7 +11,6 @@
#include "tile_cmd.h"
#include "landscape.h"
#include "station_map.h"
-#include "station.h"
#include "viewport_func.h"
#include "command_func.h"
#include "town.h"
@@ -71,7 +70,7 @@ bool IsHangar(TileIndex t)
return false;
}
-RoadStop* GetRoadStopByTile(TileIndex tile, RoadStop::Type type)
+RoadStop* GetRoadStopByTile(TileIndex tile, RoadStopType type)
{
const Station* st = GetStationByTile(tile);
@@ -82,7 +81,7 @@ RoadStop* GetRoadStopByTile(TileIndex tile, RoadStop::Type type)
}
-static uint GetNumRoadStopsInStation(const Station* st, RoadStop::Type type)
+static uint GetNumRoadStopsInStation(const Station* st, RoadStopType type)
{
uint num = 0;
@@ -1298,7 +1297,7 @@ static CommandCost RemoveRailroadStation(Station *st, TileIndex tile, uint32 fla
}
/**
- * @param truck_station Determines whether a stop is RoadStop::BUS or RoadStop::TRUCK
+ * @param truck_station Determines whether a stop is ROADSTOP_BUS or ROADSTOP_TRUCK
* @param st The Station to do the whole procedure for
* @return a pointer to where to link a new RoadStop*
*/
@@ -1397,7 +1396,7 @@ CommandCost CmdBuildRoadStop(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
AutoPtrT<RoadStop> rs_auto_delete(road_stop);
if (st != NULL &&
- GetNumRoadStopsInStation(st, RoadStop::BUS) + GetNumRoadStopsInStation(st, RoadStop::TRUCK) >= RoadStop::LIMIT) {
+ GetNumRoadStopsInStation(st, ROADSTOP_BUS) + GetNumRoadStopsInStation(st, ROADSTOP_TRUCK) >= RoadStop::LIMIT) {
return_cmd_error(type ? STR_TOO_MANY_TRUCK_STOPS : STR_TOO_MANY_BUS_STOPS);
}
@@ -1442,7 +1441,7 @@ CommandCost CmdBuildRoadStop(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
st->rect.BeforeAddTile(tile, StationRect::ADD_TRY);
- RoadStop::Type rs_type = type ? RoadStop::TRUCK : RoadStop::BUS;
+ RoadStopType rs_type = type ? ROADSTOP_TRUCK : ROADSTOP_BUS;
if (is_drive_through) {
MakeDriveThroughRoadStop(tile, st->owner, st->index, rs_type, rts, (Axis)p1, town_owned_road);
} else {
@@ -1488,10 +1487,10 @@ static CommandCost RemoveRoadStop(Station *st, uint32 flags, TileIndex tile)
RoadStop *cur_stop;
if (is_truck) { // truck stop
primary_stop = &st->truck_stops;
- cur_stop = GetRoadStopByTile(tile, RoadStop::TRUCK);
+ cur_stop = GetRoadStopByTile(tile, ROADSTOP_TRUCK);
} else {
primary_stop = &st->bus_stops;
- cur_stop = GetRoadStopByTile(tile, RoadStop::BUS);
+ cur_stop = GetRoadStopByTile(tile, ROADSTOP_BUS);
}
assert(cur_stop != NULL);
@@ -2440,7 +2439,7 @@ static VehicleEnterTileStatus VehicleEnter_Station(Vehicle *v, TileIndex tile, i
if (!rs->IsFreeBay(side)) return VETSB_CANNOT_ENTER;
/* Check if the vehicle is stopping at this road stop */
- if (GetRoadStopType(tile) == (IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? RoadStop::BUS : RoadStop::TRUCK) &&
+ if (GetRoadStopType(tile) == (IsCargoInClass(v->cargo_type, CC_PASSENGERS) ? ROADSTOP_BUS : ROADSTOP_TRUCK) &&
v->current_order.dest == GetStationIndex(tile)) {
SetBit(v->u.road.state, RVS_IS_STOPPING);
rs->AllocateDriveThroughBay(side);
@@ -2913,7 +2912,7 @@ static void ChangeTileOwner_Station(TileIndex tile, PlayerID old_player, PlayerI
} else {
if (IsDriveThroughStopTile(tile)) {
/* Remove the drive-through road stop */
- DoCommand(tile, 0, (GetStationType(tile) == STATION_TRUCK) ? RoadStop::TRUCK : RoadStop::BUS, DC_EXEC | DC_BANKRUPT, CMD_REMOVE_ROAD_STOP);
+ DoCommand(tile, 0, (GetStationType(tile) == STATION_TRUCK) ? ROADSTOP_TRUCK : ROADSTOP_BUS, DC_EXEC | DC_BANKRUPT, CMD_REMOVE_ROAD_STOP);
assert(IsTileType(tile, MP_ROAD));
/* Change owner of tile and all roadtypes */
ChangeTileOwner(tile, old_player, new_player);
diff --git a/src/station_func.h b/src/station_func.h
new file mode 100644
index 000000000..2db114279
--- /dev/null
+++ b/src/station_func.h
@@ -0,0 +1,43 @@
+/* $Id$ */
+
+/** @file station_func.h Functions related to stations. */
+
+#ifndef STATION_FUNC_H
+#define STATION_FUNC_H
+
+#include "station_type.h"
+#include "sprite.h"
+#include "road_type.h"
+#include "tile_type.h"
+#include "cargo_type.h"
+#include "vehicle_type.h"
+#include <set>
+
+void ModifyStationRatingAround(TileIndex tile, PlayerID owner, int amount, uint radius);
+
+/** A set of stations (\c const \c Station* ) */
+typedef std::set<Station*> StationSet;
+
+StationSet FindStationsAroundIndustryTile(TileIndex tile, int w, int h);
+
+void ShowStationViewWindow(StationID station);
+void UpdateAllStationVirtCoord();
+
+void AfterLoadStations();
+void GetProductionAroundTiles(AcceptedCargo produced, TileIndex tile, int w, int h, int rad);
+void GetAcceptanceAroundTiles(AcceptedCargo accepts, TileIndex tile, int w, int h, int rad);
+
+const DrawTileSprites *GetStationTileLayout(StationType st, byte gfx);
+void StationPickerDrawSprite(int x, int y, StationType st, RailType railtype, RoadType roadtype, int image);
+
+bool HasStationInUse(StationID station, PlayerID player);
+
+RoadStop * GetRoadStopByTile(TileIndex tile, RoadStopType type);
+uint GetNumRoadStops(const Station* st, RoadStopType type);
+RoadStop * AllocateRoadStop();
+
+void ClearSlot(Vehicle *v);
+
+void DeleteOilRig(TileIndex t);
+
+#endif /* STATION_FUNC_H */
diff --git a/src/station_gui.cpp b/src/station_gui.cpp
index 8a4f7a6f5..ab35ea2ff 100644
--- a/src/station_gui.cpp
+++ b/src/station_gui.cpp
@@ -8,7 +8,7 @@
#include "gui.h"
#include "window_gui.h"
#include "textbuf_gui.h"
-#include "station.h"
+#include "station_base.h"
#include "player_func.h"
#include "economy_func.h"
#include "town.h"
@@ -17,7 +17,7 @@
#include "vehicle_gui.h"
#include "cargotype.h"
#include "station_gui.h"
-#include "station.h"
+#include "station_func.h"
#include "strings_func.h"
#include "core/alloc_func.hpp"
#include "window_func.h"
diff --git a/src/station_map.h b/src/station_map.h
index f2a2f86dd..826fb4e3d 100644
--- a/src/station_map.h
+++ b/src/station_map.h
@@ -8,8 +8,10 @@
#include "rail_map.h"
#include "road_map.h"
#include "water_map.h"
-#include "station.h"
+#include "station_func.h"
+#include "station_base.h"
#include "rail.h"
+#include "newgrf_station.h"
typedef byte StationGfx;
@@ -49,10 +51,10 @@ static inline StationType GetStationType(TileIndex t)
return (StationType)GB(_m[t].m6, 3, 3);
}
-static inline RoadStop::Type GetRoadStopType(TileIndex t)
+static inline RoadStopType GetRoadStopType(TileIndex t)
{
assert(GetStationType(t) == STATION_TRUCK || GetStationType(t) == STATION_BUS);
- return GetStationType(t) == STATION_TRUCK ? RoadStop::TRUCK : RoadStop::BUS;
+ return GetStationType(t) == STATION_TRUCK ? ROADSTOP_TRUCK : ROADSTOP_BUS;
}
static inline StationGfx GetStationGfx(TileIndex t)
@@ -260,15 +262,15 @@ static inline void MakeRailStation(TileIndex t, Owner o, StationID sid, Axis a,
SetRailType(t, rt);
}
-static inline void MakeRoadStop(TileIndex t, Owner o, StationID sid, RoadStop::Type rst, RoadTypes rt, DiagDirection d)
+static inline void MakeRoadStop(TileIndex t, Owner o, StationID sid, RoadStopType rst, RoadTypes rt, DiagDirection d)
{
- MakeStation(t, o, sid, (rst == RoadStop::BUS ? STATION_BUS : STATION_TRUCK), d);
+ MakeStation(t, o, sid, (rst == ROADSTOP_BUS ? STATION_BUS : STATION_TRUCK), d);
SetRoadTypes(t, rt);
}
-static inline void MakeDriveThroughRoadStop(TileIndex t, Owner o, StationID sid, RoadStop::Type rst, RoadTypes rt, Axis a, bool on_town_road)
+static inline void MakeDriveThroughRoadStop(TileIndex t, Owner o, StationID sid, RoadStopType rst, RoadTypes rt, Axis a, bool on_town_road)
{
- MakeStation(t, o, sid, (rst == RoadStop::BUS ? STATION_BUS : STATION_TRUCK), GFX_TRUCK_BUS_DRIVETHROUGH_OFFSET + a);
+ MakeStation(t, o, sid, (rst == ROADSTOP_BUS ? STATION_BUS : STATION_TRUCK), GFX_TRUCK_BUS_DRIVETHROUGH_OFFSET + a);
SB(_m[t].m6, 2, 1, on_town_road);
SetRoadTypes(t, rt);
}
diff --git a/src/station_type.h b/src/station_type.h
index 17ed0ff46..d88972021 100644
--- a/src/station_type.h
+++ b/src/station_type.h
@@ -23,6 +23,12 @@ enum StationType {
STATION_BUOY
};
+/** Types of RoadStops */
+enum RoadStopType {
+ ROADSTOP_BUS, ///< A standard stop for buses
+ ROADSTOP_TRUCK ///< A standard stop for trucks
+};
+
enum {
FACIL_TRAIN = 0x01,
FACIL_TRUCK_STOP = 0x02,
diff --git a/src/strings.cpp b/src/strings.cpp
index aa62e30d7..b2d0d0b82 100644
--- a/src/strings.cpp
+++ b/src/strings.cpp
@@ -6,7 +6,7 @@
#include "openttd.h"
#include "currency.h"
#include "namegen_func.h"
-#include "station.h"
+#include "station_base.h"
#include "town.h"
#include "screenshot.h"
#include "waypoint.h"
diff --git a/src/subsidy_gui.cpp b/src/subsidy_gui.cpp
index 239f6a430..0fffa303b 100644
--- a/src/subsidy_gui.cpp
+++ b/src/subsidy_gui.cpp
@@ -4,7 +4,7 @@
#include "stdafx.h"
#include "openttd.h"
-#include "station.h"
+#include "station_base.h"
#include "industry.h"
#include "town.h"
#include "economy_func.h"
diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp
index acde0e3c4..46745c210 100644
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -15,7 +15,7 @@
#include "town.h"
#include "command_func.h"
#include "industry.h"
-#include "station.h"
+#include "station_base.h"
#include "player_base.h"
#include "news_func.h"
#include "saveload.h"
diff --git a/src/train_cmd.cpp b/src/train_cmd.cpp
index 5bbb28743..9700048a9 100644
--- a/src/train_cmd.cpp
+++ b/src/train_cmd.cpp
@@ -16,7 +16,7 @@
#include "command_func.h"
#include "pathfind.h"
#include "npf.h"
-#include "station.h"
+#include "station_base.h"
#include "news_func.h"
#include "engine.h"
#include "player_func.h"
diff --git a/src/unmovable_cmd.cpp b/src/unmovable_cmd.cpp
index 1e6aac635..6dc87ad08 100644
--- a/src/unmovable_cmd.cpp
+++ b/src/unmovable_cmd.cpp
@@ -11,7 +11,6 @@
#include "player_func.h"
#include "player_base.h"
#include "gui.h"
-#include "station.h"
#include "town.h"
#include "sprite.h"
#include "bridge_map.h"
diff --git a/src/vehicle.cpp b/src/vehicle.cpp
index bf3905680..6d2d18988 100644
--- a/src/vehicle.cpp
+++ b/src/vehicle.cpp
@@ -21,7 +21,6 @@
#include "debug.h"
#include "vehicle_gui.h"
#include "depot.h"
-#include "station.h"
#include "rail_type.h"
#include "train.h"
#include "aircraft.h"
diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp
index 4730cb704..e217ecd0b 100644
--- a/src/vehicle_gui.cpp
+++ b/src/vehicle_gui.cpp
@@ -6,7 +6,6 @@
#include "openttd.h"
#include "debug.h"
#include "player_func.h"
-#include "station.h"
#include "engine.h"
#include "gui.h"
#include "window_gui.h"
diff --git a/src/viewport.cpp b/src/viewport.cpp
index ad9141b89..96e8dff88 100644
--- a/src/viewport.cpp
+++ b/src/viewport.cpp
@@ -10,7 +10,7 @@
#include "spritecache.h"
#include "landscape.h"
#include "viewport_func.h"
-#include "station.h"
+#include "station_base.h"
#include "town.h"
#include "signs.h"
#include "waypoint.h"
@@ -25,6 +25,7 @@
#include "vehicle_func.h"
#include "player_func.h"
#include "settings_type.h"
+#include "station_func.h"
#include "table/sprites.h"
#include "table/strings.h"
diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp
index 678c94b14..5d8376347 100644
--- a/src/water_cmd.cpp
+++ b/src/water_cmd.cpp
@@ -35,6 +35,8 @@
#include "settings_type.h"
#include "clear_map.h"
#include "tree_map.h"
+#include "station_base.h"
+#include "airport.h"
#include "table/sprites.h"
#include "table/strings.h"
diff --git a/src/waypoint.cpp b/src/waypoint.cpp
index 16e278123..f69334012 100644
--- a/src/waypoint.cpp
+++ b/src/waypoint.cpp
@@ -12,7 +12,7 @@
#include "rail.h"
#include "bridge_map.h"
#include "saveload.h"
-#include "station.h"
+#include "station_base.h"
#include "town.h"
#include "waypoint.h"
#include "variables.h"
diff --git a/src/yapf/yapf.h b/src/yapf/yapf.h
index 40851eb42..f11ef2a40 100644
--- a/src/yapf/yapf.h
+++ b/src/yapf/yapf.h
@@ -7,6 +7,7 @@
#include "../debug.h"
#include "../depot_type.h"
+#include "../direction_type.h"
/** Finds the best path for given ship.
* @param v the ship that needs to find a path
diff --git a/src/yapf/yapf.hpp b/src/yapf/yapf.hpp
index b98dfdf4b..97f104e49 100644
--- a/src/yapf/yapf.hpp
+++ b/src/yapf/yapf.hpp
@@ -14,7 +14,7 @@
#include "../bridge_map.h"
#include "../tunnelbridge_map.h"
#include "../bridge.h"
-#include "../station.h"
+#include "../station_base.h"
#include "../station_map.h"
#include "../tile_cmd.h"
#include "../landscape.h"