예제 #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="writer"></param>
 /// <param name="value"></param>
 /// <param name="serializer"></param>
 public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
 {
     if (value == null)
     {
         writer.WriteNull();
     }
     else
     {
         Type type = value.GetType();
         if (type == VectorConverter.V2)
         {
             Vector2 vector2 = (Vector2)value;
             VectorConverter.WriteVector(writer, (float)vector2.x, (float)vector2.y, new float?(), new float?());
         }
         else if (type == VectorConverter.V3)
         {
             Vector3 vector3 = (Vector3)value;
             VectorConverter.WriteVector(writer, (float)vector3.x, (float)vector3.y, new float?((float)vector3.z), new float?());
         }
         else if (type == VectorConverter.V4)
         {
             Vector4 vector4 = (Vector4)value;
             VectorConverter.WriteVector(writer, (float)vector4.x, (float)vector4.y, new float?((float)vector4.z), new float?((float)vector4.w));
         }
         else
         {
             writer.WriteNull();
         }
     }
 }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            float?nullable;

            if (value == null)
            {
                writer.WriteNull();
                return;
            }
            Type type = value.GetType();

            if (type == VectorConverter.V2)
            {
                Vector2 vector2 = (Vector2)value;
                nullable = null;
                float?nullable1 = nullable;
                nullable = null;
                VectorConverter.WriteVector(writer, vector2.x, vector2.y, nullable1, nullable);
                return;
            }
            if (type == VectorConverter.V3)
            {
                Vector3 vector3 = (Vector3)value;
                nullable = null;
                VectorConverter.WriteVector(writer, vector3.x, vector3.y, new float?(vector3.z), nullable);
                return;
            }
            if (type != VectorConverter.V4)
            {
                writer.WriteNull();
                return;
            }
            Vector4 vector4 = (Vector4)value;

            VectorConverter.WriteVector(writer, vector4.x, vector4.y, new float?(vector4.z), new float?(vector4.w));
        }