diff options
author | smatz <smatz@openttd.org> | 2009-05-30 20:13:12 +0000 |
---|---|---|
committer | smatz <smatz@openttd.org> | 2009-05-30 20:13:12 +0000 |
commit | 8c11d612e44c30e124881ca47e15eda9ef0c5491 (patch) | |
tree | 3fdeab30fd2afc97d9b36c09471e7ce31b56d8c2 /src/vehicle_base.h | |
parent | 7633362912384ba7759724a2bbc057d97e5f27f0 (diff) | |
download | openttd-8c11d612e44c30e124881ca47e15eda9ef0c5491.tar.xz |
(svn r16472) -Codechange: set vehicle type in SpecializedVehicle constructor instead of constructor of each vehicle type
Diffstat (limited to 'src/vehicle_base.h')
-rw-r--r-- | src/vehicle_base.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/vehicle_base.h b/src/vehicle_base.h index e3659a009..581a55135 100644 --- a/src/vehicle_base.h +++ b/src/vehicle_base.h @@ -182,7 +182,7 @@ public: VehicleCache vcache; ///< Cache of often used calculated values /** Create a new vehicle */ - Vehicle(); + Vehicle(VehicleType type = VEH_INVALID); /** Destroy all stuff that (still) needs the virtual functions to work properly */ void PreDestructor(); @@ -503,6 +503,11 @@ struct SpecializedVehicle : public Vehicle { static const VehicleType EXPECTED_TYPE = Type; ///< Specialized type /** + * Set vehicle type correctly + */ + FORCEINLINE SpecializedVehicle<T, Type>() : Vehicle(Type) { } + + /** * Get the first vehicle in the chain * @return first vehicle in the chain */ @@ -559,9 +564,6 @@ struct DisasterVehicle : public SpecializedVehicle<DisasterVehicle, VEH_DISASTER uint16 image_override; VehicleID big_ufo_destroyer_target; - /** Initializes the Vehicle to a disaster vehicle */ - DisasterVehicle() { this->type = VEH_DISASTER; } - /** We want to 'destruct' the right class. */ virtual ~DisasterVehicle() {} |