Example #1
0
        protected override bool Init()
        {
            UISortieShipCharacter uIShipCharacter = SortieMapTaskManager.GetUIShipCharacter();

            uIShipCharacter.SetShipData(SortieBattleTaskManager.GetMapManager().Deck.GetFlagShip());
            TutorialModel tutorial = SortieBattleTaskManager.GetMapManager().UserInfo.Tutorial;

            if (SortieBattleTaskManager.GetMapManager().UserInfo.StartMapCount >= 5)
            {
                SingletonMonoBehaviour <TutorialGuideManager> .Instance.CheckAndShowFirstTutorial(tutorial, TutorialGuideManager.TutorialID.BattleShortCutInfo, null, delegate
                {
                    _disShipMoveObserver = Observable.FromCoroutine((UniRx.IObserver <bool> observer) => ShipMove(observer)).Subscribe(delegate
                    {
                        SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.Event);
                    });
                });
            }
            else
            {
                _disShipMoveObserver = Observable.FromCoroutine((UniRx.IObserver <bool> observer) => ShipMove(observer)).Subscribe(delegate
                {
                    SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.Event);
                });
            }
            return(true);
        }
        private void OnEventFinished(bool isBattle)
        {
            if (isBattle)
            {
                SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.Formation);
                return;
            }
            MapManager mapManager = SortieBattleTaskManager.GetMapManager();

            if (!mapManager.IsNextFinal())
            {
                Dlg.Call(ref _actOnGoNext, ShipRecoveryType.None);
            }
            else
            {
                SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.Result);
            }
        }
        private void GoNext(ShipRecoveryType iRecoveryType)
        {
            MapManager mm = SortieBattleTaskManager.GetMapManager();

            if (mm.GetNextCellCandidate().get_Count() != 0)
            {
                SortieMapTaskManager.Instance._ctrlActiveBranching = new CtrlActiveBranching(mm.GetNextCellCandidate(), delegate(int x)
                {
                    mm.GoNext(iRecoveryType, x);
                    SortieMapTaskManager.Instance.UpdateUIMapManager();
                    SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.SortieMapTaskManagerMode_ST);
                    Mem.DelIDisposableSafe <CtrlActiveBranching>(ref SortieMapTaskManager.Instance._ctrlActiveBranching);
                });
            }
            else
            {
                mm.GoNext(iRecoveryType);
                SortieMapTaskManager.Instance.UpdateUIMapManager();
                SortieMapTaskManager.ReqMode(SortieMapTaskManagerMode.SortieMapTaskManagerMode_ST);
            }
        }