/// #pkgName FGUI包名 /// #panelName UIPanel名字 /// #UIName = $"{#pkgName}{#panelName}" UIKey名字 /// 该脚本由模板创建 /// created by cb 2024 using System.Collections.Generic; using FairyGUI; using FL.Data; using XGame.Framework.UI; namespace FL.FGUI { /// /// UI逻辑处理类 /// /// public partial class PartnerStarNestedCtrl : UIController { private List _starIconList; protected override void OnEnable(object intent) { AddUIListenres(); } protected override void OnDisable() { RemoveUIListenres(); } #region UI事件 private void AddUIListenres() { } private void RemoveUIListenres() { } #endregion public void ShowStarUI(int starLv) { InitStarList(); int starNum = starLv == 0 ? 0 : starLv % PartnersData.MaxStarNum; if (starLv > 0 && starNum == 0) starNum = PartnersData.MaxStarNum; VM.StarNum.selectedIndex = starNum; ShowStarIcon(starNum, starLv); } private void ClearStar() { if (_starIconList != null) { _starIconList.Clear(); _starIconList = null; } } private void InitStarList() { if (_starIconList == null) { _starIconList = new List() { VM.Star1Loader, VM.Star2Loader, VM.Star3Loader, VM.Star4Loader, VM.Star5Loader, }; } } private void ShowStarIcon(int count, int starLv) { VM.StarNum.selectedIndex = count; if (count > 0) { int colorIndex = PartnersData.Instance.GetStarStep(starLv); for (int i = 0; i < count; i++) { if (_starIconList[i] != null) { _starIconList[i].icon = AddressableDefine.PartnerStarIconName(colorIndex); } } } } } }