using System;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
public class EquipDecomMailWin : Window
|
{
|
[SerializeField] Text decomText;
|
[SerializeField] Button closeBtn;
|
[SerializeField] Button okBtn;
|
[SerializeField] GameObject getMatObj;
|
[SerializeField] List<CommonItemBaisc> getMatlist = new List<CommonItemBaisc>();
|
|
PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
|
ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } }
|
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void AddListeners()
|
{
|
closeBtn.AddListener(CloseClick);
|
okBtn.AddListener(CloseClick);
|
}
|
|
protected override void OnPreOpen()
|
{
|
playerPack.RefreshDecomAttrAct += RefreshDecompose;
|
RefreshDecompose();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
playerPack.RefreshDecomAttrAct -= RefreshDecompose;
|
}
|
|
protected override void OnAfterClose()
|
{
|
|
}
|
|
private void RefreshDecompose()
|
{
|
decomText.text = Language.Get("PetLetter2", playerPack.recordAutoDecomNum, playerPack.addDecomposeExp);
|
List<PackModel.DecomposeGetMatInfo> matInfolist = playerPack.SetShowMatInfo();
|
if (matInfolist.Count > 0)
|
{
|
getMatObj.SetActive(true);
|
for(int i = 0; i < getMatlist.Count; i++)
|
{
|
if(i < matInfolist.Count)
|
{
|
getMatlist[i].gameObject.SetActive(true);
|
PackModel.DecomposeGetMatInfo matInfo = matInfolist[i];
|
ItemCellModel cellModel = new ItemCellModel(matInfo.ItemID, false, (ulong)matInfo.Count, matInfo.IsBind,
|
"", PackType.Deleted, false, ConfigParse.Analysis(matInfo.UserData));
|
getMatlist[i].Init(cellModel);
|
getMatlist[i].cellBtn.RemoveAllListeners();
|
getMatlist[i].cellBtn.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(matInfo.ItemID, false, (ulong)matInfo.Count, -1, matInfo.IsBind,
|
false, PackType.Deleted, "", ConfigParse.Analysis(matInfo.UserData));
|
tipsModel.SetItemTipsModel(attrData);
|
|
});
|
}
|
else
|
{
|
getMatlist[i].gameObject.SetActive(false);
|
}
|
}
|
}
|
else
|
{
|
getMatObj.SetActive(false);
|
}
|
}
|
}
|
}
|