备份CatanBuilding瘦身独立工程
This commit is contained in:
114
Assets/Scripts/Duel/UI/DuelInfoPopupPanel/DuelInfoPopupPanel.cs
Normal file
114
Assets/Scripts/Duel/UI/DuelInfoPopupPanel/DuelInfoPopupPanel.cs
Normal file
@@ -0,0 +1,114 @@
|
||||
using asap.core;
|
||||
using cfg;
|
||||
using game;
|
||||
using GameCore;
|
||||
using System.Collections.Generic;
|
||||
using TMPro;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class DuelInfoPopupPanel : MonoBehaviour
|
||||
{
|
||||
Image icon_rank;
|
||||
Head head;
|
||||
Head head1;
|
||||
TMP_Text text_info;
|
||||
List<Image> icon_ranks;
|
||||
List<TMP_Text> txt_ranks;
|
||||
List<TMP_Text> text_points;
|
||||
DuelRankRewardItem duelRankRewardItem;
|
||||
DuelRankRewardItem duelRankRewardItem1;
|
||||
FishingEventData fishingEventData;
|
||||
IUserService userService;
|
||||
IUIService uiService;
|
||||
private void Awake()
|
||||
{
|
||||
fishingEventData = GContext.container.Resolve<FishingEventData>();
|
||||
userService = GContext.container.Resolve<IUserService>();
|
||||
uiService = GContext.container.Resolve<IUIService>();
|
||||
icon_rank = transform.Find("root/page1/info1/btn_rank/icon").GetComponent<Image>();
|
||||
head = transform.Find("root/page1/info3/btn_head").GetComponent<Head>();
|
||||
head1 = transform.Find("root/page2/info3/player_info/btn_head").GetComponent<Head>();
|
||||
text_info = transform.Find("root/page1/info1/text_info").GetComponent<TMP_Text>();
|
||||
icon_ranks = new List<Image>();
|
||||
txt_ranks = new List<TMP_Text>();
|
||||
text_points = new List<TMP_Text>();
|
||||
for (int i = 1; i < 8; i++)
|
||||
{
|
||||
icon_ranks.Add(transform.Find($"root/page3/info1/rank/rank{i}/btn_green/icon_rank").GetComponent<Image>());
|
||||
txt_ranks.Add(transform.Find($"root/page3/info1/rank/rank{i}/btn_green/text_rank").GetComponent<TMP_Text>());
|
||||
text_points.Add(transform.Find($"root/page3/info1/rank/rank{i}/btn_green/text_point").GetComponent<TMP_Text>());
|
||||
}
|
||||
duelRankRewardItem = transform.Find("root/page3/info2/item1").GetComponent<DuelRankRewardItem>();
|
||||
duelRankRewardItem1 = transform.Find("root/page3/info2/item2").GetComponent<DuelRankRewardItem>();
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
uiService.SetImageSprite(icon_rank, fishingEventData.rankInit.Icon);
|
||||
string title = LocalizationMgr.GetText(fishingEventData.rankInit.Title_l10n_key);
|
||||
text_info.text = LocalizationMgr.GetFormatTextValue("UI_EventFishingDuelPanel_51", title);
|
||||
|
||||
head.SetData(userService.AvatarUrl);
|
||||
head1.SetData(userService.AvatarUrl);
|
||||
var data = GContext.container.Resolve<Tables>().TbEventSolomain.DataList;
|
||||
for (int i = 0; i < txt_ranks.Count; i++)
|
||||
{
|
||||
txt_ranks[i].text = LocalizationMgr.GetText(data[i].RankText_l10n_key);
|
||||
text_points[i].text = data[i].TrophyRange[0].ToString();
|
||||
uiService.SetImageSprite(icon_ranks[i], data[i].RankIcon);
|
||||
}
|
||||
ShowReward();
|
||||
}
|
||||
void ShowReward()
|
||||
{
|
||||
List<EventSolomain> eventSolomain = GContext.container.Resolve<Tables>().TbEventSolomain.DataList;
|
||||
int count = eventSolomain.Count;
|
||||
int index = count / 2;
|
||||
EventSolomain solomain = eventSolomain[index];
|
||||
uiService.SetImageSprite(duelRankRewardItem.icon_rank, solomain.RankIcon);
|
||||
duelRankRewardItem.text_rank.text = LocalizationMgr.GetText(solomain.RankText_l10n_key);
|
||||
duelRankRewardItem.text_point.text = solomain.TrophyRange[0].ToString();
|
||||
List<ItemData> rewardItemData = GContext.container.Resolve<PlayerItemData>()
|
||||
.GetItemDataByDropId(solomain.SeasonReward);
|
||||
if (rewardItemData != null)
|
||||
{
|
||||
int dataCount = rewardItemData.Count;
|
||||
int rewardCount = duelRankRewardItem.rewardItems.Count;
|
||||
for (int j = 0; j < rewardCount; j++)
|
||||
{
|
||||
if (j < dataCount)
|
||||
{
|
||||
duelRankRewardItem.rewardItems[j].SetData(rewardItemData[j]);
|
||||
}
|
||||
else
|
||||
{
|
||||
duelRankRewardItem.rewardItems[j].gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
solomain = eventSolomain[index - 1];
|
||||
uiService.SetImageSprite(duelRankRewardItem1.icon_rank, solomain.RankIcon);
|
||||
duelRankRewardItem1.text_rank.text = LocalizationMgr.GetText(solomain.RankText_l10n_key);
|
||||
duelRankRewardItem1.text_point.text = solomain.TrophyRange[0].ToString();
|
||||
rewardItemData = GContext.container.Resolve<PlayerItemData>()
|
||||
.GetItemDataByDropId(solomain.SeasonReward);
|
||||
if (rewardItemData != null)
|
||||
{
|
||||
int dataCount = rewardItemData.Count;
|
||||
int rewardCount = duelRankRewardItem1.rewardItems.Count;
|
||||
for (int j = 0; j < rewardCount; j++)
|
||||
{
|
||||
if (j < dataCount)
|
||||
{
|
||||
duelRankRewardItem1.rewardItems[j].SetData(rewardItemData[j]);
|
||||
}
|
||||
else
|
||||
{
|
||||
duelRankRewardItem1.rewardItems[j].gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user