Esempio n. 1
0
 public CheckGuess(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd, bool _isChallenged)
     : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
 {
     name = Phases.GuessCheck;
     isCurrentPlayerChallenged = _isChallenged;
     pot = battleManager.pot;
 }
    private static void MapDescend(EventMoveMap eventMoveMap, MapManager mapManager)
    {
        AllEventManager   allEventMgr       = AllEventManager.GetInstance();
        AllSceneManager   allSceneMgr       = AllSceneManager.GetInstance();
        PlayerTrainerData playerTrainerData = PlayerTrainerData.GetInstance();
        EnemyTrainerData  enemyTrainerData  = EnemyTrainerData.GetInstance();
        PlayerBattleData  playerBattleData  = PlayerBattleData.GetInstance();
        EnemyBattleData   enemyBattleData   = EnemyBattleData.GetInstance();

        playerTrainerData.nowMapFloor_ -= 1;

        mapManager.GetPlayerMoveMap().SetStartPos(new Vector3(9, 9.2f, -1));

        //フェードアウト
        allEventMgr.EventSpriteRendererSet(
            allSceneMgr.GetPublicFrontScreen().GetEventScreenSprite()
            , null
            , new Color(allSceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, allSceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, allSceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 255)
            );
        allEventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
        allEventMgr.AllUpdateEventExecute(0.4f);

        //シーンの切り替え
        allEventMgr.SceneChangeEventSet(SceneState.Map, SceneChangeMode.Change);
    }
Esempio n. 3
0
    public Challenge(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
        : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
    {
        name = Phases.Challenge;

        npcHand.onChallengeAccepted += ChallengeHuman;
        npcHand.onChallengePassed   += PassChallengingHuman;
    }
Esempio n. 4
0
 public TurnEnd(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd, bool _isWon)
     : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
 {
     name           = Phases.EndTurn;
     isChallengeWon = _isWon;
     table          = battleManager.table;
     pot            = battleManager.pot;
     infoCard       = System.Array.Find(battleManager.infoCardsPrefabs, c => c.cardType == InfoType.TurnEnd);
 }
Esempio n. 5
0
    public CardPlay(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
        : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
    {
        name = Phases.CardPick;

        playerHand.humanCardPlayed += OnHumanCardPlayed;
        npcHand.onCardPlayed       += OnCardPlayed;
        infoCard = System.Array.Find(battleManager.infoCardsPrefabs, c => c.cardType == InfoType.CardPick);
    }
Esempio n. 6
0
    static public EnemyBattleData GetInstance()
    {
        if (instance_ != null)
        {
            return(instance_);
        }

        instance_ = new EnemyBattleData();
        return(instance_);
    }
Esempio n. 7
0
    public CardDeal(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
        : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
    {
        name = Phases.CardDeal;

        player = battleManager.playerTurn;

        battleManager.onDealEnded += OnCardDealEnded;
        infoCard = System.Array.Find(battleManager.infoCardsPrefabs, c => c.cardType == InfoType.CardDeal);
    }
Esempio n. 8
0
 public Phase(BattleManager _battleManager, Stats _playerStats, EnemyBattleData _npcData, PlayerHand _playerHand, NPCHand _npcHand)
 {
     battleManager    = _battleManager;
     npcData          = _npcData;
     playerStats      = _playerStats;
     playerHand       = _playerHand;
     npcHand          = _npcHand;
     startingHpPlayer = playerStats.hP;
     currentHpPlayer  = battleManager.playerCurrentHP;
     startingHpNPC    = npcData.health;
     currentHpNPC     = battleManager.npcCurrentHP;
     stage            = Stages.Enter;
 }
Esempio n. 9
0
    float exitTimer = 2f;   // how long to wait before exiting this phase

    public Start(BattleManager _battleManager, Stats _playerStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
        : base(_battleManager, _playerStats, _npcData, _plrHnd, _npcHnd)
    {
        name = Phases.BattleStart;

        cardDealer = battleManager.dealer;
        //npcCard = battleManager.nPCCardDisplay;
        //npcNameDisplay = battleManager.nPCNameDisplay;
        nPCDisplay = battleManager.nPCDisplay;

        roundNumberDisplay   = battleManager.roundNumberDisplay;
        targetNumberDisplay  = battleManager.targetNumberDisplay;
        currentNumberDisplay = battleManager.currentNumberDisplay;

        infoCard = System.Array.Find(battleManager.infoCardsPrefabs, c => c.cardType == InfoType.NewBattle);
    }
    public IProcessState Update(BattleManager mgr)
    {
        if (AllEventManager.GetInstance().EventUpdate())
        {
            eventEnd_ = true;
        }

        //敵の思考時間の処理
        EnemyBattleData.GetInstance().ThinkingTimeCounter();

        //思考時間が終わっていたら
        if (EnemyBattleData.GetInstance().ThinkingTimeEnd() &&
            eventEnd_)
        {
            int commandRandomResult = AllSceneManager.GetInstance().GetRandom().Next(0, 100);

            //エネミーの行動の決定
            if (commandRandomResult < EnemyTrainerData.GetInstance().GetAttackRate())
            {
            }
            else if (commandRandomResult < EnemyTrainerData.GetInstance().GetAttackRate() + EnemyTrainerData.GetInstance().GetTradeRate())
            {
                //タイプ相性の測定
                int[] typeSimillarResult = new int[2] {
                    0, 0
                };
                int[] monsterNumbers = new int[2] {
                    1, 2
                };

                //先頭以外で測定
                for (int i = 0; i < EnemyBattleData.GetInstance().GetMonsterDatasLength() - 1; ++i)
                {
                    //戦えたら、None以外だったら
                    if (EnemyBattleData.GetInstance().GetMonsterDatas(i).battleActive_ &&
                        EnemyBattleData.GetInstance().GetMonsterDatas(i).tribesData_.monsterNumber_ != 0)
                    {
                        {
                            int simillarResult = PlayerBattleData.GetInstance().GetMonsterDatas(0).ElementSimillarCheckerForValue(EnemyBattleData.GetInstance().GetMonsterDatas(i).tribesData_.firstElement_);

                            typeSimillarResult[i] += simillarResult;
                        }
                        {
                            int simillarResult = PlayerBattleData.GetInstance().GetMonsterDatas(0).ElementSimillarCheckerForValue(EnemyBattleData.GetInstance().GetMonsterDatas(i).tribesData_.secondElement_);

                            typeSimillarResult[i] += simillarResult;
                        }
                    }
                }

                //タイプ相性が良い順にソート
                t13.Utility.SimpleHiSort2Index(typeSimillarResult, monsterNumbers);

                //交換するモンスターの選択
                for (int i = 0; i < monsterNumbers.Length; ++i)
                {
                    //Noneまたは、戦えなかったら
                    if (EnemyBattleData.GetInstance().GetMonsterDatas(monsterNumbers[i]).tribesData_.monsterNumber_ == (int)MonsterTribesDataNumber.None ||
                        !EnemyBattleData.GetInstance().GetMonsterDatas(monsterNumbers[i]).battleActive_
                        )
                    {
                        continue;
                    }

                    EnemyBattleData.GetInstance().changeMonsterNumber_ = monsterNumbers[i];

                    EnemyBattleData.GetInstance().changeMonsterActive_ = true;

                    //ループの終了
                    i = monsterNumbers.Length;
                }
            }

            //現在、場に出ているモンスターのデータの取得
            IMonsterData enemyMD  = EnemyBattleData.GetInstance().GetMonsterDatas(EnemyBattleData.GetInstance().changeMonsterNumber_);
            IMonsterData playerMD = PlayerBattleData.GetInstance().GetMonsterDatas(0);

            const int EFFECT_ATTACK_SIZE  = 4;
            int       nowEffectAttackSize = 0;
            int[]     skillDamages        = new int[EFFECT_ATTACK_SIZE] {
                0, 0, 0, 0,
            };
            int[] skillNumbers = new int[EFFECT_ATTACK_SIZE] {
                0, 0, 0, 0,
            };

            //攻撃技の威力計算
            for (int i = 0; i < enemyMD.GetSkillSize(); ++i)
            {
                //HPへのダメージ技以外だったら
                if (enemyMD.GetSkillDatas(i).effectValueType_.state_ != EffectValueTypeState.HitPointDamage)
                {
                    continue;
                }

                skillDamages[nowEffectAttackSize] = MonsterData.TestDamageCalculate(enemyMD, playerMD, enemyMD.GetSkillDatas(i));
                skillNumbers[nowEffectAttackSize] = i;
                nowEffectAttackSize += 1;
            }

            //ダメージ量を大きい順にソート
            for (int i = 0; i < nowEffectAttackSize - 1; ++i)
            {
                for (int j = i + 1; j < nowEffectAttackSize; ++j)
                {
                    if (skillDamages[i] < skillDamages[j])
                    {
                        {
                            int tmp = skillDamages[i];
                            skillDamages[i] = skillDamages[j];
                            skillDamages[j] = tmp;
                        }
                        {
                            int tmp = skillNumbers[i];
                            skillNumbers[i] = skillNumbers[j];
                            skillNumbers[j] = tmp;
                        }
                    }
                }
            }

            //一番の火力の高い技を選択
            for (int i = 0; i < skillNumbers.Length; ++i)
            {
                //if (enemyMD.GetSkillDatas(skillNumbers[i]).nowPlayPoint_ > 0) {
                //	mgr.enemySelectSkillNumber_ = skillNumbers[i];
                //	i = skillNumbers.Length;
                //}
                mgr.enemySelectSkillNumber_ = skillNumbers[i];
                i = skillNumbers.Length;
            }

            //こんらん状態であれば
            if (enemyMD.battleData_.HaveAbnormalType(AbnormalType.Confusion))
            {
                //2/10の確立
                if (AllSceneManager.GetInstance().GetRandom().Next(0, 10) < 3)
                {
                    mgr.enemySelectSkillNumber_ = AllSceneManager.GetInstance().GetRandom().Next(0, skillNumbers.Length);
                }
            }

            //気まぐれで変化
            //3/10の確立
            if (AllSceneManager.GetInstance().GetRandom().Next(0, 10) < 3)
            {
                mgr.enemySelectSkillNumber_ = AllSceneManager.GetInstance().GetRandom().Next(0, skillNumbers.Length);
            }

            //dpが100以上だったら
            if (EnemyBattleData.GetInstance().GetDreamPoint() >= 100)
            {
                //先頭がパワーアップしていなかったら
                if (!EnemyBattleData.GetInstance().GetMonsterDatas(0).battleData_.HaveAbnormalType(AbnormalType.Hero))
                {
                    //パワーアップするか否かのフラグの設定
                    EnemyBattleData.GetInstance().dreamSyncronize_ = true;
                }
            }

            //ppの消費
            //ISkillData enemySkillData = enemyMD.GetSkillDatas(mgr.enemySelectSkillNumber_);
            //enemySkillData.nowPlayPoint_ -= 1;

            eventEnd_ = false;

            return(mgr.nowProcessState().NextProcess());
        }

        //やけどのダメージ処理
        if (mgr.BurnsDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts()))
        {
            return(new CommandEventExecuteProcess());
        }

        if (EnemyBattleData.GetInstance().PoinsonCounter())
        {
            //どくのダメージ処理
            mgr.PoisonDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts());
            if (mgr.PoisonDamageDown())
            {
                return(new CommandEventExecuteProcess());
            }
        }

        return(this);
    }
    public IProcessState Update(BattleManager mgr)
    {
        ////DPの演出のイベント
        //mgr.PlayerEnemyStatusInfoPartsDPEffect();

        //ウィンドウの表示
        mgr.GetNovelWindowParts().gameObject.SetActive(true);

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());

        //パワーアップしていたら
        if (PlayerBattleData.GetInstance().dreamSyncronize_ == true)
        {
            //dpの初期化
            PlayerBattleData.GetInstance().DreamPointReset();
            PlayerBattleData.GetInstance().dreamSyncronize_ = false;

            //ゆめの文字色の変更
            mgr.GetDreamCommandSprite().color = new Color32(255, 255, 255, 255);

            //DPの演出のイベント
            mgr.GetPlayerDreamPointInfoParts().DPEffectEventSet(PlayerBattleData.GetInstance().GetDreamPoint());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());

            //BGMの音量の減少
            AllEventManager.GetInstance().BGMAudioVolumeChangeEventSet(0.15f);

            //パワーアップの演出
            mgr.GetDreamEffectParts().DreamSyncronizeEventSet(PlayerBattleData.GetInstance().GetMonsterDatas(0), new Vector3(-13.0f, 0.8f, -1.0f), new Vector3(13.0f, 0.8f, -1.0f));

            //画像の変更
            {
                List <Sprite> sprites = new List <Sprite>();
                sprites.Add(PlayerBattleData.GetInstance().GetMonsterDatas(0).tribesData_.backDreamTex_);

                AllEventManager.GetInstance().EventSpriteRendererSet(mgr.GetPlayerMonsterParts().GetEventMonsterSprite(), sprites);
                AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
                AllEventManager.GetInstance().AllUpdateEventExecute();
            }

            //BGMの変更
            AllEventManager.GetInstance().BGMAudioClipChangeEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathDreamers_Rock()));

            //BGMの再生
            AllEventManager.GetInstance().BGMAudioVolumeChangeEventSet(0.3f);
            AllEventManager.GetInstance().BGMAudioPlayEventSet();

            //能力変化の更新
            string abnormalStateContext = new AddAbnormalTypeState(AddAbnormalType.Hero).AddAbnormalTypeExecute(PlayerBattleData.GetInstance().GetMonsterDatas(0));

            //文字列のイベント
            AllEventManager.GetInstance().EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText(), abnormalStateContext);
            AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            AllEventManager.GetInstance().AllUpdateEventExecute(mgr.GetEventContextUpdateTime());

            //状態異常のイベントのセット
            PlayerBattleData.GetInstance().GetMonsterDatas(0).battleData_.AbnormalSetStatusInfoPartsEventSet(mgr.GetPlayerStatusInfoParts());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());

            //ねむりの終了処理
            mgr.SleepProcessEnd();

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());
        }

        //パワーアップしていたら
        if (EnemyBattleData.GetInstance().dreamSyncronize_ == true)
        {
            //dpの初期化
            EnemyBattleData.GetInstance().DreamPointReset();
            EnemyBattleData.GetInstance().dreamSyncronize_ = false;

            //DPの演出のイベント
            mgr.GetEnemyDreamPointInfoParts().DPEffectEventSet(EnemyBattleData.GetInstance().GetDreamPoint());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());

            //BGMの音量の減少
            AllEventManager.GetInstance().BGMAudioVolumeChangeEventSet(0.15f);

            //パワーアップの演出
            mgr.GetDreamEffectParts().DreamSyncronizeEventSet(EnemyBattleData.GetInstance().GetMonsterDatas(0), new Vector3(13.0f, 0.8f, -1.0f), new Vector3(-13.0f, 0.8f, -1.0f));

            //画像の変更
            {
                List <Sprite> sprites = new List <Sprite>();
                sprites.Add(EnemyBattleData.GetInstance().GetMonsterDatas(0).tribesData_.frontDreamTex_);

                AllEventManager.GetInstance().EventSpriteRendererSet(mgr.GetEnemyMonsterParts().GetEventMonsterSprite(), sprites);
                AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
                AllEventManager.GetInstance().AllUpdateEventExecute();
            }

            //BGMの再生
            AllEventManager.GetInstance().BGMAudioVolumeChangeEventSet(0.3f);

            //能力変化の更新
            string abnormalStateContext = new AddAbnormalTypeState(AddAbnormalType.Hero).AddAbnormalTypeExecute(EnemyBattleData.GetInstance().GetMonsterDatas(0));

            //文字列のイベント
            AllEventManager.GetInstance().EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText(), abnormalStateContext);
            AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            AllEventManager.GetInstance().AllUpdateEventExecute(mgr.GetEventContextUpdateTime());

            //状態異常のイベントのセット
            EnemyBattleData.GetInstance().GetMonsterDatas(0).battleData_.AbnormalSetStatusInfoPartsEventSet(mgr.GetEnemyStatusInfoParts());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());
        }

        //交換されていたら
        if (PlayerBattleData.GetInstance().changeMonsterActive_ == true)
        {
            PlayerBattleData.GetInstance().MonsterChangeEventSet(mgr);
        }

        //交換されていたら
        if (EnemyBattleData.GetInstance().changeMonsterActive_ == true)
        {
            EnemyBattleData.GetInstance().MonsterChangeEventSet(mgr);
        }

        //現在、場に出ているモンスターのデータの取得
        IMonsterData enemyMonsterData  = EnemyBattleData.GetInstance().GetMonsterDatas(0);
        IMonsterData playerMonsterData = PlayerBattleData.GetInstance().GetMonsterDatas(0);

        //現在、場に出ているモンスターの選択技のデータの取得
        ISkillData enemySkillData  = enemyMonsterData.GetSkillDatas(mgr.enemySelectSkillNumber_);
        ISkillData playerSkillData = playerMonsterData.GetSkillDatas(mgr.playerSelectSkillNumber_);

        //技の優先度で行動順を決める
        if (enemySkillData.triggerPriority_ < playerSkillData.triggerPriority_)
        {
            //プレイヤーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetPlayerEffectParts()
                , mgr.GetEnemyEffectParts()
                , mgr.GetEnemyMonsterParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , PlayerBattleData.GetInstance()
                , EnemyBattleData.GetInstance()
                , playerMonsterData, playerSkillData, enemyMonsterData
                );
            //エネミーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetEnemyEffectParts()
                , mgr.GetPlayerEffectParts()
                , mgr.GetPlayerMonsterParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , EnemyBattleData.GetInstance()
                , PlayerBattleData.GetInstance()
                , enemyMonsterData, enemySkillData, playerMonsterData
                );
        }
        else if (enemySkillData.triggerPriority_ > playerSkillData.triggerPriority_)
        {
            //エネミーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetEnemyEffectParts()
                , mgr.GetPlayerEffectParts()
                , mgr.GetPlayerMonsterParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , EnemyBattleData.GetInstance()
                , PlayerBattleData.GetInstance()
                , enemyMonsterData, enemySkillData, playerMonsterData
                );
            //プレイヤーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetPlayerEffectParts()
                , mgr.GetEnemyEffectParts()
                , mgr.GetEnemyMonsterParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , PlayerBattleData.GetInstance()
                , EnemyBattleData.GetInstance()
                , playerMonsterData, playerSkillData, enemyMonsterData
                );
        }
        //素早さで行動順を決める
        else if ((enemyMonsterData.RealSpeed() * enemyMonsterData.battleData_.RealSpeedParameterRank()) < (playerMonsterData.RealSpeed() * playerMonsterData.battleData_.RealSpeedParameterRank()))
        {
            //プレイヤーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetPlayerEffectParts()
                , mgr.GetEnemyEffectParts()
                , mgr.GetEnemyMonsterParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , PlayerBattleData.GetInstance()
                , EnemyBattleData.GetInstance()
                , playerMonsterData, playerSkillData, enemyMonsterData
                );
            //エネミーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetEnemyEffectParts()
                , mgr.GetPlayerEffectParts()
                , mgr.GetPlayerMonsterParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , EnemyBattleData.GetInstance()
                , PlayerBattleData.GetInstance()
                , enemyMonsterData, enemySkillData, playerMonsterData
                );
        }
        else if ((enemyMonsterData.RealSpeed() * enemyMonsterData.battleData_.RealSpeedParameterRank()) == (playerMonsterData.RealSpeed() * playerMonsterData.battleData_.RealSpeedParameterRank()))
        {
            if (AllSceneManager.GetInstance().GetRandom().Next(0, 2) < 1)
            {
                //プレイヤーの戦闘処理
                SkillResultSet(
                    mgr
                    , mgr.GetPlayerEffectParts()
                    , mgr.GetEnemyEffectParts()
                    , mgr.GetEnemyMonsterParts()
                    , mgr.GetPlayerStatusInfoParts()
                    , mgr.GetEnemyStatusInfoParts()
                    , mgr.GetPlayerDreamPointInfoParts()
                    , mgr.GetEnemyDreamPointInfoParts()
                    , PlayerBattleData.GetInstance()
                    , EnemyBattleData.GetInstance()
                    , playerMonsterData, playerSkillData, enemyMonsterData
                    );
                //エネミーの戦闘処理
                SkillResultSet(
                    mgr
                    , mgr.GetEnemyEffectParts()
                    , mgr.GetPlayerEffectParts()
                    , mgr.GetPlayerMonsterParts()
                    , mgr.GetEnemyStatusInfoParts()
                    , mgr.GetPlayerStatusInfoParts()
                    , mgr.GetEnemyDreamPointInfoParts()
                    , mgr.GetPlayerDreamPointInfoParts()
                    , EnemyBattleData.GetInstance()
                    , PlayerBattleData.GetInstance()
                    , enemyMonsterData, enemySkillData, playerMonsterData
                    );
            }
            else
            {
                //エネミーの戦闘処理
                SkillResultSet(
                    mgr
                    , mgr.GetEnemyEffectParts()
                    , mgr.GetPlayerEffectParts()
                    , mgr.GetPlayerMonsterParts()
                    , mgr.GetEnemyStatusInfoParts()
                    , mgr.GetPlayerStatusInfoParts()
                    , mgr.GetEnemyDreamPointInfoParts()
                    , mgr.GetPlayerDreamPointInfoParts()
                    , EnemyBattleData.GetInstance()
                    , PlayerBattleData.GetInstance()
                    , enemyMonsterData, enemySkillData, playerMonsterData
                    );
                //プレイヤーの戦闘処理
                SkillResultSet(
                    mgr
                    , mgr.GetPlayerEffectParts()
                    , mgr.GetEnemyEffectParts()
                    , mgr.GetEnemyMonsterParts()
                    , mgr.GetPlayerStatusInfoParts()
                    , mgr.GetEnemyStatusInfoParts()
                    , mgr.GetPlayerDreamPointInfoParts()
                    , mgr.GetEnemyDreamPointInfoParts()
                    , PlayerBattleData.GetInstance()
                    , EnemyBattleData.GetInstance()
                    , playerMonsterData, playerSkillData, enemyMonsterData
                    );
            }
        }
        else
        {
            //エネミーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetEnemyEffectParts()
                , mgr.GetPlayerEffectParts()
                , mgr.GetPlayerMonsterParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , EnemyBattleData.GetInstance()
                , PlayerBattleData.GetInstance()
                , enemyMonsterData, enemySkillData, playerMonsterData
                );
            //プレイヤーの戦闘処理
            SkillResultSet(
                mgr
                , mgr.GetPlayerEffectParts()
                , mgr.GetEnemyEffectParts()
                , mgr.GetEnemyMonsterParts()
                , mgr.GetPlayerStatusInfoParts()
                , mgr.GetEnemyStatusInfoParts()
                , mgr.GetPlayerDreamPointInfoParts()
                , mgr.GetEnemyDreamPointInfoParts()
                , PlayerBattleData.GetInstance()
                , EnemyBattleData.GetInstance()
                , playerMonsterData, playerSkillData, enemyMonsterData
                );
        }

        //白紙に
        AllEventManager.GetInstance().EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText(), " ");
        AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
        AllEventManager.GetInstance().AllUpdateEventExecute();
        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(0.5f);

        //イベントの最後
        AllEventManager.GetInstance().EventFinishSet();

        //交換判定の初期化
        PlayerBattleData.GetInstance().changeMonsterActive_ = false;
        EnemyBattleData.GetInstance().changeMonsterActive_  = false;

        return(mgr.nowProcessState().NextProcess());
    }
    public IProcessState Update(BattleManager mgr)
    {
        AllEventManager eventMgr = AllEventManager.GetInstance();
        AllSceneManager sceneMgr = AllSceneManager.GetInstance();

        //敵の思考時間の処理
        EnemyBattleData.GetInstance().ThinkingTimeCounter();

        //やけどのダメージ処理
        if (mgr.BurnsDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts()))
        {
            return(new CommandEventExecuteProcess());
        }

        if (EnemyBattleData.GetInstance().GetThinkingEnd() == false)
        {
            //やけどのダメージ処理
            if (mgr.BurnsDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts()))
            {
                return(new CommandEventExecuteProcess());
            }

            if (EnemyBattleData.GetInstance().PoinsonCounter())
            {
                //どくのダメージ処理
                mgr.PoisonDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts());
                if (mgr.PoisonDamageDown())
                {
                    return(new CommandEventExecuteProcess());
                }
            }
        }

        if (AllEventManager.GetInstance().EventUpdate())
        {
            sceneMgr.inputProvider_ = new KeyBoardNormalTriggerInputProvider();
        }

        //カーソルが動いていたら
        int commandSelectNumber = mgr.GetMonsterTradeSelectCommandParts().CommandSelectForNumber(new Vector3(4.16f, 0, 0), new Vector3());

        if (commandSelectNumber > -1)
        {
            //SE
            mgr.GetInputSoundProvider().UpSelect();

            executeProvider_.state_ = (BattleSceneMonsterTradeSelectCommandExecuteState)mgr.GetMonsterTradeSelectCommandParts().SelectNumber() + 1;

            //どくのダメージ処理
            mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
        }
        else if (sceneMgr.inputProvider_.UpSelect())
        {
        }
        else if (sceneMgr.inputProvider_.DownSelect())
        {
        }
        else if (sceneMgr.inputProvider_.RightSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetMonsterTradeSelectCommandParts().CommandSelectRight(new Vector3(4.16f, 0, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().RightSelect();

                executeProvider_.state_ = (BattleSceneMonsterTradeSelectCommandExecuteState)mgr.GetMonsterTradeSelectCommandParts().SelectNumber() + 1;

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (sceneMgr.inputProvider_.LeftSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetMonsterTradeSelectCommandParts().CommandSelectLeft(new Vector3(-4.16f, 0, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().LeftSelect();

                executeProvider_.state_ = (BattleSceneMonsterTradeSelectCommandExecuteState)mgr.GetMonsterTradeSelectCommandParts().SelectNumber() + 1;

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (sceneMgr.inputProvider_.SelectEnter() ||
                 mgr.GetMonsterTradeSelectCommandParts().MouseLeftButtonTriggerActive())
        {
            return(executeProvider_.Execute(mgr));
        }
        else if (sceneMgr.inputProvider_.SelectBack() ||
                 sceneMgr.inputProvider_.SelectMouseRightTrigger())
        {
            mgr.InactiveUiMonsterTradeSelectCommand();
            mgr.ActiveUiStartCommand();

            return(mgr.nowProcessState().BackProcess());
        }

        //どくで倒れたら
        if (mgr.PoisonDamageDown())
        {
            return(new CommandEventExecuteProcess());
        }

        return(this);
    }
    //倒れた時の処理
    public override void MonsterDownEventSet(BattleManager manager)
    {
        battleActiveMonsterSize_ -= 1;

        //dreamPoint_ += 45;

        //戦闘のモンスターをダウンさせる
        monsterDatas_[0].battleActive_ = false;

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(1.0f);

        //モンスターの画像の非表示
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerMonsterParts().GetEventGameObject());
        AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(false);

        //SE
        AllEventManager.GetInstance().SEAudioPlayOneShotEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathMonsterDown()));

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        ////DPの演出のイベント
        //manager.StatusInfoPartsDPEffectEventSet(this, manager.GetPlayerStatusInfoParts());
        //
        ////ウェイト
        //AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        //モンスターのステータスインフォの退場
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerStatusInfoParts().GetEventGameObject(), new Vector3(-13.5f, manager.GetPlayerStatusInfoParts().transform.position.y, manager.GetPlayerStatusInfoParts().transform.position.z));
        AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
        AllEventManager.GetInstance().AllUpdateEventExecute(0.2f);

        //文字列の処理
        AllEventManager.GetInstance().EventTextSet(manager.GetNovelWindowParts().GetNovelWindowEventText(), monsterDatas_[0].uniqueName_ + "は たおれた!");
        AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
        AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        if (battleActiveMonsterSize_ == 0)
        {
            //DPゲージの登場
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerDreamPointInfoParts().GetUpdateGameObject());
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyDreamPointInfoParts().GetUpdateGameObject());
            AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(true);

            //BGMの再生
            AllEventManager.GetInstance().BGMAudioClipChangeEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathDreamers_Lose()));
            AllEventManager.GetInstance().BGMAudioPlayEventSet();

            //文字列の処理
            AllEventManager.GetInstance().EventTextSet(
                manager.GetNovelWindowParts().GetNovelWindowEventText()
                , EnemyTrainerData.GetInstance().GetJob() + "の " + EnemyTrainerData.GetInstance().GetName() + "\n"
                + "との しょうぶに まけた");
            AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() * 2);

            //エネミーの入場
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyParts().GetEventGameObject(), new Vector3(7.5f, manager.GetEnemyParts().transform.position.y, manager.GetEnemyParts().transform.position.z));
            AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
            AllEventManager.GetInstance().AllUpdateEventExecute(0.8f);

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() * 2);

            //フェードアウト
            AllEventManager.GetInstance().EventSpriteRendererSet(
                AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite()
                , null
                , new Color(AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 255)
                );
            AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            AllEventManager.GetInstance().AllUpdateEventExecute(2.0f);

            //シーンの切り替え
            AllEventManager.GetInstance().SceneChangeEventSet(SceneState.Map, SceneChangeMode.Continue);

            //負けの設定
            PlayerTrainerData.GetInstance().battleEnd_    = true;
            PlayerTrainerData.GetInstance().battleResult_ = false;

            //データの初期化
            PlayerBattleData.ReleaseInstance();
            EnemyTrainerData.ReleaseInstance();
            EnemyBattleData.ReleaseInstance();

            return;
        }

        //シーンの切り替え
        MonsterMenuManager.SetProcessStateProvider(new MonsterMenuSceneBattleProcessStateProvider());
        AllEventManager.GetInstance().SceneChangeEventSet(SceneState.MonsterMenu, SceneChangeMode.Slide);
    }
    //交換処理
    public override void MonsterChangeEventSet(BattleManager manager)
    {
        AllSceneManager allSceneMgr = AllSceneManager.GetInstance();

        //モンスターの変更が行われていたら
        if (changeMonsterNumber_ > 0)
        {
            IMonsterData md = monsterDatas_[changeMonsterNumber_];

            manager.playerSelectSkillNumber_ = changeMonsterSkillNumber_;

            //先頭のパラメーターをリセット
            monsterDatas_[0].battleData_.RankReset();

            AllEventManager.GetInstance().EventStatusInfoPartsSet(manager.GetPlayerStatusInfoParts(), new Color32(0, 0, 0, 0));
            AllEventManager.GetInstance().StatusInfoPartsUpdateExecuteSet(StatusInfoPartsEventManagerExecute.IdleMoveEnd);
            AllEventManager.GetInstance().AllUpdateEventExecute();

            //先頭がダウンしていなかったら
            if (monsterDatas_[0].battleActive_ == true)
            {
                AllEventManager.GetInstance().EventTextSet(manager.GetNovelWindowParts().GetNovelWindowEventText(), monsterDatas_[0].uniqueName_ + "\n"
                                                           + "もどれ!");
                AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
                AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

                AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

                AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerMonsterParts().GetEventGameObject());
                AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(false);

                AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

                AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerStatusInfoParts().GetEventGameObject(), new Vector3(-13.5f, manager.GetPlayerStatusInfoParts().transform.position.y, manager.GetPlayerStatusInfoParts().transform.position.z));
                AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
                AllEventManager.GetInstance().AllUpdateEventExecute(0.2f);
            }

            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

            AllEventManager.GetInstance().EventTextSet(manager.GetNovelWindowParts().GetNovelWindowEventText(), "ゆけ! " + md.uniqueName_ + "!");
            AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

            //SE
            AllEventManager.GetInstance().SEAudioPlayOneShotEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathMonsterSet()));

            //モンスターの登場演出
            {
                Sprite[]      sprites      = ResourcesGraphicsLoader.GetInstance().GetGraphicsAll("BattleScene/MonsterSetEffect");
                List <Sprite> animeSprites = new List <Sprite>();
                for (int i = 0; i < sprites.Length; ++i)
                {
                    animeSprites.Add(sprites[i]);
                }
                AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetPlayerEffectParts().GetEventSpriteRenderer(), animeSprites);
                AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.Anime);
                AllEventManager.GetInstance().AllUpdateEventExecute(0.35f);
            }

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() / 2);

            //画像の設定
            if (md.battleData_.HaveAbnormalType(AbnormalType.Hero))
            {
                List <Sprite> sprites = new List <Sprite>();
                sprites.Add(md.tribesData_.backDreamTex_);

                AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetPlayerMonsterParts().GetEventMonsterSprite(), sprites, new Color32());
                AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
                AllEventManager.GetInstance().AllUpdateEventExecute();
            }
            else
            {
                List <Sprite> sprites = new List <Sprite>();
                sprites.Add(md.tribesData_.backTex_);

                AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetPlayerMonsterParts().GetEventMonsterSprite(), sprites, new Color32());
                AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
                AllEventManager.GetInstance().AllUpdateEventExecute();
            }

            //ステータスインフォへの反映
            manager.GetPlayerStatusInfoParts().MonsterStatusInfoSetEventSet(md);

            //攻撃技の反映
            manager.GetAttackCommandParts().MonsterDataReflect(md, EnemyBattleData.GetInstance().GetMonsterDatas(0));

            //ねむりの終了処理
            manager.SleepProcessEnd();

            IMonsterData temp = monsterDatas_[0];
            monsterDatas_[0] = monsterDatas_[changeMonsterNumber_];
            monsterDatas_[changeMonsterNumber_] = temp;

            //ねむりの開始処理
            manager.SleepProcessStart();
            manager.SleepUseStart(this);

            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerMonsterParts().GetEventGameObject());
            AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(true);

            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerStatusInfoParts().GetEventGameObject(), new Vector3(-6.12f, manager.GetPlayerStatusInfoParts().transform.position.y, manager.GetPlayerStatusInfoParts().transform.position.z));
            AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
            AllEventManager.GetInstance().AllUpdateEventExecute(0.2f);
        }

        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        manager.ActiveUiCommand();
        manager.InactiveUiCommand();

        allSceneMgr.inputProvider_ = new InactiveInputProvider();

        changeMonsterNumber_      = 0;
        changeMonsterSkillNumber_ = 0;
    }
Esempio n. 15
0
    //倒れた時の処理
    public override void MonsterDownEventSet(BattleManager manager)
    {
        battleActiveMonsterSize_ -= 1;

        //dreamPoint_ += 45;

        //戦闘のモンスターをダウンさせる
        monsterDatas_[0].battleActive_ = false;

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(1.0f);

        //エネミーの画像の非表示
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyMonsterParts().GetEventGameObject());
        AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(false);

        //SE
        AllEventManager.GetInstance().SEAudioPlayOneShotEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathMonsterDown()));

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        ////DPの演出のイベント
        //manager.StatusInfoPartsDPEffectEventSet(this, manager.GetEnemyStatusInfoParts());
        //
        ////ウェイト
        //AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        //エネミーのステータスインフォの退場
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyStatusInfoParts().GetEventGameObject(), new Vector3(-13.5f, manager.GetEnemyStatusInfoParts().transform.position.y, manager.GetEnemyStatusInfoParts().transform.position.z));
        AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
        AllEventManager.GetInstance().AllUpdateEventExecute(0.2f);

        //文字列の処理
        AllEventManager.GetInstance().EventTextSet(manager.GetNovelWindowParts().GetNovelWindowEventText(), "あいての " + monsterDatas_[0].uniqueName_ + "は たおれた!");
        AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
        AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        if (battleActiveMonsterSize_ == 0)
        {
            //DPゲージの登場
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetPlayerDreamPointInfoParts().GetUpdateGameObject());
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyDreamPointInfoParts().GetUpdateGameObject());
            AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(true);

            //BGMの再生
            AllEventManager.GetInstance().BGMAudioClipChangeEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathDreamers_Win()));
            AllEventManager.GetInstance().BGMAudioPlayEventSet();

            //文字列の処理
            AllEventManager.GetInstance().EventTextSet(
                manager.GetNovelWindowParts().GetNovelWindowEventText()
                , EnemyTrainerData.GetInstance().GetJob() + "の " + EnemyTrainerData.GetInstance().GetName() + "\n"
                + "との しょうぶに かった!");
            AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() * 2);

            //エネミーの入場
            AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyParts().GetEventGameObject(), new Vector3(3.5f, manager.GetEnemyParts().transform.position.y, manager.GetEnemyParts().transform.position.z));
            AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
            AllEventManager.GetInstance().AllUpdateEventExecute(1.5f);

            //ウェイト
            AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() * 2);

            //フェードアウト
            AllEventManager.GetInstance().EventSpriteRendererSet(
                AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite()
                , null
                , new Color(AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, AllSceneManager.GetInstance().GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 255)
                );
            AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            AllEventManager.GetInstance().AllUpdateEventExecute(2.0f);

            //シーンの切り替え
            AllEventManager.GetInstance().SceneChangeEventSet(SceneState.Map, SceneChangeMode.Continue);

            //勝ちの設定
            PlayerTrainerData.GetInstance().battleEnd_    = true;
            PlayerTrainerData.GetInstance().battleResult_ = true;

            //データの初期化
            PlayerBattleData.ReleaseInstance();
            EnemyTrainerData.ReleaseInstance();
            EnemyBattleData.ReleaseInstance();

            return;
        }

        //タイプ相性の測定
        int[] typeSimillarResult = new int[3] {
            0, 0, 0
        };
        int[] monsterNumbers = new int[3] {
            0, 1, 2
        };


        for (int i = 0; i < monsterDatas_.Length; ++i)
        {
            //戦えたら
            if (monsterDatas_[i].battleActive_ &&
                monsterDatas_[i].tribesData_.monsterNumber_ != 0)
            {
                {
                    int simillarResult = PlayerBattleData.GetInstance().GetMonsterDatas(0).ElementSimillarCheckerForValue(monsterDatas_[i].tribesData_.firstElement_);

                    typeSimillarResult[i] += simillarResult;
                }
                {
                    int simillarResult = PlayerBattleData.GetInstance().GetMonsterDatas(0).ElementSimillarCheckerForValue(monsterDatas_[i].tribesData_.secondElement_);

                    typeSimillarResult[i] += simillarResult;
                }
            }
        }

        t13.Utility.SimpleHiSort2Index(typeSimillarResult, monsterNumbers);

        //モンスターデータの入れ替え
        IMonsterData temp = monsterDatas_[0];

        monsterDatas_[0] = monsterDatas_[monsterNumbers[0]];
        monsterDatas_[monsterNumbers[0]] = temp;

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(1.0f);

        //文字列の処理
        AllEventManager.GetInstance().EventTextSet(
            manager.GetNovelWindowParts().GetNovelWindowEventText(), EnemyTrainerData.GetInstance().GetName() + "は\n"
            + monsterDatas_[0].uniqueName_ + "を くりだした!"
            );
        AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
        AllEventManager.GetInstance().AllUpdateEventExecute(manager.GetEventContextUpdateTime());

        //SE
        AllEventManager.GetInstance().SEAudioPlayOneShotEventSet(ResourcesSoundsLoader.GetInstance().GetSounds(SoundsPathSupervisor.GetInstance().GetPathMonsterSet()));

        //モンスターの登場演出
        {
            Sprite[]      sprites      = ResourcesGraphicsLoader.GetInstance().GetGraphicsAll("BattleScene/MonsterSetEffect");
            List <Sprite> animeSprites = new List <Sprite>();
            for (int i = 0; i < sprites.Length; ++i)
            {
                animeSprites.Add(sprites[i]);
            }
            AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetEnemyEffectParts().GetEventSpriteRenderer(), animeSprites);
            AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.Anime);
            AllEventManager.GetInstance().AllUpdateEventExecute(0.35f);
        }

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime() / 2);

        //画像の設定
        if (monsterDatas_[0].battleData_.HaveAbnormalType(AbnormalType.Hero))
        {
            List <Sprite> sprites = new List <Sprite>();
            sprites.Add(monsterDatas_[0].tribesData_.frontDreamTex_);

            AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetEnemyMonsterParts().GetEventMonsterSprite(), sprites, new Color32());
            AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
            AllEventManager.GetInstance().AllUpdateEventExecute();
        }
        else
        {
            List <Sprite> sprites = new List <Sprite>();
            sprites.Add(monsterDatas_[0].tribesData_.frontTex_);

            AllEventManager.GetInstance().EventSpriteRendererSet(manager.GetEnemyMonsterParts().GetEventMonsterSprite(), sprites, new Color32());
            AllEventManager.GetInstance().EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.SpriteSet);
            AllEventManager.GetInstance().AllUpdateEventExecute();
        }

        //ステータスインフォへの反映
        manager.GetEnemyStatusInfoParts().MonsterStatusInfoSetEventSet(monsterDatas_[0]);

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        //エネミーの表示
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyMonsterParts().GetEventGameObject());
        AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(true);

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        //エネミーのステータスインフォの入場
        AllEventManager.GetInstance().UpdateGameObjectSet(manager.GetEnemyStatusInfoParts().GetEventGameObject(), new Vector3(-3.5f, manager.GetEnemyStatusInfoParts().transform.position.y, manager.GetEnemyStatusInfoParts().transform.position.z));
        AllEventManager.GetInstance().UpdateGameObjectUpdateExecuteSet(UpdateGameObjectEventManagerExecute.PosMove);
        AllEventManager.GetInstance().AllUpdateEventExecute(0.2f);

        //ウェイト
        AllEventManager.GetInstance().EventWaitSet(manager.GetEventWaitTime());

        manager.ActiveUiCommand();
        manager.InactiveUiCommand();
    }
Esempio n. 16
0
 static public void ReleaseInstance()
 {
     instance_ = null;
 }
Esempio n. 17
0
    public IProcessState Update(BattleManager mgr)
    {
        AllEventManager eventMgr = AllEventManager.GetInstance();
        AllSceneManager sceneMgr = AllSceneManager.GetInstance();

        //交換されていたら
        if (PlayerBattleData.GetInstance().changeMonsterActive_)
        {
            //フェードイン
            eventMgr.EventSpriteRendererSet(
                sceneMgr.GetPublicFrontScreen().GetEventScreenSprite()
                , null
                , new Color(sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 0)
                );
            eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            eventMgr.AllUpdateEventExecute(0.4f);

            //交換イベント
            PlayerBattleData.GetInstance().MonsterChangeEventSet(mgr);

            //イベントの最後
            eventMgr.EventFinishSet();

            PlayerBattleData.GetInstance().changeMonsterActive_ = false;
        }

        if (AllEventManager.GetInstance().EventUpdate() &&
            PlayerBattleData.GetInstance().GetMonsterDatas(0).battleActive_)
        {
            //ウィンドウの非表示
            mgr.GetNovelWindowParts().gameObject.SetActive(false);

            mgr.GetPlayerStatusInfoParts().ProcessIdleStart();
            mgr.GetPlayerMonsterParts().ProcessIdleStart();
            mgr.ActiveUiStartCommand();
            sceneMgr.inputProvider_ = new KeyBoardNormalTriggerInputProvider();

            //攻撃技の反映
            mgr.GetAttackCommandParts().MonsterDataReflect(PlayerBattleData.GetInstance().GetMonsterDatas(0), EnemyBattleData.GetInstance().GetMonsterDatas(0));

            return(mgr.nowProcessState().NextProcess());
        }

        return(this);
    }
Esempio n. 18
0
    float timeExit = 2f; // time to exit the phase


    public EndBattle(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
        : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
    {
        name = Phases.BattleEnd;
    }
Esempio n. 19
0
 public NewRound(BattleManager _bm, Stats _plStats, EnemyBattleData _npcData, PlayerHand _plrHnd, NPCHand _npcHnd)
     : base(_bm, _plStats, _npcData, _plrHnd, _npcHnd)
 {
     name     = Phases.NewRound;
     infoCard = System.Array.Find(battleManager.infoCardsPrefabs, c => c.cardType == InfoType.NewRound);
 }
    public IProcessState Update(BattleManager mgr)
    {
        AllEventManager eventMgr = AllEventManager.GetInstance();
        AllSceneManager sceneMgr = AllSceneManager.GetInstance();

        //敵の思考時間の処理
        EnemyBattleData.GetInstance().ThinkingTimeCounter();

        //モンスターが交換されていたら
        if (PlayerBattleData.GetInstance().changeMonsterActive_)
        {
            executeProvider_.state_ = BattleSceneStartCommandExecuteState.Attack;

            mgr.ActiveUiStartCommand();
            mgr.InactiveUiStartCommand();

            //フェードイン
            eventMgr.EventSpriteRendererSet(
                sceneMgr.GetPublicFrontScreen().GetEventScreenSprite()
                , null
                , new Color(sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.r, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.g, sceneMgr.GetPublicFrontScreen().GetEventScreenSprite().GetSpriteRenderer().color.b, 0)
                );
            eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor);
            eventMgr.AllUpdateEventExecute(0.4f);

            eventMgr.UpdateGameObjectSet(mgr.GetStartCommandParts().GetEventGameObject());
            eventMgr.UpdateGameObjectsActiveSetExecute(true);

            //dpが100以上だったら
            //if (PlayerBattleData.GetInstance().GetDreamPoint() >= 100) {
            //	eventMgr.EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText()
            //		, "ゆめたちが \n"
            //		+ "きょうめいしている・・・");
            //	eventMgr.EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            //	eventMgr.AllUpdateEventExecute();
            //}
            //else {
            //	eventMgr.EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText(), PlayerBattleData.GetInstance().GetMonsterDatas(0).uniqueName_ + "は どうする?");
            //	eventMgr.EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
            //	eventMgr.AllUpdateEventExecute();
            //}

            eventMgr.EventStatusInfoPartsSet(mgr.GetPlayerStatusInfoParts(), new Color32(0, 0, 0, 0));
            eventMgr.StatusInfoPartsUpdateExecuteSet(StatusInfoPartsEventManagerExecute.IdleMoveStart);
            eventMgr.AllUpdateEventExecute();

            //イベントの最後
            eventMgr.EventFinishSet();

            PlayerBattleData.GetInstance().changeMonsterActive_ = false;
        }

        //やけどのダメージ処理
        if (mgr.BurnsDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts()))
        {
            return(new CommandEventExecuteProcess());
        }

        if (EnemyBattleData.GetInstance().GetThinkingEnd() == false)
        {
            //やけどのダメージ処理
            if (mgr.BurnsDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts()))
            {
                return(new CommandEventExecuteProcess());
            }

            if (EnemyBattleData.GetInstance().PoinsonCounter())
            {
                //どくのダメージ処理
                mgr.PoisonDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts());
                if (mgr.PoisonDamageDown())
                {
                    return(new CommandEventExecuteProcess());
                }
            }
        }

        if (AllEventManager.GetInstance().EventUpdate())
        {
            sceneMgr.inputProvider_ = new KeyBoardNormalTriggerInputProvider();
        }

        //カーソルが動いていたら
        int commandSelectNumber = mgr.GetStartCommandParts().CommandSelectForNumber(new Vector3(), new Vector3(0, 1.32f, 0));

        if (commandSelectNumber > -1)
        {
            //SE
            mgr.GetInputSoundProvider().UpSelect();

            executeProvider_.state_ = (BattleSceneStartCommandExecuteState)mgr.GetStartCommandParts().SelectNumber() + 1;

            //どくのダメージ処理
            mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
        }
        else if (sceneMgr.inputProvider_.UpSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetStartCommandParts().CommandSelectUp(new Vector3(0, 1.33f, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().UpSelect();

                executeProvider_.state_ = (BattleSceneStartCommandExecuteState)mgr.GetStartCommandParts().SelectNumber() + 1;

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (sceneMgr.inputProvider_.DownSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetStartCommandParts().CommandSelectDown(new Vector3(0, -1.33f, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().DownSelect();

                executeProvider_.state_ = (BattleSceneStartCommandExecuteState)mgr.GetStartCommandParts().SelectNumber() + 1;

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (sceneMgr.inputProvider_.RightSelect())
        {
        }
        else if (sceneMgr.inputProvider_.LeftSelect())
        {
        }
        else if (sceneMgr.inputProvider_.SelectEnter() ||
                 mgr.GetStartCommandParts().MouseLeftButtonTriggerActive())
        {
            return(executeProvider_.Execute(mgr));
        }

        //どくで倒れたら
        if (mgr.PoisonDamageDown())
        {
            return(new CommandEventExecuteProcess());
        }

        return(this);
    }
    public IProcessState Update(BattleManager mgr)
    {
        AllSceneManager allSceneMgr = AllSceneManager.GetInstance();

        //敵の思考時間の処理
        EnemyBattleData.GetInstance().ThinkingTimeCounter();

        //モンスターが交換されていたら
        if (PlayerBattleData.GetInstance().changeMonsterActive_ == true)
        {
            if (PlayerBattleData.GetInstance().changeMonsterNumber_ > 0)
            {
                //アイドル状態の停止
                mgr.GetPlayerStatusInfoParts().ProcessIdleEnd();
                mgr.GetPlayerMonsterParts().ProcessIdleEnd();

                //ウィンドウの表示
                mgr.GetNovelWindowParts().gameObject.SetActive(true);

                //イベントの最後
                AllEventManager.GetInstance().EventFinishSet();

                return(new EnemyCommandSelectProcess());
            }
            else
            {
                allSceneMgr.inputProvider_ = new InactiveInputProvider();

                AllEventManager.GetInstance().EventWaitSet(mgr.GetEventWaitTime());

                AllEventManager.GetInstance().UpdateGameObjectSet(mgr.GetCommandCommandParts().GetEventGameObject());
                AllEventManager.GetInstance().UpdateGameObjectsActiveSetExecute(true);

                //dpが100以上だったら
                //if (PlayerBattleData.GetInstance().GetDreamPoint() >= 100) {
                //	AllEventManager.GetInstance().EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText()
                //		, "ゆめたちが \n"
                //		+ "きょうめいしている・・・");
                //	AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
                //	AllEventManager.GetInstance().AllUpdateEventExecute();
                //}
                //else {
                //	AllEventManager.GetInstance().EventTextSet(mgr.GetNovelWindowParts().GetNovelWindowEventText(), PlayerBattleData.GetInstance().GetMonsterDatas(0).uniqueName_ + "は どうする?");
                //	AllEventManager.GetInstance().EventTextsUpdateExecuteSet(EventTextEventManagerExecute.CharaUpdate);
                //	AllEventManager.GetInstance().AllUpdateEventExecute();
                //}

                AllEventManager.GetInstance().EventStatusInfoPartsSet(mgr.GetPlayerStatusInfoParts(), new Color32(0, 0, 0, 0));
                AllEventManager.GetInstance().StatusInfoPartsUpdateExecuteSet(StatusInfoPartsEventManagerExecute.IdleMoveStart);
                AllEventManager.GetInstance().AllUpdateEventExecute();

                AllEventManager.GetInstance().EventFinishSet();

                PlayerBattleData.GetInstance().changeMonsterActive_ = false;
            }
        }

        //やけどのダメージ処理
        if (mgr.BurnsDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts()))
        {
            return(new CommandEventExecuteProcess());
        }

        if (EnemyBattleData.GetInstance().GetThinkingEnd() == false)
        {
            //やけどのダメージ処理
            if (mgr.BurnsDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts()))
            {
                return(new CommandEventExecuteProcess());
            }

            if (EnemyBattleData.GetInstance().PoinsonCounter())
            {
                //どくのダメージ処理
                mgr.PoisonDamageProcess(EnemyBattleData.GetInstance(), mgr.GetEnemyStatusInfoParts(), mgr.GetEnemyMonsterParts());
                if (mgr.PoisonDamageDown())
                {
                    return(new CommandEventExecuteProcess());
                }
            }
        }

        //こんらんの処理
        mgr.ConfusionProcess();

        if (AllEventManager.GetInstance().EventUpdate())
        {
            allSceneMgr.inputProvider_ = new KeyBoardNormalTriggerInputProvider();
        }

        //カーソルが動いていたら
        int commandSelectNumber = mgr.GetAttackCommandParts().GetCommandParts().CommandSelectForNumber(new Vector3(3.56f, 0, 0), new Vector3(0, 1.42f, 0));

        if (commandSelectNumber > -1)
        {
            //SE
            mgr.GetInputSoundProvider().UpSelect();

            mgr.AttackCommandSkillInfoTextSet(mgr.GetAttackCommandParts().GetCommandParts().SelectNumber());

            //どくのダメージ処理
            mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
        }
        else if (allSceneMgr.inputProvider_.UpSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetAttackCommandParts().GetCommandParts().CommandSelectUp(new Vector3(0, 1.42f, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().UpSelect();

                mgr.AttackCommandSkillInfoTextSet(mgr.GetAttackCommandParts().GetCommandParts().SelectNumber());

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (allSceneMgr.inputProvider_.DownSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetAttackCommandParts().GetCommandParts().CommandSelectDown(new Vector3(0, -1.42f, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().DownSelect();

                mgr.AttackCommandSkillInfoTextSet(mgr.GetAttackCommandParts().GetCommandParts().SelectNumber());

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (allSceneMgr.inputProvider_.RightSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetAttackCommandParts().GetCommandParts().CommandSelectRight(new Vector3(3.56f, 0, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().RightSelect();

                mgr.AttackCommandSkillInfoTextSet(mgr.GetAttackCommandParts().GetCommandParts().SelectNumber());

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (allSceneMgr.inputProvider_.LeftSelect())
        {
            //選択肢が動かせたら
            if (mgr.GetAttackCommandParts().GetCommandParts().CommandSelectLeft(new Vector3(-3.56f, 0, 0)))
            {
                //SE
                mgr.GetInputSoundProvider().LeftSelect();

                mgr.AttackCommandSkillInfoTextSet(mgr.GetAttackCommandParts().GetCommandParts().SelectNumber());

                //どくのダメージ処理
                mgr.PoisonDamageProcess(PlayerBattleData.GetInstance(), mgr.GetPlayerStatusInfoParts(), mgr.GetPlayerMonsterParts());
            }
        }
        else if (allSceneMgr.inputProvider_.SelectEnter() ||
                 mgr.GetAttackCommandParts().GetCommandParts().MouseLeftButtonTriggerActive())
        {
            mgr.playerSelectSkillNumber_ = mgr.GetAttackCommandParts().GetCommandParts().SelectNumber();

            ISkillData playerSkillData = PlayerBattleData.GetInstance().GetMonsterDatas(0).GetSkillDatas(mgr.playerSelectSkillNumber_);

            //スキルがNoneでなかったら
            if (            //playerSkillData.nowPlayPoint_ > 0
                playerSkillData.skillNumber_ != (int)SkillDataNumber.None)
            {
                //SE
                mgr.GetInputSoundProvider().SelectEnter();

                mgr.GetPlayerStatusInfoParts().ProcessIdleEnd();
                mgr.GetPlayerMonsterParts().ProcessIdleEnd();

                allSceneMgr.inputProvider_ = new InactiveInputProvider();

                //コマンドUIの非表示
                mgr.InactiveUiAttackCommand();

                //ウィンドウの表示
                mgr.GetNovelWindowParts().gameObject.SetActive(true);

                //ppの消費
                //playerSkillData.nowPlayPoint_ -= 1;

                //イベントの最後
                AllEventManager.GetInstance().EventFinishSet();

                return(mgr.nowProcessState().NextProcess());
            }
        }
        else if (allSceneMgr.inputProvider_.SelectBack() ||
                 allSceneMgr.inputProvider_.SelectMouseRightTrigger())
        {
            //こんらん状態なら
            if (PlayerBattleData.GetInstance().GetMonsterDatas(0).battleData_.firstAbnormalState_.state_ == AbnormalType.Confusion ||
                PlayerBattleData.GetInstance().GetMonsterDatas(0).battleData_.secondAbnormalState_.state_ == AbnormalType.Confusion)
            {
                allSceneMgr.inputProvider_ = new KeyBoardNormalTriggerInputProvider();
            }

            mgr.InactiveUiAttackCommand();
            mgr.ActiveUiCommand();

            return(mgr.nowProcessState().BackProcess());
        }
        else if (allSceneMgr.inputProvider_.SelectNovelWindowActive())
        {
        }

        //どくで倒れたら
        if (mgr.PoisonDamageDown())
        {
            return(new CommandEventExecuteProcess());
        }

        return(this);
    }