//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Wednesday, September 06, 2017
|
//--------------------------------------------------------
|
|
using Snxxz.UI;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using TableConfig;
|
using UnityEngine;
|
using UnityEngine.Events;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI {
|
|
public enum KnapsackFuncTitle
|
{
|
bag,
|
Ornament,//配饰
|
store,
|
depot, //仓库
|
devour, //吞噬
|
}
|
|
public class KnapSackWin : Window
|
{
|
|
#region 成员变量
|
[SerializeField]
|
private Button _closeBtn;
|
[SerializeField]
|
private Button _leftBtn;
|
[SerializeField]
|
private Button _rightBtn;
|
[SerializeField]
|
private FunctionButton _bagTitle; //背包
|
[SerializeField]
|
private FunctionButton _ornamentTitle; //配饰
|
[SerializeField]
|
private FunctionButton _storeTitle; //随身商店
|
[SerializeField]
|
private FunctionButton _depotTitle; //仓库
|
[SerializeField]
|
private FunctionButton _devourTitle; //仓库
|
[SerializeField]
|
private FunctionButtonGroup _funcBtnGroup;
|
|
#endregion
|
|
PlayerPackModel _playerPack;
|
PlayerPackModel playerPack
|
{
|
get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); }
|
}
|
|
public static KnapsackFuncTitle titleType = KnapsackFuncTitle.bag;
|
|
#region Built-in
|
protected override void BindController()
|
{
|
|
}
|
|
protected override void AddListeners()
|
{
|
_bagTitle.onClick.AddListener(() => { OnClickBagTitle(); });
|
_ornamentTitle.onClick.AddListener(() => { OnClickOrnamentTitle(); });
|
_storeTitle.onClick.AddListener(() => { OnClickStoreTitle(); });
|
_depotTitle.onClick.AddListener(() => { OnClickDepotTitle(); });
|
_devourTitle.onClick.AddListener(() => { OnClickDevourTitle(); });
|
_leftBtn.onClick.AddListener(OnClickLeftBtn);
|
_rightBtn.onClick.AddListener(OnClickRightBtn);
|
_closeBtn.onClick.AddListener(OnHidePanel);
|
}
|
|
protected override void OnPreOpen()
|
{
|
|
|
}
|
|
protected override void OnActived()
|
{
|
base.OnActived();
|
this.transform.SetAsLastSibling();
|
_ornamentTitle.state = TitleBtnState.Locked;
|
_funcBtnGroup.TriggerByOrder(functionOrder);
|
}
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
CloseSubWindows();
|
titleType = KnapsackFuncTitle.bag;
|
playerPack.SetLookIndex(null);
|
playerPack.isPlayBetterEquipEffect = false;
|
LocalSave.DeleteKey(PlayerPackModel.RecordKnapsackTitle);
|
}
|
|
protected override void OnAfterClose()
|
{
|
if (!WindowJumpMgr.Instance.IsJumpState)
|
{
|
WindowCenter.Instance.Open<MainInterfaceWin>();
|
}
|
}
|
#endregion
|
|
private void OnClickDepotTitle()
|
{
|
CloseSubWindows();
|
titleType = KnapsackFuncTitle.depot;
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<DepotWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<DepotWin>();
|
}
|
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<BagWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<BagWin>(true);
|
}
|
playerPack.SetLookIndex(null);
|
playerPack.isPlayBetterEquipEffect = false;
|
functionOrder = _depotTitle.order;
|
}
|
|
private void OnClickStoreTitle()
|
{
|
CloseSubWindows();
|
titleType = KnapsackFuncTitle.store;
|
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<BagStoreWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<BagStoreWin>();
|
}
|
|
playerPack.SetLookIndex(null);
|
playerPack.isPlayBetterEquipEffect = false;
|
functionOrder = _storeTitle.order;
|
}
|
|
private void OnClickOrnamentTitle()
|
{
|
|
playerPack.SetLookIndex(null);
|
playerPack.isPlayBetterEquipEffect = false;
|
functionOrder = _ornamentTitle.order;
|
|
}
|
|
private void OnClickBagTitle()
|
{
|
CloseSubWindows();
|
titleType = KnapsackFuncTitle.bag;
|
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<BagWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<BagWin>(true);
|
}
|
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<RoleEquipWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<RoleEquipWin>();
|
}
|
functionOrder = _bagTitle.order;
|
}
|
|
|
private void OnClickDevourTitle()
|
{
|
CloseSubWindows();
|
titleType = KnapsackFuncTitle.devour;
|
|
if (windowState == WindowState.Opened)
|
{
|
WindowCenter.Instance.OpenWithoutAnimation<EquipDevourWin>();
|
}
|
else
|
{
|
WindowCenter.Instance.Open<EquipDevourWin>();
|
}
|
functionOrder = _devourTitle.order;
|
}
|
|
private void OnClickRightBtn()
|
{
|
_funcBtnGroup.TriggerNext();
|
}
|
|
private void OnClickLeftBtn()
|
{
|
_funcBtnGroup.TriggerLast();
|
}
|
|
private void CloseSubWindows()
|
{
|
WindowCenter.Instance.CloseImmediately<BagWin>();
|
WindowCenter.Instance.CloseImmediately<DepotWin>();
|
WindowCenter.Instance.CloseImmediately<BagStoreWin>();
|
WindowCenter.Instance.CloseImmediately<RoleEquipWin>();
|
WindowCenter.Instance.CloseImmediately<EquipDevourWin>();
|
}
|
|
private void OnHidePanel()
|
{
|
CloseImmediately();
|
}
|
}
|
|
}
|
|
|
|
|