[Core] Fix NPC's running to the first waypoint

This commit is contained in:
Olion 2015-05-17 20:17:26 +01:00 committed by Antz
parent b9d4767567
commit 5a86a332eb
2 changed files with 9 additions and 9 deletions

View File

@ -262,11 +262,11 @@ void Object::BuildMovementUpdate(ByteBuffer* data, uint8 updateFlags) const
moveFlags |= MOVEFLAG_ONTRANSPORT; moveFlags |= MOVEFLAG_ONTRANSPORT;
} }
//float x, y, z; float x; // not used anywhere
//if (m_objectTypeId == TYPEID_UNIT && ((Unit*)this)->GetMotionMaster()->GetDestination(x, y, z)) if (m_objectTypeId == TYPEID_UNIT && ((Unit*)this)->movespline && ((Unit*)this)->GetMotionMaster()->GetDestination(x, x, x))
//{ {
// moveFlags |= MOVEFLAG_WALK_MODE | MOVEFLAG_FORWARD | MOVEFLAG_SPLINE_ENABLED; moveFlags |= MOVEFLAG_WALK_MODE | MOVEFLAG_FORWARD | MOVEFLAG_SPLINE_ENABLED;
//} }
*data << uint32(moveFlags); // movement flags *data << uint32(moveFlags); // movement flags
*data << uint32(WorldTimer::getMSTime()); // time (in milliseconds) *data << uint32(WorldTimer::getMSTime()); // time (in milliseconds)
@ -327,7 +327,7 @@ void Object::BuildMovementUpdate(ByteBuffer* data, uint8 updateFlags) const
if (m_objectTypeId == TYPEID_UNIT) if (m_objectTypeId == TYPEID_UNIT)
{ {
if (moveFlags & MOVEFLAG_SPLINE_ENABLED) // 0x00400000 if (moveFlags & MOVEFLAG_SPLINE_ENABLED && ((Unit*)this)->movespline) // 0x00400000
{ {
Movement::PacketBuilder::WriteCreate((*((Unit*)this)->movespline), *data); Movement::PacketBuilder::WriteCreate((*((Unit*)this)->movespline), *data);
} }

View File

@ -593,13 +593,13 @@ enum MovementFlags
MOVEFLAG_FALLING = 0x00002000, MOVEFLAG_FALLING = 0x00002000,
MOVEFLAG_FALLINGFAR = 0x00004000, MOVEFLAG_FALLINGFAR = 0x00004000,
MOVEFLAG_SWIMMING = 0x00200000, // appears with fly flag also MOVEFLAG_SWIMMING = 0x00200000, // appears with fly flag also
MOVEFLAG_ASCENDING = 0x00400000, // [-ZERO] is it really need and correct value MOVEFLAG_SPLINE_ENABLED = 0x00400000,
MOVEFLAG_CAN_FLY = 0x00800000, // [-ZERO] is it really need and correct value MOVEFLAG_CAN_FLY = 0x00800000, // [-ZERO] is it really need and correct value
MOVEFLAG_FLYING = 0x01000000, // [-ZERO] is it really need and correct value MOVEFLAG_FLYING = 0x01000000, // [-ZERO] is it really need and correct value
MOVEFLAG_ONTRANSPORT = 0x02000000, // Used for flying on some creatures MOVEFLAG_ONTRANSPORT = 0x02000000, // Used for flying on some creatures
MOVEFLAG_SPLINE_ELEVATION = 0x04000000, // used for flight paths MOVEFLAG_SPLINE_ELEVATION = 0x04000000, // [-ZERO] checkme! used for flight paths
MOVEFLAG_SPLINE_ENABLED = 0x08000000, // used for flight paths //MOVEFLAG_SPLINE_ENABLED = 0x08000000, // [-ZERO] wrong!
MOVEFLAG_WATERWALKING = 0x10000000, // prevent unit from falling through water MOVEFLAG_WATERWALKING = 0x10000000, // prevent unit from falling through water
MOVEFLAG_SAFE_FALL = 0x20000000, // active rogue safe fall spell (passive) MOVEFLAG_SAFE_FALL = 0x20000000, // active rogue safe fall spell (passive)
MOVEFLAG_HOVER = 0x40000000 MOVEFLAG_HOVER = 0x40000000