/// <summary>
        ///     Reads fixed vector3.
        /// </summary>
        public static Vector3 ReadFixedVector3(this QNetMessageReader reader, Vector3 previousVector3)
        {
            var flag = (NetworkVectorAxis)reader.ReadByte();
            var x    = previousVector3.x;
            var y    = previousVector3.y;
            var z    = previousVector3.z;

            if (flag.HasFlag(NetworkVectorAxis.X))
            {
                x = reader.ReadSingle();
            }
            if (flag.HasFlag(NetworkVectorAxis.Y))
            {
                y = reader.ReadSingle();
            }
            if (flag.HasFlag(NetworkVectorAxis.Z))
            {
                z = reader.ReadSingle();
            }
            return(new Vector3(x, y, z));
        }
 /// <summary>
 ///     Reads vector2.
 /// </summary>
 public static Vector2 ReadVector2(this QNetMessageReader reader)
 {
     return(new Vector3(reader.ReadSingle(), reader.ReadSingle()));
 }