Example #1
0
        private object GetValue(Component component)
        {
            if (primitiveStruct != null)
            {
                switch (primitiveStruct.value)
                {
                case PrimitiveEnum.Bool:
                    return(boolValue != null ? boolValue.value : false);

                case PrimitiveEnum.Enum:
                    int index = 0;
                    if (nameField == null || enumValue == null)
                    {
                        LogManager.LogWarning("Enum problem");
                        return(index);
                    }

                    if (ReflectionExtend.GetField(component, nameField.value, out object result))
                    {
                        index = EnumExtend.ParseEnum(enumValue.value, result.GetType());
                    }
                    else
                    {
                        LogManager.LogWarning("Enum problem");
                    }
                    return(index);

                case PrimitiveEnum.Float:
                    return(floatValue != null ? floatValue.value : 0f);

                case PrimitiveEnum.Integer:
                    return(integerValue != null ? integerValue.value : 0);

                case PrimitiveEnum.String:
                    return(stringValue != null ? stringValue.value : "");
                }
            }
            return(null);
        }
Example #2
0
        public static Color RandomColor()
        {
            ColorEnum randomColor = EnumExtend.GetRandom <ColorEnum>();

            return(GetColorAt(randomColor));
        }