82 lines
2.3 KiB
C#
82 lines
2.3 KiB
C#
using asap.core;
|
|
using game;
|
|
using GameCore;
|
|
using System;
|
|
using UnityEngine;
|
|
|
|
public class LuckyADTaskItem : ItemRewardBase
|
|
{
|
|
public LuckyADTaskItemData data { get; private set; }
|
|
GameObject bg_gray;
|
|
GameObject bg_normal;
|
|
GameObject bg_done;
|
|
AdvertButton btn_advert;
|
|
Action<LuckyADTaskItem> onBuySuccess;
|
|
private void Awake()
|
|
{
|
|
bg_gray = transform.Find("bg_gray").gameObject;
|
|
bg_normal = transform.Find("bg_normal").gameObject;
|
|
bg_done = transform.Find("bg_done").gameObject;
|
|
btn_advert = transform.Find("btn_advert").GetComponent<AdvertButton>();
|
|
for (int i = 0; i < 2; i++)
|
|
{
|
|
var rewardItem = transform.Find($"reward{i + 1}").GetComponent<RewardItemNew>();
|
|
if (rewardItem != null)
|
|
{
|
|
rewardItemNews.Add(rewardItem);
|
|
}
|
|
}
|
|
}
|
|
private void Start()
|
|
{
|
|
btn_advert.SetData(OnBuySuccess, AdvertPopupType.LuckyMission);
|
|
btn_advert.adticketBtnGray.onClick.AddListener(() => ToastPanel.Show(LocalizationMgr.GetText("EventLuckyCardsADTaskPopupPanel_4")));
|
|
|
|
}
|
|
void OnBuySuccess()
|
|
{
|
|
data.state = -1;
|
|
Refresh();
|
|
onBuySuccess?.Invoke(this);
|
|
}
|
|
public void Init(LuckyADTaskItemData luckyTaskItemData, Action<LuckyADTaskItem> onBuySuccess)
|
|
{
|
|
this.data = luckyTaskItemData;
|
|
this.onBuySuccess = onBuySuccess;
|
|
SetItem();
|
|
}
|
|
void SetItem()
|
|
{
|
|
Refresh();
|
|
System.Collections.Generic.List<ItemData> itemData = GContext.container.Resolve<PlayerItemData>().GetItemDataByDropIdLureInflation(data.inflationRate, data.reward);
|
|
SetItemData(itemData);
|
|
}
|
|
|
|
public void Refresh()
|
|
{
|
|
bg_gray.gameObject.SetActive(data.state != 1);
|
|
bg_normal.gameObject.SetActive(data.state == 1);
|
|
bg_done.SetActive(data.state == -1);
|
|
btn_advert.gameObject.SetActive(data.state >= 0);
|
|
|
|
if (data.state == 0)
|
|
{
|
|
btn_advert.SetGray();
|
|
}
|
|
else if (data.state == 1)
|
|
{
|
|
btn_advert.ShowBtn();
|
|
}
|
|
}
|
|
}
|
|
public class LuckyADTaskItemData
|
|
{
|
|
public int index;
|
|
public int reward;
|
|
/// <summary>
|
|
/// // 0:不可看 1:可看 -1:已看
|
|
/// </summary>
|
|
public int state;
|
|
public float inflationRate;
|
|
}
|