using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
public class RidingPetContentionWin : Window
|
{
|
[SerializeField] Button m_MountsGoToButton;
|
[SerializeField] Button m_SpiritPetGoToButton;
|
[SerializeField] Container_RidingPet m_Container_Mounts;
|
[SerializeField] Container_RidingPet m_Container_SpiritPet;
|
[SerializeField] BottomTip m_BottomTip;
|
MapModel mapModel { get { return ModelCenter.Instance.GetModel<MapModel>(); } }
|
RidingPetBossModel ridingPetBossModel { get { return ModelCenter.Instance.GetModel<RidingPetBossModel>(); } }
|
DungeonModel dungeondel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
|
|
private float m_Timer = 0;
|
|
protected override void AddListeners()
|
{
|
m_MountsGoToButton.AddListener(GoToKillMountsBoss);
|
m_SpiritPetGoToButton.AddListener(GoToKillSpiritPetBoss);
|
}
|
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void OnAfterClose()
|
{
|
m_Container_Mounts.StopShowBossRawImage();
|
m_Container_SpiritPet.StopShowAnotherBossImage();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
ridingPetBossModel.GetRidingPetBossLineDictAction -= GetRidingBossDictPackageAction;
|
}
|
|
protected override void OnPreOpen()
|
{
|
m_Container_Mounts.DisplayBossName();
|
m_Container_SpiritPet.DisplayBossName();
|
|
ridingPetBossModel.GetRidingPetBossLineDictAction += GetRidingBossDictPackageAction;
|
mapModel.RequestQueryMapLineState(RidingPetBossModel.RIDINGPETBOSS_MAP);
|
GetRidingBossDictPackageAction();
|
m_Container_Mounts.DisplayBossRawImage();
|
m_Container_SpiritPet.DisplayAnotherBossRawImage();
|
m_Container_Mounts.DisplayRewardItem();
|
m_Container_SpiritPet.DisplayRewardItem();
|
}
|
|
private void GoToKillMountsBoss()
|
{
|
dungeondel.SingleChallenge(RidingPetBossModel.RIDINGPETBOSS_MAP, m_Container_Mounts.bossIdIndex);
|
}
|
|
private void GoToKillSpiritPetBoss()
|
{
|
dungeondel.SingleChallenge(RidingPetBossModel.RIDINGPETBOSS_MAP, m_Container_SpiritPet.bossIdIndex);
|
}
|
|
protected override void LateUpdate()
|
{
|
m_Timer += Time.deltaTime;
|
if (m_Timer > 5)
|
{
|
mapModel.RequestQueryMapLineState(RidingPetBossModel.RIDINGPETBOSS_MAP);
|
m_Timer -= 5;
|
}
|
UpdatebottomTip();
|
}
|
|
public void GetRidingBossDictPackageAction()
|
{
|
switch (dailyQuestModel.GetQuestState(m_Container_Mounts.m_ActivityID))
|
{
|
case DailyQuestModel.DailyQuestState.Completed:
|
case DailyQuestModel.DailyQuestState.Normal:
|
m_Container_Mounts.DisplaySpiritPetHP();
|
break;
|
default:
|
m_Container_Mounts.DisplayActivityTime();
|
break;
|
}
|
|
switch (dailyQuestModel.GetQuestState(m_Container_SpiritPet.m_ActivityID))
|
{
|
case DailyQuestModel.DailyQuestState.Completed:
|
case DailyQuestModel.DailyQuestState.Normal:
|
m_Container_SpiritPet.DisplaySpiritPetHP();
|
break;
|
default:
|
m_Container_SpiritPet.DisplayActivityTime();
|
break;
|
}
|
}
|
|
public void UpdatebottomTip()
|
{
|
switch (dailyQuestModel.GetQuestState(m_BottomTip.m_ActivityID))
|
{
|
case DailyQuestModel.DailyQuestState.Completed:
|
case DailyQuestModel.DailyQuestState.Normal:
|
m_BottomTip.DisplayBottomRemainTimeTip();
|
break;
|
default:
|
m_BottomTip.DisplayBottomStartTip();
|
break;
|
}
|
}
|
}
|
}
|