using System; using System.Collections.Generic; using Animancer; using Logic.Multilingual; using RuntimeData; using TH1Resource; using TMPro; using UnityEngine; using UnityEngine.UI; namespace TH1_UI.View.Outside { public class UIOutsideLibraryWonderPanelMono : MonoBehaviour { public TextMeshProUGUI TopTitle; public Image WonderImage; public Image GroundImage; public TextMeshProUGUI Name; public TextMeshProUGUI CivName; public Image CivBG; public RectTransform CivRect; public TextMeshProUGUI Desc; public List AchieveItems; public Button CloseButton; public Button LeftButton; public Button RightButton; public AnimancerComponent Animancer; public void Init(Action onStartClick) { } public bool SetContent(Empire empire,WonderTypeEnum wonderType) { if (!Table.Instance.LibraryDataAssets.GetLibraryInfoByWonder(empire, wonderType,out var info)) return false; if (!Table.Instance.PlayerDataAssets.GetPlayerInfo(empire, out var playerInfo)) return false; var groundSprite = Table.Instance.GridAndResourceDataAssets.GetGroundSprite(empire.Civ, GridSpType.None); var wonderSprite = Table.Instance.GridAndResourceDataAssets.GetWonderSprite( empire,wonderType); MultilingualManager.Instance.SetUIText(TopTitle,info.Name); WonderImage.sprite = wonderSprite; GroundImage.sprite = groundSprite; MultilingualManager.Instance.SetUIText(Name,info.Name); MultilingualManager.Instance.SetUIText(CivName,playerInfo.CivName); CivBG.color = playerInfo.Color; MultilingualManager.Instance.SetUIText(Desc,info.Desc); //Step #3 设定成就 SetAchieveItems(empire,wonderType); CloseButton.onClick.RemoveAllListeners(); CloseButton.onClick.AddListener(Hide); return true; } public void SetNavigationButtons(bool canMoveLeft, bool canMoveRight, Action onLeftClick, Action onRightClick) { EnsureNavigationButtons(); SetNavigationButton(LeftButton, canMoveLeft, onLeftClick); SetNavigationButton(RightButton, canMoveRight, onRightClick); } private void EnsureNavigationButtons() { if (LeftButton == null) { LeftButton = FindNavigationButton("LeftButton"); } if (RightButton == null) { RightButton = FindNavigationButton("RightButton"); } } private Button FindNavigationButton(string buttonName) { var buttons = GetComponentsInChildren