void ToggleChange(bool isOn)
    {
        boolProperty.propertyValue = isOn;

        if (boolProperty.graphicsFunction != null)
        {
            boolProperty.graphicsFunction.Invoke(boolProperty.callObject, new object[] { toggle.isOn });
        }

        SavedTurbineProperties.SaveValue(boolProperty.propertyName, isOn);
    }
    void SliderChange(int value)
    {
        inputField.text           = value.ToString();
        intProperty.propertyValue = value;
        if (intProperty.graphicsFunction != null)
        {
            intProperty.graphicsFunction.Invoke(intProperty.callObject, new object[] { Mathf.RoundToInt(slider.value) });
        }

        SavedTurbineProperties.SaveValue(intProperty.propertyName, value);
    }
    void SliderChange(float value)
    {
        inputField.text             = value.ToString();
        floatProperty.propertyValue = value;

        if (floatProperty.graphicsFunction != null)
        {
            floatProperty.graphicsFunction.Invoke(floatProperty.callObject, new object[] { slider.value });
        }


        SavedTurbineProperties.SaveValue(floatProperty.propertyName, value);
    }
    void MaxSliderChange(float value)
    {
        if (minSlider.value > maxSlider.value)
        {
            maxSlider.value    = minSlider.value;
            maxInputField.text = minSlider.value.ToString();
        }
        else
        {
            maxInputField.text = value.ToString();
        }

        if (minMaxFloatProperty.maxGraphicsFunction != null)
        {
            minMaxFloatProperty.maxGraphicsFunction.Invoke(minMaxFloatProperty.callObject, new object[] { maxSlider.value });
        }

        minMaxFloatProperty.maxPropertyValue = maxSlider.value;
        minMaxFloatProperty.minLastSetting   = maxSlider.value;

        SavedTurbineProperties.SaveValue(minMaxFloatProperty.maxPropertyName, value);
    }
    void MinSliderChange(float value)
    {
        Vector3 pos = minSlider.targetGraphic.transform.position;

        if (minSlider.value > maxSlider.value)
        {
            minSlider.value    = maxSlider.value;
            minInputField.text = maxSlider.value.ToString();
        }
        else
        {
            minInputField.text = value.ToString();
        }

        if (minMaxFloatProperty.minGraphicsFunction != null)
        {
            minMaxFloatProperty.minGraphicsFunction.Invoke(minMaxFloatProperty.callObject, new object[] { minSlider.value });
        }

        minMaxFloatProperty.minPropertyValue = minSlider.value;
        SavedTurbineProperties.SaveValue(minMaxFloatProperty.minPropertyName, value);
    }