using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.Item; using System.Collections.Generic; public class MarketPlayerPublicity : UIControllerBase { void Awake() { InitMenu(); } // Use this for initialization void OnEnable () { SetInstance(this); _BuyPage.SetActive(true); UpdatePage(); } void OnDisable() { SetInstance(null); } // Update is called once per frame void Update () { } #region showPage public GameObject _BuyPage; public UISubScollMenu _BuyItemMenu; public MarketFindPage _FindPage; public MarketEquipFilterPage _EquipFilterPaeg; public MarketItemClassPage _ItemClassPage; public MarketItemListPage _ItemListPage; public UICurrencyItem _OwnMoney; public GameObject _NoneWatchPanel; private bool _IsShowWatchPanel = false; private Market.MarketItemClass _SelectedPage; public Market.MarketItemClass SelectedPage { get { return _SelectedPage; } } private void InitMenu() { _BuyItemMenu.PushMenu(new Market.MarketItemClass(999, 1)); _BuyItemMenu.PushMenu(new Market.MarketItemClass(998, 1)); _BuyItemMenu.PushMenu(new Market.MarketItemClass(1, 2)); _BuyItemMenu.PushMenu(new Market.MarketItemClass(1, 3)); _BuyItemMenu.PushMenu(Market.GetMarketClassName(9, 4), new Market.MarketItemClass[4] { new Market.MarketItemClass(6, 2), new Market.MarketItemClass(7, 1) , new Market.MarketItemClass(7, 2), new Market.MarketItemClass(9, 1) }); } public void UpdateShopInfo() { if (!_IsShowWatchPanel) { if (_ItemListPage.gameObject.activeSelf) { _ItemListPage.RefreshItems(); _ItemListPage.UpdateWatchBtn(); } } else { if (Market.WatchItems.Count > 0) { _ItemListPage.gameObject.SetActive(true); _ItemListPage.UpdateWatchItems(); _NoneWatchPanel.SetActive(false); } else { _ItemListPage.gameObject.SetActive(false); _ItemListPage.UpdateWatchItems(); _NoneWatchPanel.SetActive(true); } } } public void UpdatePage() { _OwnMoney.ShowOwnCurrency(MONEYTYPE.MONEYTYPE_COIN); StartCoroutine(UpdateMenu()); } private IEnumerator UpdateMenu() { yield return new WaitForEndOfFrame(); _BuyItemMenu.ShowDefaultFirst(); } public void OnMenu(object menuObj) { var selectedPage = menuObj as Market.MarketItemClass; if (selectedPage == null) return; _SelectedPage = selectedPage; _IsShowWatchPanel = false; _NoneWatchPanel.SetActive(false); if (_SelectedPage.ItemClass == 999)//关注 { _IsShowWatchPanel = true; OnShowWatch(); } else if (_SelectedPage.ItemClass == 998)//关注 { ShowItemList(null, MarketItemListPage.SHOW_ITEM_CNT_PER_PAGE); } else if (_SelectedPage.ItemClass == 1) { if (_SelectedPage.ItemSubClass == 1) { ShowEquipFilter(0); } else if (_SelectedPage.ItemSubClass == 2) { ShowEquipFilter(2); } else if (_SelectedPage.ItemSubClass == 3) { ShowEquipFilter(1); } } else { ShowItemClass(); } } public void OnShowWatch() { _FindPage.gameObject.SetActive(false); _EquipFilterPaeg.gameObject.SetActive(false); _ItemClassPage.gameObject.SetActive(false); _ItemListPage.gameObject.SetActive(false); _NoneWatchPanel.SetActive(true); CG_REQ_USER_SHOP_FOCUS_ITEMS packet = (CG_REQ_USER_SHOP_FOCUS_ITEMS)PacketDistributed.CreatePacket(MessageID.PACKET_CG_REQ_USER_SHOP_FOCUS_ITEMS); packet.SetState((int)CG_REQ_USER_SHOP_FOCUS_ITEMS.EUserShopFocusState.EFocustemOnShow); packet.SendPacket(); } private void ShowEquipFilter(int filterType) { _FindPage.gameObject.SetActive(false); _EquipFilterPaeg.gameObject.SetActive(true); _ItemClassPage.gameObject.SetActive(false); _ItemListPage.gameObject.SetActive(false); _EquipFilterPaeg.SetEquipFilter(filterType); } private void ShowItemClass() { _FindPage.gameObject.SetActive(false); _EquipFilterPaeg.gameObject.SetActive(false); _ItemClassPage.gameObject.SetActive(true); _ItemListPage.gameObject.SetActive(false); _ItemClassPage.ShowItemClass(_SelectedPage.ItemClass, _SelectedPage.ItemSubClass, true); } public void ShowItemList(List itemDataID, int itemCnt, int isRare = 2) { _FindPage.gameObject.SetActive(false); _EquipFilterPaeg.gameObject.SetActive(false); _ItemClassPage.gameObject.SetActive(false); _ItemListPage.gameObject.SetActive(true); _ItemListPage.ShowItemType(itemDataID, itemCnt, isRare); } private void ShowLikeItemList() { _FindPage.gameObject.SetActive(false); _EquipFilterPaeg.gameObject.SetActive(false); _ItemClassPage.gameObject.SetActive(false); _ItemListPage.gameObject.SetActive(true); } #endregion }