class WorldPacket;
/*
[0] UpdateType: Values
[0] GUID: Full: 0xF13001DB0023967A Type: Unit Entry: 475 Low: 2332282
[0] UNIT_FIELD_HEALTH: 59/8.267661E-44
*/
enum OBJECT_UPDATE_TYPE
{
    UPDATETYPE_VALUES				= 0,
    UPDATETYPE_CREATE_OBJECT        = 1,
    UPDATETYPE_CREATE_OBJECT2       = 2,
    UPDATETYPE_OUT_OF_RANGE_OBJECTS = 3,
    UPDATETYPE_NEAR_OBJECTS         = 0xFF
};
// 4.3.0 15050 Sniffed
/*ServerToClient: SMSG_UPDATE_OBJECT (0x4606) Length: 680 Time: 12/30/2011 10:56:06.888 Number: 6559 
Map: 0
Count: 3
[0] UpdateType: CreateObject2
[0] GUID: 0x0
[0] Object Type: Object (0)
[0] Update Flags: Self, Transport, AttackingTarget, LowGuid, Living, StationaryObject, Vehicle, AnimKits, Unknown (18679)
[0] Movement Flags: PitchUp, PitchDown, OnTransport, DisableGravity, Falling, FallingFar, PendingStop, PendingStrafeStop, PendingStrafeRight, Ascending, Descending, SplineElevation, SplineEnabled, CanSafeFall (751367872)
[0] Extra Movement Flags: PreventStrafe, PreventJumping, IsVehicleExitVoluntary, IsJumpSplineInAir, InterpolateMove (1219)
[0] OnTransport: 1

ServerToClient: SMSG_UPDATE_OBJECT (0x4606) Length: 1110 Time: 12/30/2011 10:59:15.618 Number: 9324
Map: 0
Count: 6
[0] UpdateType: CreateObject2
[0] GUID: Full: 0xF7000000 Type: Player Low: -150994944
[0] Object Type: 87 (87)
[0] Update Flags: Self, Transport, AttackingTarget, LowGuid, Living, Vehicle, GOPosition, GORotation, EnablePortals (9143)
[0] Movement Flags: StrafeLeft, StrafeRight, TurnLeft, TurnRight, DisableGravity, Root, PendingStop, Ascending, Descending, Flying, SplineElevation, Waterwalking, CanSafeFall (918572092)
[0] Extra Movement Flags: PreventJumping, DisableCollision, FullSpeedTurning, FullSpeedPitching, IsVehicleExitVoluntary, IsJumpSplineInAir, IsAnimTierInTrans, PreventChangePitch, InterpolateMove (2014)
[0] OnTransport: 0


[0] Update Flags: Self, Transport, AttackingTarget, LowGuid, StationaryObject, Vehicle, GOPosition, Unknown2 (1495)

[0] UpdateType: CreateObject2
[0] GUID: 0x0
[0] Object Type: 215 (215)
[0] Update Flags: Self, Transport, Unknown1, LowGuid, Vehicle, GOPosition, Unknown2, TransportUnkArray (5531)
*/

enum OBJECT_UPDATE_FLAGS
{
    UPDATEFLAG_NONE          = 0x0000, // 0 ---4.3.0 15050 None
    UPDATEFLAG_SELF          = 0x0001, // 1 ---4.3.0 15050 Self
    UPDATEFLAG_TRANSPORT     = 0x0002, // 2 ---4.3.0 15050 Transport
    UPDATEFLAG_HAS_TARGET    = 0x0004, // 4 ---4.3.0 15050 AttackingTarget
    UPDATEFLAG_UNK0          = 0x0008, // 8 ---4.3.0 15050 Unknown1
    UPDATEFLAG_UNK5          = 0x0010, //16 ---4.3.0 15050 LowGuid
    UPDATEFLAG_LIVING        = 0x0020, //32 ---4.3.0 15050 Living
    UPDATEFLAG_HAS_POSITION  = 0x0040, //64 ---4.3.0 15050 StationaryObject
    UPDATEFLAG_VEHICLE       = 0x0080, //128---4.3.0 15050 Vehicle
    UPDATEFLAG_POSITION      = 0x0100, //256---4.3.0 15050 GOPosition
    UPDATEFLAG_ROTATION      = 0x0200, //512---4.3.0 15050 GORotation
    UPDATEFLAG_UNK1          = 0x0400, //1024--4.3.0 15050 Unknown2
    UPDATEFLAG_UNK2          = 0x0800, //2048--4.3.0 15050 AnimKits
    UPDATEFLAG_UNK3          = 0x1000, //4096--4.3.0 15050 TransportUnkArray
    UPDATEFLAG_UNK4          = 0x2000, //8192--4.3.0 15050 EnablePortals
    UPDATEFLAG_UNK           = 0x4000  //16384-4.3.0 15050 Unknown
};