예제 #1
0
        public static void ReadTransportInfo(WorldPacket data, ref MovementInfo.TransportInfo transportInfo)
        {
            transportInfo.guid            = data.ReadPackedGuid();      // Transport Guid
            transportInfo.pos.posX        = data.ReadFloat();
            transportInfo.pos.posY        = data.ReadFloat();
            transportInfo.pos.posZ        = data.ReadFloat();
            transportInfo.pos.Orientation = data.ReadFloat();
            transportInfo.seat            = data.ReadInt8();      // VehicleSeatIndex
            transportInfo.time            = data.ReadUInt32();    // MoveTime

            bool hasPrevTime  = data.HasBit();
            bool hasVehicleId = data.HasBit();

            if (hasPrevTime)
            {
                transportInfo.prevTime = data.ReadUInt32();         // PrevMoveTime
            }
            if (hasVehicleId)
            {
                transportInfo.vehicleId = data.ReadUInt32();        // VehicleRecID
            }
        }