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); }
public static Color RandomColor() { ColorEnum randomColor = EnumExtend.GetRandom <ColorEnum>(); return(GetColorAt(randomColor)); }