//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Thursday, January 25, 2018
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using TableConfig;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI {
|
|
public class DogzPackWin : Window
|
{
|
[SerializeField] List<DogzEquip> m_DogzEquips;
|
[SerializeField] List<Button> m_DogzUnEquipBtns;
|
[SerializeField] List<Text> m_DogzUnEquipContents;
|
[SerializeField] Image m_DogzHeadIcon;
|
[SerializeField] Button m_CloseBtn;
|
[SerializeField] Button m_GetEquipBtn;
|
[SerializeField] ScrollerController m_PackController;
|
[SerializeField] Button qualitySelectBtn;
|
[SerializeField] Button starSelectBtn;
|
[SerializeField] SortTable qualitySort;
|
[SerializeField] SortTable starSort;
|
|
DogzModel m_DogzModel;
|
DogzModel dogzModel
|
{
|
get
|
{
|
return m_DogzModel ?? (m_DogzModel = ModelCenter.Instance.GetModel<DogzModel>());
|
}
|
}
|
|
DogzPackModel m_Model;
|
DogzPackModel model
|
{
|
get
|
{
|
return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DogzPackModel>());
|
}
|
}
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_CloseBtn.onClick.AddListener(CloseClick);
|
m_GetEquipBtn.onClick.AddListener(GetEquipBtn);
|
qualitySelectBtn.AddListener(ClickQualitySelect);
|
starSelectBtn.AddListener(ClickStarSelect);
|
}
|
|
protected override void OnPreOpen()
|
{
|
UpdateDogzEquip();
|
UpdateDogzPack();
|
starSort.gameObject.SetActive(false);
|
qualitySort.gameObject.SetActive(false);
|
}
|
|
protected override void OnAfterOpen()
|
{
|
}
|
|
protected override void OnPreClose()
|
{
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
#endregion
|
|
private void UpdateDogzEquip()
|
{
|
var _dogzCfg = ConfigManager.Instance.GetTemplate<DogzConfig>(dogzModel.presentSelectDogz);
|
m_DogzHeadIcon.SetSprite(_dogzCfg.HeadIcon);
|
m_DogzHeadIcon.SetNativeSize();
|
for (int i = 0; i < m_DogzEquips.Count; i++)
|
{
|
ItemModel _data;
|
bool _equiped = dogzModel.TryGetDogzEquip(dogzModel.presentSelectDogz, i, out _data);
|
m_DogzUnEquipBtns[i].gameObject.SetActive(!_equiped);
|
m_DogzEquips[i].gameObject.SetActive(_equiped);
|
if (_equiped)
|
{
|
m_DogzEquips[i].Display(_data.itemId);
|
}
|
else
|
{
|
var _itemColor = dogzModel.GetDogzEquipLimitByIndex(dogzModel.presentSelectDogz, i);
|
m_DogzUnEquipContents[i].text = StringUtility.Contact(DogzModel.GetItemColorName(_itemColor),
|
DogzModel.GetDogzPartNameByIndex(i));
|
m_DogzUnEquipContents[i].color = UIHelper.GetUIColor(_itemColor);
|
}
|
}
|
}
|
|
private void UpdateDogzPack()
|
{
|
if (m_PackController.GetNumberOfCells(m_PackController.m_Scorller) == 0)
|
{
|
m_PackController.Refresh();
|
var _line = model.DogzPackGridCnt / 4;
|
for (int i = 0; i < _line; i++)
|
{
|
m_PackController.AddCell(ScrollerDataType.Header, i);
|
}
|
m_PackController.Restart();
|
}
|
else
|
{
|
m_PackController.m_Scorller.RefreshActiveCellViews();
|
}
|
}
|
|
private void GetEquipBtn()
|
{
|
//--界面跳转
|
}
|
|
private void ClickStarSelect()
|
{
|
starSort.gameObject.SetActive(!starSort.gameObject.activeInHierarchy);
|
}
|
|
private void ClickQualitySelect()
|
{
|
qualitySort.gameObject.SetActive(!qualitySort.gameObject.activeInHierarchy);
|
}
|
}
|
|
}
|
|
|
|
|