using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
/// <summary>
|
/// 招募
|
/// </summary>
|
public class HeroCallWin : UIBase
|
{
|
[SerializeField] Button ruleBtn;
|
[SerializeField] OwnItemCell ownItemCell;
|
[SerializeField] Button scoreBtn;
|
[SerializeField] Text scoreText;
|
[SerializeField] GameObject scoreTween;
|
[SerializeField] Toggle skipToggle;
|
[SerializeField] Button call1Btn;
|
[SerializeField] Image call1ItemIcon;
|
[SerializeField] Text call1Text;
|
[SerializeField] Text freeCDTime;
|
[SerializeField] Button call10Btn;
|
[SerializeField] Image call10ItemIcon;
|
[SerializeField] Text call10Text;
|
[SerializeField] Button closeBtn;
|
|
|
protected override void InitComponent()
|
{
|
closeBtn.AddListener(CloseWindow);
|
skipToggle.AddListener((value) =>
|
{
|
LocalSave.SetBool(HeroUIManager.skipKey, value);
|
});
|
ownItemCell.itemID = TreasureSetConfig.Get((int)HappXBTitle.HeroCallAdvanced).CostItemID;
|
call1Btn.AddListener(SendHeroCall);
|
call10Btn.AddListener(() =>
|
{
|
HeroUIManager.Instance.selectCallType = HappXBTitle.HeroCallAdvanced;
|
HeroUIManager.Instance.selectCallIndex = 1;
|
HappyXBModel.Instance.SendXBManyQuest((int)HappXBTitle.HeroCallAdvanced);
|
});
|
scoreBtn.AddListener(() =>
|
{
|
UIManager.Instance.OpenWindow<HeroCallScoreWin>();
|
});
|
|
ruleBtn.AddListener(() =>
|
{
|
UIManager.Instance.OpenWindow<HeroCallRuleWin>();
|
});
|
}
|
|
|
protected override void OnPreOpen()
|
{
|
HappyXBModel.Instance.RefreshXBTypeInfoAct += Refresh;
|
skipToggle.isOn = LocalSave.GetBool(HeroUIManager.skipKey, false);
|
Refresh();
|
}
|
|
protected override void OnPreClose()
|
{
|
HappyXBModel.Instance.RefreshXBTypeInfoAct -= Refresh;
|
}
|
|
|
public override void Refresh()
|
{
|
var funcSet = TreasureSetConfig.Get((int)HappXBTitle.HeroCallAdvanced);
|
var item = ItemConfig.Get(funcSet.CostItemID);
|
var IconKey = item.IconKey;
|
call1ItemIcon.SetOrgSprite(IconKey);
|
call10ItemIcon.SetOrgSprite(IconKey);
|
if (HappyXBModel.Instance.IsHaveFreeXB((int)HappXBTitle.HeroCallAdvanced))
|
{
|
call1Text.text = Language.Get("L1127");
|
}
|
else
|
{
|
call1Text.text = Language.Get("L1100", item.ItemName, funcSet.CostItemCountList[0]);
|
}
|
call10Text.text = Language.Get("L1100", item.ItemName, funcSet.CostItemCountList[1]);
|
|
scoreText.text = UIHelper.GetMoneyCnt(51) + "/" + TreasureSetConfig.Get((int)HappXBTitle.HeroCallScore).CostMoneyList[0];
|
|
if (UIHelper.GetMoneyCnt(51) >= TreasureSetConfig.Get((int)HappXBTitle.HeroCallScore).CostMoneyList[0])
|
{
|
scoreTween.SetActive(true);
|
}
|
else
|
{
|
scoreTween.SetActive(false);
|
}
|
|
RefreshFreeTime();
|
}
|
|
//每秒刷新免费CD的倒计时
|
float cdTime = 0;
|
|
void LateUpdate()
|
{
|
//每秒触发一次
|
cdTime += Time.deltaTime;
|
if (cdTime < 1) return;
|
cdTime = 0;
|
RefreshFreeTime();
|
}
|
|
void RefreshFreeTime()
|
{
|
if (!HappyXBModel.Instance.IsHaveFreeXB((int)HappXBTitle.HeroCallAdvanced))
|
{
|
freeCDTime.SetActive(false);
|
}
|
else
|
{
|
freeCDTime.SetActive(true);
|
freeCDTime.text = Language.Get("L1128", TimeUtility.SecondsToHMS(TimeUtility.GetTodayRemainSeconds()));
|
}
|
}
|
|
void SendHeroCall()
|
{
|
HeroUIManager.Instance.selectCallType = HappXBTitle.HeroCallAdvanced;
|
HeroUIManager.Instance.selectCallIndex = 0;
|
|
if (HappyXBModel.Instance.IsHaveFreeXB((int)HappXBTitle.HeroCallAdvanced))
|
{
|
HappyXBModel.Instance.SendXBQuest((int)HappXBTitle.HeroCallAdvanced, 0, 1);
|
}
|
else
|
{
|
HappyXBModel.Instance.SendOneXBQuest((int)HappXBTitle.HeroCallAdvanced);
|
}
|
}
|
|
}
|