using System; using Cute; using UnityEngine; using Wizard; public class NetworkMatchNextSceneSelector : INextSceneSelector { private BattleResultUIController m_battleResultNewControl; private bool _movingToMyPage; public NetworkMatchNextSceneSelector(BattleResultUIController battleResultControl) { m_battleResultNewControl = battleResultControl; _movingToMyPage = false; } public void Setup(bool isWin, GameObject gameObject) { if (m_battleResultNewControl.ResultMsgReportBtnFlag) { m_battleResultNewControl.ReportBtnObj.labels[0].text = Data.SystemText.Get("Con_Management_001_Button"); m_battleResultNewControl.ReportBtnObj.gameObject.SetActive(value: true); m_battleResultNewControl.ReportBtnObj.buttons[0].onClick.Clear(); m_battleResultNewControl.ReportBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate { ConsistencyReportButtonAction.CreateReportConfirmWindow(); })); } m_battleResultNewControl.MissionBtnObj.labels[0].text = Data.SystemText.Get("Battle_0200"); m_battleResultNewControl.MissionBtnObj.buttons[0].onClick.Clear(); m_battleResultNewControl.MissionBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate { GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_COMMON_BUTTON); UIManager.GetInstance().createInSceneCenterLoading(); MissionInfoTask missionInfoTask = GameMgr.GetIns().GetMissionInfoTask(); missionInfoTask.SetParameter(); m_battleResultNewControl.StartCoroutine(Toolbox.NetworkManager.Connect(missionInfoTask, delegate { m_battleResultNewControl.CreateMissionList(); }, BaseTask.OnRequestFailed, BaseTask.OnFailedErrorCode)); })); m_battleResultNewControl.HomeBtnObj.labels[0].text = Data.SystemText.Get("Battle_0202"); m_battleResultNewControl.HomeBtnObj.buttons[0].onClick.Clear(); m_battleResultNewControl.HomeBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate { MoveToMyPage(); })); m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Battle_0204"); m_battleResultNewControl.RetryBtnObj.buttons[0].onClick.Clear(); m_battleResultNewControl.RetryBtnObj.buttons[0].onClick.Add(new EventDelegate(delegate { GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_COMMON_BUTTON); DeckInfoTask task = new DeckInfoTask(); task.SetParameter(Data.CurrentFormat); UIManager.GetInstance().StartCoroutine(Toolbox.NetworkManager.Connect(task, delegate { Action onUpdateDeckUICustomize = delegate(DeckUI deckUI) { if (deckUI.Deck.Format == GameMgr.GetIns().GetDataMgr().GetSelectDeckFormat() && deckUI.Deck.GetDeckID() == GameMgr.GetIns().GetDataMgr().GetSelectDeckId()) { deckUI.SetTextAppealLabelLeft(Data.SystemText.Get("Card_0235")); } }; DeckSelectUIDialog.Create(DeckSelectUIDialog.GetTitleByBattleType(GameMgr.GetIns().GetDataMgr().m_BattleType), task.DeckGroupListData, Data.CurrentFormat, DeckSelectUIDialog.eFormatChangeUIType.SingleFormat, isVisibleCreateNew: true, delegate(DialogBase dialog, DeckData deckData) { FreeAndRankMatchDeckSelectConfirmDialog.Create(dialog, deckData, isBattleEnd: true); }, new DeckSelectUI.InitOptions { OnUpdateDeckUICustomize = onUpdateDeckUICustomize }); })); })); } public void Show() { iTween.MoveTo(m_battleResultNewControl.ButtonGrid.gameObject, iTween.Hash("position", m_battleResultNewControl.DefaultPosDict["ButtonGrid"], "time", 0.5f, "islocal", true, "easetype", iTween.EaseType.easeOutExpo)); } private void MoveToMyPage() { if (!_movingToMyPage) { _movingToMyPage = true; GameMgr.GetIns().GetSoundMgr().PlaySe(Se.TYPE.SYS_BTN_CANCEL_TRANS); GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.MyPage); } } }