Exemple #1
0
        private static string GetValue(object instance, Type fieldType, FieldInfo field)
        {
            string result = null;
            object val    = field.GetValue(instance);

            if (val == null)
            {
                return(null);
            }

            if (fieldType == typeof(Shader) || fieldType == typeof(Texture2D))
            {
                return(null);
            }

            if (fieldType.IsPrimitive)
            {
                result = val.ToString();
            }
            else if (fieldType.IsEnum)
            {
                result = ((int)val).ToString();
            }
            else if (fieldType == typeof(Vector3))
            {
                Vector3 v3 = (Vector3)val;
                result = Util.ConvertVector3ToString(v3);
            }
            else if (fieldType == typeof(Color) || fieldType == typeof(Color32))
            {
                Color32 color = (Color)val;
                result = Util.ConvertColor32ToString(color);
            }
            else if (fieldType == typeof(AnimationCurve))
            {
                AnimationCurve curve = (AnimationCurve)val;
                result = Util.ConvertAnimationCurveToString(curve);
            }
            else if (fieldType == typeof(Transform))
            {
                Vector3 v3 = ((Transform)val).position;
                result = Util.ConvertVector3ToString(v3);
            }

            return(result);
        }