Public feed
#890979
{
WorldPacket data( SMSG_MONSTER_MOVE, (41 + GetPackGUID().size()) );
data.append(GetPackGUID());
// Point A, starting location
data << GetPositionX() << GetPositionY() << GetPositionZ();
// unknown field - unrelated to orientation
// seems to increment about 1000 for every 1.7 seconds
// for now, we'll just use mstime
data << getMSTime();
data << uint8(type); // unknown
switch(type)
{
case 0: // normal packet
break;
case 1: // stop packet
SendMessageToSet( &data, true );
return;
case 3: // not used currently
data << uint64(0); // probably target guid
break;
case 4: // not used currently
data << float(0); // probably orientation
break;
}
data << uint32(Run ? 0x00000100 : 0x00000000); // flags (0x100 - running, 0x200 - taxi)
/* Flags:
512: Floating, moving without walking/running
*/
data << Time; // Time in between points
data << uint32(1); // 1 single waypoint
data << NewPosX << NewPosY << NewPosZ; // the single waypoint Point B
SendMessageToSet( &data, true );
}