private void ReadValues() { for (int i = 0; i < options.Length; i++) { Option option = options[i]; OptionPanelController panel = UIControl.optionPanelRel[option]; switch (option.myType) { case Option.OptionType.Slider: break; case Option.OptionType.Toggle: Option.Toggle toggle = option.myToggle; switch (option.name) { case "Game Mode": Debug.Log(option.name + toggle.defValue); toggle.defValue = GameManager.Instance.CurrenMode == GameManager.Mode.Rings; Debug.Log(option.name + toggle.defValue); panel.SetUIValue(toggle.defValue); break; } break; } } }
private void HandleOptionUpdated(params object[] args) { Option option = (Option)args[0]; //Debug.Log(option.name + " updated!"); switch (option.myType) { case Option.OptionType.Slider: Option.Slider slider = option.mySlider; switch (option.name) { case "Forward/Backward Speed": playerControl.movementForwardSpeed = slider.value; break; case "Rotation Speed": playerControl.rotationAmount = slider.value; break; case "Side Movement Speed": playerControl.sideMovementAmount = slider.value; break; case "Ascend/Descend Speed": playerControl.forceUpHover = mediumForceHover + slider.value; playerControl.forceDownHover = mediumForceHover - slider.value; break; } break; case Option.OptionType.Toggle: Option.Toggle toggle = option.myToggle; switch (option.name) { case "Game Mode": notifier.Notify(toggle.value ? GameManager.ON_START_PLAY : GameManager.ON_START_FLY); break; } break; } }
public void SetValues(Option option) { this.option = option; string name = option.name; switch (option.myType) { case Option.OptionType.Slider: Option.Slider sldr = option.mySlider; SetUIValues(name, sldr.minValue, sldr.maxValue, sldr.defValue); break; case Option.OptionType.Toggle: Option.Toggle tggl = option.myToggle; SetUIValues(name, tggl.defValue); break; } slider.onValueChanged.AddListener(delegate { SliderChangeValue(option.myType); notifier.Notify(OptionsInterface.ON_OPTION_UPDATED, this.option); }); }