/// <summary> /// 変数の内容を初期化(クエスト終了時に初期化しておく) /// </summary> public static void clearValues() { m_QuestAreaID = 0; m_QuestMissionID = 0; m_PlayerParty = null; m_MasterDataCache.clearCachePlayerAll(); m_MasterDataCache.clearCacheEnemyAll(); m_QuestFloor = 0; m_AcquireKey = false; m_LBSCharaIdx = GlobalDefine.PartyCharaIndex.ERROR; m_SkillRequestLimitBreak.clearRequest(); m_QuestTotalTurn = 0; m_BattleRequest = null; m_QuestBuild = null; m_EnemyParam = null; m_TargetEnemyCurrent = InGameDefine.SELECT_NONE; m_TargetEnemyWindow = InGameDefine.SELECT_NONE; m_PlayScoreInfo = null; m_AchievementTotalingInBattle = null; m_IsKobetsuHP = true; m_BattleRound = 0; m_QuestRandSeed = 0; for (int idx = 0; idx < m_PartyMemberHands.Length; idx++) { m_PartyMemberHands[idx] = 0; } for (int idx = 0; idx < m_FieldSkillCounts.Length; idx++) { m_FieldSkillCounts[idx] = 0; } for (int skill_idx = 0; skill_idx < m_FormedSkillCounts.GetLength(0); skill_idx++) { for (int member_idx = 0; member_idx < m_FormedSkillCounts.GetLength(1); member_idx++) { m_FormedSkillCounts[skill_idx, member_idx] = 0; } } m_EnemyToPlayerTarget = GlobalDefine.PartyCharaIndex.ERROR; m_AutoPlayState = AutoPlayState.OFF; m_IsUsedAutoPlay = false; }
public static void QuestInitialize(SceneModeContinuousBattle continuous_battle) { if (SceneGoesParam.HasInstance && SceneGoesParam.Instance.m_SceneGoesParamToQuest2Build != null && SceneGoesParam.Instance.m_SceneGoesParamToQuest2Build.m_QuestBuild != null) { m_QuestBuild = SceneGoesParam.Instance.m_SceneGoesParamToQuest2Build.m_QuestBuild; } loadBattlePrefab(); m_AchievementTotalingInBattle = new AchievementTotalingInBattle(); m_AchievementTotalingInBattle.initQuset(); initBattleParam(continuous_battle); for (int idx = 0; idx < m_PlayerParty.getPartyMemberMaxCount(); idx++) { CharaOnce chara_once = m_PlayerParty.getPartyMember((GlobalDefine.PartyCharaIndex)idx, CharaParty.CharaCondition.EXIST); if (chara_once != null) { chara_once.m_PartyCharaIndex = (GlobalDefine.PartyCharaIndex)idx; } } // プレイスコア m_PlayScoreInfo = new ServerDataDefine.PlayScoreInfo(); #if false //v5.1.0ではプレイスコアの機能を無効にする { // クエストスコア補正値 int quest_base_score = 0; int quest_play_score_rate = 0; MasterDataQuest2 master_data_quest = MasterDataUtil.GetQuest2ParamFromID(continuous_battle.m_QuestMissionID); // プレイスコア計算対象クエストかどうかを調べる if (master_data_quest != null) { uint quest_score_fix_id = master_data_quest.quest_score_id; MasterDataRenewQuestScore master_data_quest_score = MasterFinder <MasterDataRenewQuestScore> .Instance.Find((int)quest_score_fix_id); if (master_data_quest_score != null) { quest_base_score = master_data_quest_score.base_score; quest_play_score_rate = master_data_quest_score.play_score_rate; } if (quest_play_score_rate > 0) { if (master_data_quest.consume_type == 1) { if (master_data_quest.consume_value > 0) { m_PlayScoreInfo.setPlayScoreQuestFlag(true); } } } } // 中断復帰していない時だけ有効(なので中断復帰用のローカル保存もしていない) if (getRestoreData() == null && m_PlayScoreInfo.isPlayScoreQuest() ) { // プレイスコア設定値取得 MasterDataPlayScore[] master_data_play_score_array = MasterFinder <MasterDataPlayScore> .Instance.GetAll(); if (master_data_play_score_array.IsNullOrEmpty() == false && quest_base_score > 0 && quest_play_score_rate > 0 ) { m_PlayScoreInfo.init(master_data_play_score_array, quest_base_score, quest_play_score_rate); } } } #endif BattleParam.m_MasterDataCache.CachePlayerMasterData(BattleParam.m_PlayerParty); BattleSceneManager.Instance.setShowHandAreaAlways(true); BattleSceneManager.Instance.PRIVATE_FIELD.QuestInitialize(); return; }