diff options
| author | Shauren <shauren.trinity@gmail.com> | 2012-07-14 23:39:12 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2012-07-14 23:39:12 +0200 |
| commit | 27ea130b55dd3d16092a3d58f2093b99abc0a46b (patch) | |
| tree | dd6d8c1e0271bf24f849f5125726f5e4c0f8a6e0 /src/server/game/Entities/Object | |
| parent | 2d144e49254c39e2a8cbf20c5f93ff4d422b5ce1 (diff) | |
Core/Movement
* Updated movement flags
* Cleaned up MovementStatusElements enum
* Updated and enabled MSG_MOVE_START_FORWARD
Diffstat (limited to 'src/server/game/Entities/Object')
| -rwxr-xr-x | src/server/game/Entities/Object/Object.cpp | 15 | ||||
| -rwxr-xr-x | src/server/game/Entities/Object/Object.h | 4 |
2 files changed, 10 insertions, 9 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index d9d8c3c461a..6894928b551 100755 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -47,6 +47,7 @@ #include "OutdoorPvPMgr.h" #include "MovementPacketBuilder.h" #include "DynamicTree.h" +#include "Unit.h" uint32 GuidHigh2TypeId(uint32 guid_hi) { @@ -331,13 +332,13 @@ void Object::_BuildMovementUpdate(ByteBuffer* data, uint16 flags) const data->WriteBit(0); data->WriteBit(!((movementFlags & (MOVEMENTFLAG_SWIMMING | MOVEMENTFLAG_FLYING)) || (movementFlagsExtra & MOVEMENTFLAG2_ALWAYS_ALLOW_PITCHING))); // Has pitch - data->WriteBit(movementFlags & MOVEMENTFLAG_SPLINE_ENABLED); // Has spline data + data->WriteBit(self->IsSplineEnabled()); // Has spline data data->WriteBit(movementFlagsExtra & MOVEMENTFLAG2_INTERPOLATED_TURNING);// Has fall data data->WriteBit(!(movementFlags & MOVEMENTFLAG_SPLINE_ELEVATION)); // Has spline elevation data->WriteBit(guid[5]); - data->WriteBit(movementFlags & MOVEMENTFLAG_ONTRANSPORT); // Has transport data + data->WriteBit(self->m_movementInfo.t_guid); // Has transport data data->WriteBit(0); // Is missing time - if (movementFlags & MOVEMENTFLAG_ONTRANSPORT) + if (self->m_movementInfo.t_guid) { ObjectGuid transGuid = self->m_movementInfo.t_guid; @@ -354,7 +355,7 @@ void Object::_BuildMovementUpdate(ByteBuffer* data, uint16 flags) const } data->WriteBit(guid[4]); - if (movementFlags & MOVEMENTFLAG_SPLINE_ENABLED) + if (self->IsSplineEnabled()) { data->WriteBit(1); // Has extended spline data Movement::PacketBuilder::WriteCreateBits(*self->movespline, *data); @@ -440,12 +441,12 @@ void Object::_BuildMovementUpdate(ByteBuffer* data, uint16 flags) const if (movementFlags & MOVEMENTFLAG_SPLINE_ELEVATION) *data << float(self->m_movementInfo.splineElevation); - if (movementFlags & MOVEMENTFLAG_SPLINE_ENABLED) + if (self->IsSplineEnabled()) Movement::PacketBuilder::WriteCreateData(*self->movespline, *data); *data << float(self->GetPositionZMinusOffset()); data->WriteByteSeq(guid[5]); - if (movementFlags & MOVEMENTFLAG_ONTRANSPORT) + if (self->m_movementInfo.t_guid) { ObjectGuid transGuid = self->m_movementInfo.t_guid; @@ -1298,7 +1299,7 @@ void MovementInfo::OutDebug() sLog->outString("flags2 %u", flags2); sLog->outString("time %u current time " UI64FMTD "", flags2, uint64(::time(NULL))); sLog->outString("position: `%s`", pos.ToString().c_str()); - if (flags & MOVEMENTFLAG_ONTRANSPORT) + if (t_guid) { sLog->outString("TRANSPORT:"); sLog->outString("guid: " UI64FMTD, t_guid); diff --git a/src/server/game/Entities/Object/Object.h b/src/server/game/Entities/Object/Object.h index 01ad11ba2df..8e1677991f4 100755 --- a/src/server/game/Entities/Object/Object.h +++ b/src/server/game/Entities/Object/Object.h @@ -529,16 +529,16 @@ struct MovementInfo // transport uint64 t_guid; Position t_pos; + int8 t_seat; uint32 t_time; uint32 t_time2; uint32 t_time3; - int8 t_seat; // swimming/flying float pitch; // falling uint32 fallTime; // jumping - float j_zspeed, j_sinAngle, j_cosAngle, j_xyspeed; + float j_zspeed, j_cosAngle, j_sinAngle, j_xyspeed; // spline float splineElevation; |
