Files
ft/Client/Assets/Scripts/UI/SocialRush/SocialRushStPatrickPanel.cs
2026-06-29 21:18:33 +08:00

46 lines
1.5 KiB
C#

using System.Collections.Generic;
using GameCore;
using UnityEngine;
using System.Threading.Tasks;
using UniRx;
using System;
using asap.core;
using Game;
public class SocialRushStPatrickPanel : Assets.Scripts.UI.SocialRush.SocialRushMainPanel
{
[SerializeField] private Animation aniRoot;
protected override async Task Refresh(List<ItemData> rewardList)
{
int idx = 0;
var itemViewDataList = new List<SocialRushRewardItemViewData>();
while (idx < rewardList.Count)
{
itemViewDataList.Add(new SocialRushRewardItemViewData
{
Reward = rewardList[idx],
IsDone = false,
Type = idx % 2 == 0 ? SocialRushRewardItemViewType.LeftSide : SocialRushRewardItemViewType.RightSide,
DoShow = true
});
idx++;
}
if (itemViewDataList.Count > 0)
itemViewDataList[^1].Type = SocialRushRewardItemViewType.Final;
while (idx < RewardSlotCount)
{
itemViewDataList.Add(new SocialRushRewardItemViewData { DoShow = false });
idx++;
}
aniRoot.Play();
GContext.Publish(new EventUISound("audio_ui_eventsocial_saintpatrick_refresh"));
await Task.Delay(TimeSpan.FromSeconds(20f/60));
for (int i = 0; i < itemViewDataList.Count; i++)
{
socialRushRewardItemViews[i].Set(itemViewDataList[i]);
}
await Task.Delay(TimeSpan.FromSeconds(40f/60));
}
}