public bool Run()
        {
            KeyControl keyControl = BattleTaskManager.GetKeyControl();

            if (this._isInputPossible && keyControl.GetDown(KeyControl.KeyName.SANKAKU))
            {
                this.Hide();
                return(true);
            }
            return(false);
        }
 protected override bool Init()
 {
     _clsResultModel = BattleTaskManager.GetBattleManager().GetBattleResult();
     _clsMapManager  = SortieBattleTaskManager.GetMapManager();
     _clsInput       = BattleTaskManager.GetKeyControl();
     _clsState       = new StatementMachine();
     if (BattleTaskManager.GetRootType() == Generics.BattleRootType.Rebellion)
     {
         if (_clsMapManager.IsNextFinal())
         {
             if (_clsResultModel.WinRank == BattleWinRankKinds.B || _clsResultModel.WinRank == BattleWinRankKinds.A || _clsResultModel.WinRank == BattleWinRankKinds.S)
             {
                 _clsState.AddState(_initThalassocracyProd, _updateThalassocracyProd);
             }
             else
             {
                 _clsState.AddState(_initChkNextCell, _updateChkNextCell);
             }
         }
         else
         {
             _clsState.AddState(_initChkNextCell, _updateChkNextCell);
         }
     }
     else if (_clsResultModel.FirstAreaClear && _clsResultModel.FirstClear)
     {
         _clsState.AddState(_initThalassocracyProd, _updateThalassocracyProd);
     }
     else if (!_clsResultModel.FirstAreaClear && _clsResultModel.FirstClear)
     {
         _clsState.AddState(_initMapClearProd, _updateMapClearProd);
     }
     else if (!_clsResultModel.FirstClear && _clsResultModel.NewOpenMapIDs.Length > 0)
     {
         _clsState.AddState(_initMapOpenProd, _updateMapOpenProd);
     }
     else if (_clsResultModel.SPoint > 0)
     {
         _clsState.AddState(_initStrategyPointProd, _updateStrategyPointProd);
     }
     else if (_clsResultModel.GetAreaRewardItems() != null)
     {
         _clsState.AddState(InitShortRewardGet, UpdateShortRewardGet);
     }
     else
     {
         _clsState.AddState(_initChkNextCell, _updateChkNextCell);
     }
     return(true);
 }
        private IEnumerator CreateFlagshipWreck(IObserver <bool> observer)
        {
            _prodFlagshipWreck = ProdFlagshipWreck.Instantiate(parent: BattleTaskManager.GetBattleCameras().cutInCamera.transform, prefab: ((Component)BattleTaskManager.GetPrefabFile().prefabProdFlagshipWreck).GetComponent <ProdFlagshipWreck>(), flagShip: BattleTaskManager.GetBattleManager().Ships_f[0], deck: SortieBattleTaskManager.GetMapManager().Deck, input: BattleTaskManager.GetKeyControl(), isBattleCut: false);
            yield return(new WaitForEndOfFrame());

            observer.OnNext(value: true);
            observer.OnCompleted();
        }
        protected override bool Init()
        {
            BattleManager battleManager = BattleTaskManager.GetBattleManager();

            if (battleManager.GetEscapeCandidate() != null)
            {
                this._prodEscortShipEvacuation = ProdEscortShipEvacuation.Instantiate((!(this._prefabEscortShipEvacuation != null)) ? PrefabFile.Load <ProdEscortShipEvacuation>(PrefabFileInfos.BattleProdEscortShipEvacuation) : this._prefabEscortShipEvacuation.GetComponent <ProdEscortShipEvacuation>(), BattleTaskManager.GetBattleCameras().cutInCamera.get_transform(), BattleTaskManager.GetKeyControl(), BattleTaskManager.GetBattleManager().GetEscapeCandidate(), false);
                this._prodEscortShipEvacuation.Init();
                this._prodEscortShipEvacuation.Play(new DelDecideAdvancingWithdrawalButton(this.DecideAdvancinsWithDrawalBtn));
            }
            else
            {
                if (battleManager.Ships_f[0].DmgStateEnd == DamageState_Battle.Taiha && ShipUtils.HasRepair(battleManager.Ships_f[0]))
                {
                    BattleTaskManager.ReqPhase(BattlePhase.AdvancingWithdrawalDC);
                }
                else
                {
                    BattleTaskManager.ReqPhase(BattlePhase.AdvancingWithdrawal);
                }
                base.ImmediateTermination();
            }
            return(true);
        }
        private IEnumerator PlayReceiveShip()
        {
            _clsRewardShips    = new Reward_Ship[_listRewardModels.Count];
            _clsRewardShips[0] = (Reward_Ship)_listRewardModels[0];
            yield return(new WaitForSeconds(0.5f));

            _prodReceiveShip = ProdBattleReceiveShip.Instantiate(PrefabFile.Load <ProdBattleReceiveShip>(PrefabFileInfos.CommonProdBattleReceiveShip), BattleTaskManager.GetBattleCameras().cutInCamera.transform, _clsRewardShips[0], 120, BattleTaskManager.GetKeyControl());
            yield return(new WaitForSeconds(0.1f));

            _prodReceiveShip.Play(delegate
            {
                BattleTaskManager.ReqPhase(BattleUtils.NextPhase(BattlePhase.ClearReward));
            });
        }