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 rewardList) { int idx = 0; var itemViewDataList = new List(); 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)); } }