using System;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
public class JadeDynastyEquipBeh : MonoBehaviour
|
{
|
[SerializeField] RoleEquipType equipType = RoleEquipType.retMax;
|
[SerializeField] GameObject lockObj;
|
[SerializeField] ItemCell itemCell;
|
[SerializeField] Text lockText;
|
[SerializeField] Text nameText;
|
[SerializeField] Button equipBtn;
|
[SerializeField] GameObject equipLvObj;
|
[SerializeField] Text equipLvText;
|
|
ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } }
|
PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
|
JadeDynastyEquipModel equipModel { get { return ModelCenter.Instance.GetModel<JadeDynastyEquipModel>(); } }
|
|
private void OnEnable()
|
{
|
playerPack.ItemCntAddAct += PutOnEquip;
|
playerPack.ItemCntReduceAct += PutOffEquip;
|
SetDisplay();
|
}
|
|
private void OnDisable()
|
{
|
playerPack.ItemCntAddAct -= PutOnEquip;
|
playerPack.ItemCntReduceAct -= PutOffEquip;
|
}
|
|
public void SetDisplay()
|
{
|
bool islock = equipModel.IsLockEquipPlace((int)equipType);
|
nameText.gameObject.SetActive(true);
|
nameText.text = Language.Get(equipType.ToString());
|
lockText.gameObject.SetActive(false);
|
lockObj.SetActive(islock);
|
equipBtn.RemoveAllListeners();
|
itemCell.cellBtn.RemoveAllListeners();
|
equipLvObj.SetActive(false);
|
if(islock)
|
{
|
itemCell.gameObject.SetActive(false);
|
equipBtn.AddListener(ClickEquipBtn);
|
}
|
else
|
{
|
ItemModel itemModel = playerPack.GetItemModelByIndex(PackType.rptJadeDynastyEquip, (int)equipType);
|
itemCell.gameObject.SetActive(itemModel != null);
|
if (itemModel != null)
|
{
|
equipLvObj.SetActive(true);
|
nameText.gameObject.SetActive(false);
|
itemCell.Init(itemModel);
|
itemCell.cellBtn.AddListener(() => { ClickItemCell(itemModel); });
|
equipLvText.text = Language.Get("L1091",itemModel.chinItemModel.LV);
|
}
|
else
|
{
|
equipBtn.AddListener(ClickEquipBtn);
|
}
|
}
|
}
|
|
private void ClickEquipBtn()
|
{
|
equipModel.SetLookEquipGetPath((int)equipType);
|
}
|
|
private void PutOffEquip(PackType type, int index, int id)
|
{
|
int equipIndex = 0;
|
equipModel.TryGetJadeDynastyEquipIndex((int)equipType, out equipIndex);
|
if (type != PackType.rptJadeDynastyEquip || index != equipIndex) return;
|
|
SetDisplay();
|
}
|
|
private void PutOnEquip(PackType type, int index, int id)
|
{
|
int equipIndex = 0;
|
equipModel.TryGetJadeDynastyEquipIndex((int)equipType, out equipIndex);
|
if (type != PackType.rptJadeDynastyEquip || index != equipIndex) return;
|
|
SetDisplay();
|
}
|
|
|
private void ClickItemCell(ItemModel item)
|
{
|
if (item == null) return;
|
|
tipsModel.SetItemTipsModel(item.packType,item.itemInfo.ItemGUID,false);
|
tipsModel.SetJadeDynastyPutOnTipsBtn(tipsModel.curAttrData);
|
tipsModel.ShowUICtrl();
|
}
|
}
|
}
|