using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
|
public class FashionDressTypeBehaviour : MonoBehaviour
|
{
|
[SerializeField] int m_FashionDressType;
|
[SerializeField] Button m_Select;
|
[SerializeField] RectTransform m_ContainerSelect;
|
[SerializeField] RectTransform m_ContainerNormal;
|
[SerializeField] Transform m_SelectRedpoint;
|
[SerializeField] Transform m_NormalRedpoint;
|
|
FashionDressModel model
|
{
|
get { return ModelCenter.Instance.GetModel<FashionDressModel>(); }
|
}
|
|
private void Awake()
|
{
|
m_Select.onClick.AddListener(OnSelect);
|
}
|
|
public void Display()
|
{
|
model.selectTypeRefresh += SelectEquipPlaceRefresh;
|
RedpointCenter.Instance.redpointValueChangeEvent += RedpointValueChangeEvent;
|
DisplaySelect();
|
DisplayRedpoint();
|
}
|
|
void DisplaySelect()
|
{
|
m_ContainerSelect.SetActive(m_FashionDressType == model.selectType);
|
m_ContainerNormal.SetActive(m_FashionDressType != model.selectType);
|
}
|
|
void DisplayRedpoint()
|
{
|
var requireRedpoint = false;
|
List<int> list;
|
if (model.levelUpRedpoint.state == RedPointState.Simple
|
&& model.TryGetFashionDresses(m_FashionDressType, out list)
|
&& list.Contains(model.fashionDressRedpointId))
|
{
|
requireRedpoint = true;
|
}
|
m_SelectRedpoint.SetActive(requireRedpoint);
|
m_NormalRedpoint.SetActive(requireRedpoint);
|
}
|
|
public void Dispose()
|
{
|
model.selectTypeRefresh -= SelectEquipPlaceRefresh;
|
RedpointCenter.Instance.redpointValueChangeEvent -= RedpointValueChangeEvent;
|
}
|
|
private void RedpointValueChangeEvent(int id)
|
{
|
if (model.levelUpRedpoint.id == id)
|
{
|
DisplayRedpoint();
|
}
|
}
|
|
private void SelectEquipPlaceRefresh()
|
{
|
DisplaySelect();
|
}
|
|
private void OnSelect()
|
{
|
model.selectType = m_FashionDressType;
|
}
|
}
|
}
|
|