diff --git a/src/ground_vehicle.hpp b/src/ground_vehicle.hpp index 84930464d5..2e748bda45 100644 --- a/src/ground_vehicle.hpp +++ b/src/ground_vehicle.hpp @@ -54,6 +54,7 @@ enum GroundVehicleFlags { * virtual uint16 GetPoweredPartPower(const T *head) const = 0; * virtual uint16 GetWeight() const = 0; * virtual byte GetTractiveEffort() const = 0; + * virtual byte GetAirDrag() const = 0; * virtual byte GetAirDragArea() const = 0; * virtual AccelStatus GetAccelerationStatus() const = 0; * virtual uint16 GetCurrentSpeed() const = 0; diff --git a/src/roadveh.h b/src/roadveh.h index 5a5ee549ba..9459f38161 100644 --- a/src/roadveh.h +++ b/src/roadveh.h @@ -219,6 +219,15 @@ protected: // These functions should not be called outside acceleration code. return 60; } + /** + * Gets the air drag coefficient of this vehicle. + * @return Air drag value from the engine. + */ + FORCEINLINE byte GetAirDrag() const + { + return RoadVehInfo(this->engine_type)->air_drag; + } + /** * Checks the current acceleration status of this vehicle. * @return Acceleration status. diff --git a/src/train.h b/src/train.h index 84bb88e30c..6cb7e5888b 100644 --- a/src/train.h +++ b/src/train.h @@ -441,6 +441,15 @@ protected: // These functions should not be called outside acceleration code. return 120; } + /** + * Gets the air drag coefficient of this vehicle. + * @return Air drag value from the engine. + */ + FORCEINLINE byte GetAirDrag() const + { + return RailVehInfo(this->engine_type)->air_drag; + } + /** * Checks the current acceleration status of this vehicle. * @return Acceleration status.