summaryrefslogtreecommitdiffstats
path: root/src/Entities/Entity.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Entities/Entity.h')
-rw-r--r--src/Entities/Entity.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/Entities/Entity.h b/src/Entities/Entity.h
index 9bb1837f1..fecbb9bf5 100644
--- a/src/Entities/Entity.h
+++ b/src/Entities/Entity.h
@@ -270,6 +270,10 @@ public:
float GetGravity(void) const { return m_Gravity; }
void SetGravity(float a_Gravity) { m_Gravity = a_Gravity; }
+
+ float GetAirDrag(void) const { return m_AirDrag; }
+
+ void SetAirDrag(float a_AirDrag) { m_AirDrag = a_AirDrag; }
/// Sets the rotation to match the speed vector (entity goes "face-forward")
void SetYawFromSpeed(void);
@@ -470,7 +474,7 @@ protected:
static cCriticalSection m_CSCount;
static UInt32 m_EntityCount;
- /** Measured in meter/second (m/s) */
+ /** Measured in meters / second (m / s) */
Vector3d m_Speed;
/** The ID of the entity that is guaranteed to be unique within a single run of the server.
@@ -490,7 +494,7 @@ protected:
/** Stores whether head yaw has been set manually */
bool m_bDirtyHead;
- /** Stores whether our yaw/pitch/roll (body orientation) has been set manually */
+ /** Stores whether our yaw / pitch / roll (body orientation) has been set manually */
bool m_bDirtyOrientation;
/** Stores whether we have sent a Velocity packet with a speed of zero (no speed) to the client
@@ -504,6 +508,12 @@ protected:
For realistic effects, this should be negative. For spaaaaaaace, this can be zero or even positive */
float m_Gravity;
+ /** Stores the air drag that is applied to the entity every tick, measured in speed ratio per tick
+ Acts as air friction and slows down flight
+ Will be interpolated if the server tick rate varies
+ Data: http://minecraft.gamepedia.com/Entity#Motion_of_entities */
+ float m_AirDrag;
+
/** Last position sent to client via the Relative Move or Teleport packets (not Velocity)
Only updated if cEntity::BroadcastMovementUpdate() is called! */
Vector3d m_LastPos;