//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Friday, March 08, 2019
|
//--------------------------------------------------------
|
using UnityEngine;
|
using System.Collections;
|
using UnityEngine.UI;
|
using System.Collections.Generic;
|
using System;
|
|
namespace vnxbqy.UI
|
{
|
public class MyFocusAuctionBehaviour : MonoBehaviour,IInGamePush
|
{
|
[SerializeField] Transform m_Container;
|
[SerializeField] ItemCell m_ItemCell;
|
[SerializeField] Text m_ItemName;
|
[SerializeField] Button m_Close;
|
[SerializeField] Button m_Goto;
|
|
AuctionModel model { get { return ModelCenter.Instance.GetModel<AuctionModel>(); } }
|
|
public void Init()
|
{
|
gameObject.SetActive(true);
|
|
model.onFocusAuctionRefresh += OnFocusAuctionRefresh;
|
NewBieCenter.Instance.guideCompletedEvent += GuideCompletedEvent;
|
|
Display();
|
|
m_Close.SetListener(OnClose);
|
m_Goto.SetListener(Goto);
|
}
|
|
public void Unit()
|
{
|
model.onFocusAuctionRefresh -= OnFocusAuctionRefresh;
|
NewBieCenter.Instance.guideCompletedEvent -= GuideCompletedEvent;
|
|
m_Container.SetActive(false);
|
}
|
|
private void GuideCompletedEvent(int id)
|
{
|
if (gameObject.activeInHierarchy)
|
{
|
StartCoroutine(Co_Display());
|
}
|
}
|
|
IEnumerator Co_Display()
|
{
|
yield return null;
|
Display();
|
}
|
|
void Display()
|
{
|
FocusAuctionItem item;
|
if (!NewBieCenter.Instance.inGuiding
|
&& model.TryGetFocusAuctionPop(out item))
|
{
|
DisplayFocus(item);
|
}
|
else
|
{
|
m_Container.SetActive(false);
|
}
|
}
|
|
void DisplayFocus(FocusAuctionItem focusAuctionItem)
|
{
|
m_Container.SetActive(true);
|
ItemCellModel cellModel = new ItemCellModel(focusAuctionItem.itemId, true, (ulong)1);
|
m_ItemCell.Init(cellModel);
|
m_ItemCell.button.SetListener(() =>
|
{
|
ItemTipUtility.Show(focusAuctionItem.itemId);
|
});
|
|
var itemConfig = ItemConfig.Get(focusAuctionItem.itemId);
|
if (itemConfig != null)
|
{
|
m_ItemName.text = itemConfig.ItemName;
|
}
|
}
|
|
private void OnClose()
|
{
|
model.RemoveFocusItemPop();
|
Display();
|
}
|
|
private void OnFocusAuctionRefresh()
|
{
|
Display();
|
}
|
|
private void Goto()
|
{
|
FocusAuctionItem item;
|
if (model.TryGetFocusAuctionPop(out item))
|
{
|
model.LocationMyFocusItem(item.itemGuid);
|
}
|
OnClose();
|
}
|
|
public int GetSiblingIndex()
|
{
|
return transform.GetSiblingIndex();
|
}
|
|
public bool IsActive()
|
{
|
return m_Container.gameObject.activeSelf
|
&& transform.gameObject.activeSelf;
|
}
|
}
|
|
}
|
|
|
|