//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Monday, March 04, 2019
|
//--------------------------------------------------------
|
using UnityEngine;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
|
public class EquipStarMaterialCandidateWidget : MonoBehaviour
|
{
|
[SerializeField] Text m_Title;
|
[SerializeField] Button m_Close;
|
[SerializeField] RectTransform m_MaterialContainer;
|
[SerializeField] CyclicScroll m_MaterialCycScroll;
|
|
[SerializeField] RectTransform m_GetWayContainer;
|
[SerializeField] WayCell[] m_GetWays;
|
|
EquipStarModel model { get { return ModelCenter.Instance.GetModel<EquipStarModel>(); } }
|
EquipModel equipModel { get { return ModelCenter.Instance.GetModel<EquipModel>(); } }
|
|
public void Display(Int2 equipPosition, int starLevel)
|
{
|
var config = RealmConfig.Get(equipModel.GetEquipSet(equipPosition.x).realm);
|
m_Title.text = string.Format("点击选择装备");
|
|
var materials = model.GetMaterials(equipPosition, starLevel);
|
if (materials.IsNullOrEmpty())
|
{
|
m_MaterialContainer.gameObject.SetActive(false);
|
m_GetWayContainer.gameObject.SetActive(true);
|
|
var ways = model.GetMaterialGetWays(equipPosition, starLevel);
|
for (var i = 0; i < m_GetWays.Length; i++)
|
{
|
var behaviour = m_GetWays[i];
|
if (i < ways.Count)
|
{
|
behaviour.gameObject.SetActive(true);
|
var getWayConfig = GetItemWaysConfig.Get(ways[i]);
|
behaviour.icon.SetSprite(getWayConfig.Icon);
|
behaviour.wayName.text = getWayConfig.Text;
|
behaviour.funcName.text = getWayConfig.name;
|
behaviour.wayButton.SetListener(() =>
|
{
|
WindowCenter.Instance.Close<EquipFrameWin>();
|
ModelCenter.Instance.GetModel<GetItemPathModel>().ClickGetWay(getWayConfig.ID);
|
});
|
}
|
else
|
{
|
behaviour.gameObject.SetActive(false);
|
}
|
}
|
}
|
else
|
{
|
m_MaterialContainer.gameObject.SetActive(true);
|
m_GetWayContainer.gameObject.SetActive(false);
|
|
m_MaterialCycScroll.Init(materials);
|
}
|
|
m_Close.SetListener(Close);
|
}
|
|
private void Close()
|
{
|
model.operateMaterialIndex.value = 0;
|
}
|
}
|
|
}
|