Ejemplo n.º 1
0
            IEnumerator DoExecute(SystemContext self, SystemContext next, SystemContextContainer container)
            {
                self._isCurrent = false;

                yield return(OnCurPreUnload?.Invoke());

                yield return(self.DoPreUnload());

                yield return(OnCurUnload?.Invoke());

                yield return(self.DoUnload());

                yield return(OnCurUnloaded?.Invoke());

                yield return(self.DoUnloaded());

                yield return(OnNextPreLoad?.Invoke());

                yield return(next.DoPreLoad(container));

                yield return(OnNextLoad?.Invoke());

                yield return(next.DoLoad(container));

                yield return(OnNextLoaded?.Invoke());

                yield return(next.DoLoaded(container));

                next._isCurrent = true;
            }
Ejemplo n.º 2
0
        protected override IEnumerator DoPreLoad(SystemContextContainer container)
        {
            CameraManager.I.RequestCameraState(CameraStateType.Title);

            _titleUseCase = new TitleUseCase(titlePresenter, _stageSelectPresenter, OnChangeRace);

            yield break;
        }
Ejemplo n.º 3
0
        protected override IEnumerator DoPreLoad(SystemContextContainer container)
        {
            RaceContextContainer raceContextContainer = container as RaceContextContainer;

            _useCase = new ResultUseCase(resultPresenter, raceContextContainer, OnChangeTitle);
            CameraManager.I.RequestCameraState(CameraStateType.Sky);

            yield break;
        }
Ejemplo n.º 4
0
        protected override IEnumerator DoPreLoad(SystemContextContainer container)
        {
            TitleContextContainer titleContextContainer = container as TitleContextContainer;

            _useCase = new RaceUseCase(racePresenter, _racePlayerQWOP, _raceGoal, OnChangeResult, OnChangeTitle, titleContextContainer.SelectRace);

            CameraManager.I.RequestCameraState(CameraStateType.Race);

            for (int i = 0; i < _stageList.Count; i++)
            {
                _stageList[i].SetActive(i == titleContextContainer.SelectRace);
            }

            yield break;
        }
Ejemplo n.º 5
0
        protected void ChangeContext(
            SystemContext next,
            SystemContextContainer container         = null,
            System.Func <IEnumerator> onCurPreUnload = null,
            System.Func <IEnumerator> onCurUnload    = null,
            System.Func <IEnumerator> onCurUnloaded  = null,
            System.Func <IEnumerator> onNextPreLoad  = null,
            System.Func <IEnumerator> onNextLoad     = null,
            System.Func <IEnumerator> onNextLoaded   = null)
        {
            SystemContextChanger changer = new SystemContextChanger();

            changer.OnCurPreUnload = onCurPreUnload;
            changer.OnCurUnload    = onCurUnload;
            changer.OnCurUnloaded  = onCurUnloaded;
            changer.OnNextPreLoad  = onNextPreLoad;
            changer.OnNextLoad     = onNextLoad;
            changer.OnNextLoaded   = onNextLoaded;

            changer.Execute(this, next, container);
        }
Ejemplo n.º 6
0
 protected override IEnumerator DoLoaded(SystemContextContainer container)
 {
     yield break;
 }
Ejemplo n.º 7
0
 protected virtual IEnumerator DoLoaded(SystemContextContainer container)
 {
     yield break;
 }
Ejemplo n.º 8
0
 public void Execute(SystemContext self, SystemContext next, SystemContextContainer container)
 {
     AbsolutelyActiveCoroutine.Subscribe(DoExecute(self, next, container));
 }