Files
MinFt/Client/Assets/Scripts/UI/Rank/EventRankInfoPopup.cs
2026-04-27 12:07:32 +08:00

74 lines
3.0 KiB
C#

using asap.core;
using cfg;
using GameCore;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class EventRankInfoPopup : MonoBehaviour
{
PlayerData _playerData;
List<TMP_Text> bankDrop;
List<TMP_Text> bombDrop;
List<Image> requireIcon;
Transform beilvpanel_max;
Transform bg_beilvlpanel;
TMP_Text text_beilvpanel_content;
private void Awake()
{
_playerData = GContext.container.Resolve<PlayerData>();
bankDrop = new List<TMP_Text>();
bombDrop = new List<TMP_Text>();
bankDrop.Add(transform.Find("event2/p_icon_item1/text_num").GetComponent<TMP_Text>());
bankDrop.Add(transform.Find("event2/p_icon_item2/text_num").GetComponent<TMP_Text>());
bankDrop.Add(transform.Find("event2/p_icon_item3/text_num").GetComponent<TMP_Text>());
bankDrop.Add(transform.Find("event2/p_icon_item4/text_num").GetComponent<TMP_Text>());
bombDrop.Add(transform.Find("event1/p_icon_item1/text_num").GetComponent<TMP_Text>());
bombDrop.Add(transform.Find("event1/p_icon_item2/text_num").GetComponent<TMP_Text>());
bombDrop.Add(transform.Find("event1/p_icon_item3/text_num").GetComponent<TMP_Text>());
requireIcon = new List<Image>();
for (int i = 0; i < bankDrop.Count; i++)
{
requireIcon.Add(bankDrop[i].transform.Find("icon_target").GetComponent<Image>());
}
for (int i = 0; i < bombDrop.Count; i++)
{
requireIcon.Add(bombDrop[i].transform.Find("icon_target").GetComponent<Image>());
}
beilvpanel_max = transform.Find("beilvpanel/bg_beilv_max").GetComponent<Transform>();
bg_beilvlpanel = transform.Find("beilvpanel/bg_beilv").GetComponent<Transform>();
text_beilvpanel_content = transform.Find("beilvpanel/bg_beilv/text_beilv").GetComponent<TMP_Text>();
}
public void Start()
{
var _fishingEventData = GContext.container.Resolve<FishingEventData>();
if (_fishingEventData.rankTarget != null)
{
var _tables = GContext.container.Resolve<Tables>();
Item item = _tables.TbItem[_fishingEventData.rankInit.TokenID];
for (int i = 0; i < requireIcon.Count; i++)
{
GContext.container.Resolve<IUIService>().SetImageSprite(requireIcon[i], item.Icon, BasePanel.PanelName);
}
for (int i = 0; i < _fishingEventData.rankInit.PointRobbery.Count - 1; i++)
{
bankDrop[i].text = "+" + _fishingEventData.rankInit.PointRobbery[i];
}
for (int i = 0; i < bombDrop.Count; i++)
{
bombDrop[i].text = "+" + _fishingEventData.rankInit.PointDestruction[i];
}
}
bool IsMax = _playerData.IsMaxMagnification();
beilvpanel_max.gameObject.SetActive(IsMax);
bg_beilvlpanel.gameObject.SetActive(!IsMax);
text_beilvpanel_content.text = IsMax
? "MAX"
: $"x{_playerData.GetMagnification()}";
}
}