From 2812584e271a62d8edd4d8ec683ea4c644730df2 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Mon, 15 Feb 2021 01:36:51 +0000 Subject: Basic support for rail wagons --- game/vehicles/railloco.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'game/vehicles/railloco.h') diff --git a/game/vehicles/railloco.h b/game/vehicles/railloco.h index ff8871b..537d448 100644 --- a/game/vehicles/railloco.h +++ b/game/vehicles/railloco.h @@ -1,21 +1,42 @@ #include "game/network/link.h" #include "game/vehicles/vehicle.h" #include "game/worldobject.h" +#include #include +#include class RailVehicle : public Vehicle { public: using Vehicle::Vehicle; float wheelBase; + float length; }; +class RailWagon : public RailVehicle { +public: + using RailVehicle::RailVehicle; + void tick(TickDuration elapsed) override; + friend class RailLoco; +}; +using RailWagonPtr = std::weak_ptr; + class RailLoco : public RailVehicle { public: using RailVehicle::RailVehicle; void tick(TickDuration elapsed) override; + + std::vector wagons; + +private: + void updateWagons() const; }; class Brush47 : public RailLoco { public: explicit Brush47(const LinkPtr & p); }; + +class Brush47Wagon : public RailWagon { +public: + explicit Brush47Wagon(const LinkPtr & p); +}; -- cgit v1.2.3