summaryrefslogtreecommitdiff
path: root/src/vehicle_cmd.cpp
diff options
context:
space:
mode:
authorMichael Lutz <michi@icosahedron.de>2021-10-05 22:02:27 +0200
committerMichael Lutz <michi@icosahedron.de>2021-12-16 22:28:32 +0100
commit33ca4f2b9950d98fed902962c847833667ccca9f (patch)
tree503825bff107d7a296c4bf7a0c6e64bd957e0454 /src/vehicle_cmd.cpp
parent5ddfdc8516e35c4f5de2613692d104486151171b (diff)
downloadopenttd-33ca4f2b9950d98fed902962c847833667ccca9f.tar.xz
Codechange: Let the compile generate the master command table out of templated command traits.
This is using a non-intrusive type-traits like templated system, which allows compile-time validation that the command table and the command enum match up.
Diffstat (limited to 'src/vehicle_cmd.cpp')
-rw-r--r--src/vehicle_cmd.cpp14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/vehicle_cmd.cpp b/src/vehicle_cmd.cpp
index a36abb59d..472d10459 100644
--- a/src/vehicle_cmd.cpp
+++ b/src/vehicle_cmd.cpp
@@ -30,6 +30,11 @@
#include "newgrf.h"
#include "company_base.h"
#include "core/random_func.hpp"
+#include "vehicle_cmd.h"
+#include "aircraft_cmd.h"
+#include "roadveh_cmd.h"
+#include "train_cmd.h"
+#include "ship_cmd.h"
#include <sstream>
#include <iomanip>
@@ -67,13 +72,6 @@ const StringID _send_to_depot_msg_table[] = {
};
-CommandCost CmdBuildRailVehicle(TileIndex tile, DoCommandFlag flags, const Engine *e, uint16 data, Vehicle **v);
-CommandCost CmdBuildRoadVehicle(TileIndex tile, DoCommandFlag flags, const Engine *e, uint16 data, Vehicle **v);
-CommandCost CmdBuildShip (TileIndex tile, DoCommandFlag flags, const Engine *e, uint16 data, Vehicle **v);
-CommandCost CmdBuildAircraft (TileIndex tile, DoCommandFlag flags, const Engine *e, uint16 data, Vehicle **v);
-
-CommandCost CmdRefitVehicle(TileIndex tile, DoCommandFlag flags, uint32 p1, uint32 p2, const std::string &text);
-
/**
* Build a vehicle.
* @param tile tile of depot where the vehicle is built
@@ -192,8 +190,6 @@ CommandCost CmdBuildVehicle(TileIndex tile, DoCommandFlag flags, uint32 p1, uint
return value;
}
-CommandCost CmdSellRailWagon(DoCommandFlag flags, Vehicle *v, uint16 data, uint32 user);
-
/**
* Sell a vehicle.
* @param tile unused.