public override IProcessState Execute(BattleManager battleManager) { //既にパワーアップしていたら if (PlayerBattleData.GetInstance().GetMonsterDatas(0).battleData_.HaveAbnormalType(AbnormalType.Hero)) { return(battleManager.nowProcessState()); } //dpが100以上だったら if (PlayerBattleData.GetInstance().GetDreamPoint() >= 100) { //SE battleManager.GetInputSoundProvider().SelectEnter(); if (PlayerBattleData.GetInstance().dreamSyncronize_ == false) { //ゆめの文字色の変更 battleManager.GetDreamCommandSprite().color = new Color32(94, 120, 255, 255); //パワーアップするか否かのフラグの設定 PlayerBattleData.GetInstance().dreamSyncronize_ = true; } else { //ゆめの文字色の変更 battleManager.GetDreamCommandSprite().color = new Color32(255, 255, 255, 255); //パワーアップするか否かのフラグの設定 PlayerBattleData.GetInstance().dreamSyncronize_ = false; } } return(battleManager.nowProcessState()); }
public override void init(MonsterMenuManager monsterMenuManager) { PlayerBattleData playerData = PlayerBattleData.GetInstance(); //StatusInfosPartsのモンスター情報の変更 for (int i = 0; i < playerData.GetMonsterDatasLength() / 2; ++i) { if (i == 0) { monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() / 2).MonsterStatusInfoSet(playerData.GetMonsterDatas(i)); } else { monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(i + monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() / 2).MonsterStatusInfoSet(playerData.GetMonsterDatas(i)); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(-i + monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() / 2).MonsterStatusInfoSet(playerData.GetMonsterDatas(playerData.GetMonsterDatasLength() - i)); } } //MagazinePartsのSDの画像の変更 for (int i = 0; i < monsterMenuManager.GetMagazineParts().GetMonsterSDsPartsCount(); ++i) { monsterMenuManager.GetMagazineParts().GetMonsterSDsParts(i).GetMonsterSDEventSpriteRenderer().GetSpriteRenderer().sprite = playerData.GetMonsterDatas(i).tribesData_.SDTex_; } //モンスターのパラメーターの反映 monsterMenuManager.GetParameterInfoFrameParts().MonsterDataReflect(playerData.GetMonsterDatas(0)); //モンスターの技の名前の反映 for (int i = 0; i < monsterMenuManager.GetSkillCommandParts().GetCommandWindowTextsCount(); ++i) { monsterMenuManager.GetSkillCommandParts().CommandWindowChoiceTextChange(i, " " + playerData.GetMonsterDatas(0).GetSkillDatas(i).skillName_); } }
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); }
static public PlayerBattleData GetInstance() { if (instance_ != null) { return(instance_); } instance_ = new PlayerBattleData(); return(instance_); }
private void Awake() { GameEvents.OnEnterSelectionPhase += OnEnterSelectionPhase; GameEvents.OnEnterTargetPhase += OnEnterTargetPhase; GameEvents.OnEnterSelectActionPhase += OnEnterActionSelectionPhase; GameEvents.OnEnterExecutePhase += OnEnterExecutionPhase; GameEvents.OnEnterEnemyPhase += OnEnterEnemyPhase; GameEvents.OnEnterTargetPhase += SelectEnemy; GameEvents.OnChangeTargetedEnemyUp += EnemySelectionUp; GameEvents.OnChangeTargetedEnemyDown += EnemySelectionDown; GameEvents.OnSelectTargetedEnemy += TargetedEnemy; GameEvents.OnPlayerUseAttack += DealEnemyDamage; GameEvents.OnPlayerUseMagic += DealEnemyMagicDamage; GameEvents.OnEnemyDeath += EnemyReselection; GameEvents.OnPlayerReceiveDamage += OnPlayerReceiveDamage; GameEvents.OnPlayerUseGuard += SetPlayerOnGuard; GameEvents.OnGameOver += OnGameOver; thisBattle = GameManager.GetBattleData(); playerInBattle = GameManager.GetPlayerBattleData(); for (var i = 0; i < EnemySpots.Length; i++) { if (i < thisBattle.Enemies.Length) { var enemy = thisBattle.Enemies[i].EnemyPrefab; var bEnemy = Instantiate(enemy, EnemySpots[i].transform.position, Quaternion.identity); bEnemy.SetStatus(enemy.data.EnemyStatus); EnemySpots[i].LinkedEnemy = bEnemy; } else { var bEnemy = Instantiate(DeadEnemyPreset, EnemySpots[i].transform.position, Quaternion.identity); EnemySpots[i].LinkedEnemy = bEnemy; } } targetedEnemyId = 0; for (var i = 0; i < EnemySpots.Length; i++) { var enemy = EnemySpots[i]; if (enemy.LinkedEnemy.Dead) { continue; } targetedEnemyId = i; break; } GameManager.ResetBattlePhase(); BattleSrc.Play(); }
public override void Execute(MonsterMenuManager monsterMenuManager) { AllSceneManager sceneMgr = AllSceneManager.GetInstance(); AllEventManager eventMgr = AllEventManager.GetInstance(); //先頭がダウンしていたら if (!PlayerBattleData.GetInstance().GetMonsterDatas(0).battleActive_) { PlayerBattleData.GetInstance().changeMonsterNumber_ = monsterMenuManager.selectMonsterNumber_; PlayerBattleData.GetInstance().changeMonsterSkillNumber_ = monsterMenuManager.GetSkillCommandParts().SelectNumber(); PlayerBattleData.GetInstance().changeMonsterActive_ = true; //操作の変更 sceneMgr.inputProvider_ = new InactiveInputProvider(); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().SelectReset(new Vector3(-5.29f, 0.82f, 2)); //フェードアウト 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, 255) ); eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor); eventMgr.AllUpdateEventExecute(0.4f); //シーンの切り替え eventMgr.SceneChangeEventSet(SceneState.Battle, SceneChangeMode.Continue); } else { if (PlayerBattleData.GetInstance().GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).battleActive_ && PlayerBattleData.GetInstance().GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).tribesData_.monsterNumber_ != (int)MonsterTribesDataNumber.None) { monsterMenuManager.GetMonsterActionCommandParts().gameObject.SetActive(false); monsterMenuManager.GetNowProcessState().state_ = MonsterMenuSceneProcess.SkillSelect; //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(PlayerBattleData.GetInstance().GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(0)); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderActive(); monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(true); //モンスターの交換中 monsterMenuManager.monsterTradeSelectSkill_ = true; } } }
public override void Execute(MonsterMenuManager monsterMenuManager) { monsterMenuManager.GetMonsterActionCommandParts().gameObject.SetActive(false); monsterMenuManager.GetNowProcessState().state_ = MonsterMenuSceneProcess.SkillSelect; //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(PlayerBattleData.GetInstance().GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(0)); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderActive(); monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(true); }
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); }
//倒れた時の処理 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(); }
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 override MonsterMenuSceneProcess Update(MonsterMenuManager monsterMenuManager) { AllSceneManager sceneMgr = AllSceneManager.GetInstance(); AllEventManager eventMgr = AllEventManager.GetInstance(); PlayerBattleData playerData = PlayerBattleData.GetInstance(); eventMgr.EventUpdate(); //カーソルが動いていたら int commandSelectNumber = monsterMenuManager.GetSkillCommandParts().CommandSelectForNumber(new Vector3(6.08f, 0, 0), new Vector3(0, 1.72f, 0)); if (commandSelectNumber > -1) { //SE monsterMenuManager.GetInputSoundProvider().UpSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } else if (sceneMgr.inputProvider_.UpSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectUp(new Vector3(0, 1.72f, 0))) { //SE monsterMenuManager.GetInputSoundProvider().UpSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.DownSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectDown(new Vector3(0, -1.72f, 0))) { //SE monsterMenuManager.GetInputSoundProvider().DownSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.RightSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectRight(new Vector3(6.08f, 0, 0))) { //SE monsterMenuManager.GetInputSoundProvider().RightSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.LeftSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectLeft(new Vector3(-6.08f, 0, 0))) { //SE monsterMenuManager.GetInputSoundProvider().LeftSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.SelectEnter() || monsterMenuManager.GetSkillCommandParts().MouseLeftButtonTriggerActive()) { //モンスターの交換中なら if (monsterMenuManager.monsterTradeSelectSkill_) { monsterMenuManager.monsterTradeSelectSkill_ = false; PlayerBattleData.GetInstance().changeMonsterNumber_ = monsterMenuManager.selectMonsterNumber_; PlayerBattleData.GetInstance().changeMonsterSkillNumber_ = monsterMenuManager.GetSkillCommandParts().SelectNumber(); PlayerBattleData.GetInstance().changeMonsterActive_ = true; monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(false); monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderInactive(); //操作の変更 sceneMgr.inputProvider_ = new InactiveInputProvider(); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().SelectReset(new Vector3(-5.29f, 0.82f, 2)); //フェードアウト 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, 255) ); eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor); eventMgr.AllUpdateEventExecute(0.4f); //シーンの切り替え eventMgr.SceneChangeEventSet(SceneState.Battle, SceneChangeMode.Continue); } } else if (sceneMgr.inputProvider_.SelectBack() || sceneMgr.inputProvider_.SelectMouseRightTrigger()) { monsterMenuManager.monsterTradeSelectSkill_ = false; monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(false); monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderInactive(); monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReset(); //操作の変更 AllSceneManager.GetInstance().inputProvider_ = new KeyBoardNormalInputProvider(); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().SelectReset(new Vector3(-5.29f, 0.82f, 2)); return(MonsterMenuSceneProcess.MonsterSelect); } return(monsterMenuManager.GetNowProcessState().state_); }
//倒れた時の処理 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); }
static public void ReleaseInstance() { instance_ = null; }
public override MonsterMenuSceneProcess Update(MonsterMenuManager monsterMenuManager) { AllSceneManager sceneMgr = AllSceneManager.GetInstance(); AllEventManager eventMgr = AllEventManager.GetInstance(); PlayerBattleData playerData = PlayerBattleData.GetInstance(); eventMgr.EventUpdate(); //カーソルが動いていたら int commandSelectNumber = monsterMenuManager.GetSkillCommandParts().CommandSelectForNumber(new Vector3(6.08f, 0, 0), new Vector3(0, 1.72f, 0)); if (commandSelectNumber > -1) { //SE monsterMenuManager.GetInputSoundProvider().UpSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } else if (sceneMgr.inputProvider_.UpSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectUp(new Vector3(0, 1.72f, 0))) { //SE monsterMenuManager.GetInputSoundProvider().UpSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.DownSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectDown(new Vector3(0, -1.72f, 0))) { //SE monsterMenuManager.GetInputSoundProvider().DownSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.RightSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectRight(new Vector3(6.08f, 0, 0))) { //SE monsterMenuManager.GetInputSoundProvider().RightSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.LeftSelect()) { //選択肢が動かせたら if (monsterMenuManager.GetSkillCommandParts().CommandSelectLeft(new Vector3(-6.08f, 0, 0))) { //SE monsterMenuManager.GetInputSoundProvider().LeftSelect(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(monsterMenuManager.GetSkillCommandParts().SelectNumber())); } } else if (sceneMgr.inputProvider_.SelectEnter() || monsterMenuManager.GetSkillCommandParts().MouseLeftButtonTriggerActive()) { } else if (sceneMgr.inputProvider_.SelectBack() || sceneMgr.inputProvider_.SelectMouseRightTrigger()) { monsterMenuManager.monsterTradeSelectSkill_ = false; monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(false); monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderInactive(); monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReset(); //操作の変更 AllSceneManager.GetInstance().inputProvider_ = new KeyBoardNormalInputProvider(); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().SelectReset(new Vector3(-5.29f, 0.82f, 2)); return(MonsterMenuSceneProcess.MonsterSelect); } return(monsterMenuManager.GetNowProcessState().state_); }
public override MonsterMenuSceneProcess Update(MonsterMenuManager monsterMenuManager) { AllSceneManager sceneMgr = AllSceneManager.GetInstance(); AllEventManager eventMgr = AllEventManager.GetInstance(); PlayerBattleData playerData = PlayerBattleData.GetInstance(); eventMgr.EventUpdate(); if (sceneMgr.inputProvider_.UpSelect() || sceneMgr.inputProvider_.MouseWheelValue() > 0) { //SE monsterMenuManager.GetInputSoundProvider().UpSelect(); monsterMenuManager.GetMagazineParts().UpRollMagazineParts(); //操作の変更 eventMgr.InputProviderChangeEventSet(new KeyBoardNormalInputProvider()); monsterMenuManager.GetBulletParts().UpRollStatusInfoParts(); monsterMenuManager.selectMonsterNumber_ += 1; monsterMenuManager.selectMonsterNumber_ %= playerData.GetMonsterDatasLength(); //モンスターのパラメーターの反映 monsterMenuManager.GetParameterInfoFrameParts().MonsterDataReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_)); //モンスターの技の名前の反映 for (int i = 0; i < monsterMenuManager.GetSkillCommandParts().GetCommandWindowTextsCount(); ++i) { monsterMenuManager.GetSkillCommandParts().CommandWindowChoiceTextChange(i, " " + playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(i).skillName_); } //最後のステータスインフォパーツに反映 int referMonsterNumber = (monsterMenuManager.selectMonsterNumber_ + 2) % playerData.GetMonsterDatasLength(); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 1).MonsterStatusInfoSet(playerData.GetMonsterDatas(referMonsterNumber)); //状態異常の表示、非表示 monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 2).GetFirstAbnormalStateInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 2).GetSecondAbnormalStateInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(0).GetFirstAbnormalStateInfoParts().gameObject.SetActive(false); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(0).GetSecondAbnormalStateInfoParts().gameObject.SetActive(false); //タイプの表示、非表示 monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 2).GetFirstElementInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 2).GetSecondElementInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(0).GetFirstElementInfoParts().gameObject.SetActive(false); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(0).GetSecondElementInfoParts().gameObject.SetActive(false); sceneMgr.inputProvider_ = new InactiveInputProvider(); } else if (sceneMgr.inputProvider_.DownSelect() || sceneMgr.inputProvider_.MouseWheelValue() < 0) { //SE monsterMenuManager.GetInputSoundProvider().DownSelect(); monsterMenuManager.GetMagazineParts().DownRollMagazineParts(); //操作の変更 eventMgr.InputProviderChangeEventSet(new KeyBoardNormalInputProvider()); monsterMenuManager.GetBulletParts().DownRollStatusInfoParts(); monsterMenuManager.selectMonsterNumber_ -= 1; monsterMenuManager.selectMonsterNumber_ = System.Math.Abs((monsterMenuManager.selectMonsterNumber_ + playerData.GetMonsterDatasLength()) % playerData.GetMonsterDatasLength()); //モンスターのパラメーターの反映 monsterMenuManager.GetParameterInfoFrameParts().MonsterDataReflect(playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_)); //モンスターの技の名前の反映 for (int i = 0; i < monsterMenuManager.GetSkillCommandParts().GetCommandWindowTextsCount(); ++i) { monsterMenuManager.GetSkillCommandParts().CommandWindowChoiceTextChange(i, " " + playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(i).skillName_); } //最初のステータスインフォパーツに反映 int referMonsterNumber = System.Math.Abs(((monsterMenuManager.selectMonsterNumber_ - 2) + playerData.GetMonsterDatasLength()) % playerData.GetMonsterDatasLength()); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(0).MonsterStatusInfoSet(playerData.GetMonsterDatas(referMonsterNumber)); //状態異常の表示、非表示 monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(1).GetFirstAbnormalStateInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(1).GetSecondAbnormalStateInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 1).GetFirstAbnormalStateInfoParts().gameObject.SetActive(false); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 1).GetSecondAbnormalStateInfoParts().gameObject.SetActive(false); //タイプの表示、非表示 monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(1).GetFirstElementInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(1).GetSecondElementInfoParts().gameObject.SetActive(true); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 1).GetFirstElementInfoParts().gameObject.SetActive(false); monsterMenuManager.GetBulletParts().GetEventStatusInfosParts(monsterMenuManager.GetBulletParts().GetEventStatusInfosPartsSize() - 1).GetSecondElementInfoParts().gameObject.SetActive(false); sceneMgr.inputProvider_ = new InactiveInputProvider(); } else if (sceneMgr.inputProvider_.RightSelect()) { } else if (sceneMgr.inputProvider_.LeftSelect()) { } else if (sceneMgr.inputProvider_.SelectEnter() || sceneMgr.inputProvider_.SelectMouseLeftTrigger()) { //None以外だったら if (playerData.GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).tribesData_.monsterNumber_ != (int)MonsterTribesDataNumber.None) { //SE monsterMenuManager.GetInputSoundProvider().SelectEnter(); //技の情報の反映 monsterMenuManager.GetSkillInfoFrameParts().SkillInfoReflect(PlayerBattleData.GetInstance().GetMonsterDatas(monsterMenuManager.selectMonsterNumber_).GetSkillDatas(0)); //技の選択肢の初期化 monsterMenuManager.GetSkillCommandParts().commandWindowChoicesColliderActive(); monsterMenuManager.GetSkillCommandParts().GetCursorParts().gameObject.SetActive(true); //操作の変更 AllSceneManager.GetInstance().inputProvider_ = new KeyBoardNormalTriggerInputProvider(); return(MonsterMenuSceneProcess.SkillSelect); } } else if (sceneMgr.inputProvider_.SelectBack() || sceneMgr.inputProvider_.SelectMouseRightTrigger()) { if (playerData.GetMonsterDatas(0).battleActive_) { sceneMgr.inputProvider_ = new InactiveInputProvider(); playerData.changeMonsterNumber_ = 0; playerData.changeMonsterActive_ = true; //フェードアウト 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, 255) ); eventMgr.EventSpriteRenderersUpdateExecuteSet(EventSpriteRendererEventManagerExecute.ChangeColor); eventMgr.AllUpdateEventExecute(0.4f); //シーンの切り替え eventMgr.SceneChangeEventSet(SceneState.Battle, SceneChangeMode.Continue); } } return(monsterMenuManager.GetNowProcessState().state_); }
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) { 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 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 Player(UInt64 guid, EEntityCampType campType) : base(guid, campType) { BattleData = new PlayerBattleData(); }
public Iplayer(UInt64 sGUID, EntityCampType campType) : base(sGUID, campType) { BattleData = new PlayerBattleData(); }
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); }