public void ReplacePauseListener(PauseStateChangedDelegate newListener) { var index = InputComponentsLookup.PauseListener; var component = CreateComponent <PauseListenerComponent>(index); component.listener = newListener; ReplaceComponent(index, component); }
//Slider private void AddSliderListener(Transform uiTran) { Slider slider = uiTran.Find("Slider").GetComponent <Slider>(); slider.onValueChanged.AddListener(val => { this._contexts.game.ReplaceJumpInTime((long)slider.value); }); PauseStateChangedDelegate pauseStateAction = () => { slider.gameObject.SetActive(Contexts.sharedInstance.input.isPause); if (this._contexts.game.hasTick) { slider.maxValue = Contexts.sharedInstance.game.tick.currentTick; slider.value = Contexts.sharedInstance.game.tick.currentTick; } }; pauseStateAction();//初始化 this._contexts.input.CreateEntity().AddPauseListener(pauseStateAction); }