/// #pkgName FGUI包名
/// #panelName UIPanel名字
/// #UIName = $"{#pkgName}{#panelName}" UIKey名字
/// 该脚本由模板创建
/// created by cb 2024
using FL.Data;
using XGame.Database;
using XGame.Framework.UI;
namespace FL.FGUI
{
///
/// UI逻辑处理类
///
///
public partial class PartnerSbStarUpBtnCtrl : UIController
{
protected override void OnEnable(object intent)
{
AddUIListenres();
}
protected override void OnDisable()
{
RemoveUIListenres();
}
#region UI事件
private void AddUIListenres()
{
Context.AddListener(EventDefine.UpdataItemData, OnItemUpdate);
}
private void RemoveUIListenres()
{
Context.RemoveListener(EventDefine.UpdataItemData, OnItemUpdate);
}
private void OnItemUpdate(int eventId, object args)
{
ShowUI();
}
#endregion
private int _sbId;
public void SetData(int sbId)
{
_sbId = sbId;
ShowUI();
}
private void ShowUI()
{
var attr = PartnersData.Instance.GetPartnerAttrByTableId(_sbId);
var star = attr?.RisingStarLv ?? 1;
var starUpTable = partnerStarUpTableRepo.GetPartnerStarTable(_sbId, star);
XGame.Framework.Assert.IsNotNull(
starUpTable,
$"圣兵升星表不存在,id:{_sbId},starlv:{star}"
);
var num = ItemData.Instance.GetItemNum(starUpTable.PetId);
VM.SpPbar.max = starUpTable.StarUpCost;
VM.SpPbar.value = num;
VM.Grayed.selectedIndex = num >= starUpTable.StarUpCost ? 0 : 1;
}
}
}