using Cute;
using UnityEngine;
using Wizard;

public class ArenaNextSceneSelector : INextSceneSelector
{
	private BattleResultUIController m_battleResultNewControl;

	private bool _movingToMyPage;

	public ArenaNextSceneSelector(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();
		}));
		if (GameMgr.GetIns().GetDataMgr().IsColosseumBattleType())
		{
			m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Battle_0489");
		}
		else if (GameMgr.GetIns().GetDataMgr().IsCompetitionBattleType())
		{
			m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Competition_0021");
		}
		else if (GameMgr.GetIns().GetDataMgr().m_BattleType == DataMgr.BattleType.Sealed)
		{
			m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Sealed_BattleResult_0001");
		}
		else
		{
			m_battleResultNewControl.RetryBtnObj.labels[0].text = Data.SystemText.Get("Battle_0203");
		}
		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);
			if (GameMgr.GetIns().GetDataMgr().m_BattleType == DataMgr.BattleType.TwoPick)
			{
				GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.TwoPick);
			}
			else if (GameMgr.GetIns().GetDataMgr().m_BattleType == DataMgr.BattleType.Sealed)
			{
				GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.Sealed);
			}
			else if (GameMgr.GetIns().GetDataMgr().IsCompetitionBattleType())
			{
				GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.CompetitionLobby);
			}
			else
			{
				GameMgr.GetIns().GetBattleCtrl().BattleEnd(UIManager.ViewScene.Colosseum);
			}
		}));
	}

	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);
		}
	}
}
