User Tools

Site Tools


api:umfconfig:parser_umfconfigfloat

Description:
Default float parser.

Added In: v0.45

Function

    public class UMFConfigFloat : UMFConfigParser<float>
    {
        public float DefaultValue;
        public float MinValue;
        public float MaxValue;
        public int Decimals;
        public float VanillaValue;
        public bool RequiresRestart;
        public float[] AllowedValues;

        public UMFConfigFloat(float defaultValue = default(float), float minValue = default(float), float maxValue = default(float), int decimals = 1, float vanillaValue = default(float), bool requiresRestart = false, params float[] allowedValues)
        {
            DefaultValue = defaultValue;
            MinValue = Math.Min(minValue, maxValue);
            MaxValue = Math.Max(minValue, maxValue);
            Decimals = decimals;
            VanillaValue = vanillaValue;
            RequiresRestart = requiresRestart;
            AllowedValues = allowedValues;
        }

        public override float Parse(string value)
        {
            if (!float.TryParse(value, out float result)) result = DefaultValue;
            return result;
        }

        public override string ToString()
        {
            return DefaultValue.ToString();
        }

        public override string Default()
        {
            return DefaultValue.ToString();
        }

        public override string Range()
        {
            return (MaxValue != default(float) ? MinValue.ToString() + "," + MaxValue.ToString() + "," + Decimals.ToString() : null);
        }

        public override string Vanilla()
        {
            return (VanillaValue != default(float) ? VanillaValue.ToString() : null);
        }

        public override string Allowed()
        {
            return (AllowedValues.Length > 0 ? string.Join(",", AllowedValues.Select(x => x.ToString()).ToArray()) : null);
        }

        public override string Restart()
        {
            return RequiresRestart.ToString();
        }
    }



Usage

//Coming soon



Examples

//Coming soon


This topic does not exist yet

You've followed a link to a topic that doesn't exist yet. If permissions allow, you may create it by clicking on Create this page.

api/umfconfig/parser_umfconfigfloat.txt · Last modified: 2019/06/29 23:37 by umfdev