//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, October 09, 2017 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using TableConfig; using Snxxz.UI; namespace Snxxz.UI { public class PutawayWin : Window { [SerializeField] Button closeBtn; [SerializeField] Button putawayBtn; [SerializeField] Button vippasBtn; [SerializeField] Text vippasBtnText; [SerializeField] Button soldNumBtn; [SerializeField] Text soldNum; #region 物品信息 [SerializeField] Image itemBg; [SerializeField] Image itemIcon; [SerializeField] Text itemCnt; [SerializeField] Text itemName; [SerializeField] Text itemSoldNum; [SerializeField] List starList; #endregion [SerializeField] Slider itemNumSlider; [SerializeField] Button addBtn; [SerializeField] Button reduceBtn; [SerializeField] Text itemNum; [SerializeField] Transform queryItemTf; [SerializeField] GameObject noOtherTip; [SerializeField] Text putawayBtnText; [SerializeField] Text dealItemPrice; [SerializeField] Text dealItemTip; [SerializeField] Text taxTip; VipModel m_VipModel; VipModel vipModel { get { return m_VipModel ?? (m_VipModel = ModelCenter.Instance.GetModel()); } } MarketModel m_Model = null; MarketModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel()); } } ItemTipsModel _itemTipsModel; ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel()); } } PlayerPackModel _playerPack; PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel()); } } [SerializeField] NumKeyBoard keyBoard; #region Built-in protected override void BindController() { } protected override void AddListeners() { itemNumSlider.onValueChanged.AddListener(OnItemNumChange); putawayBtn.onClick.AddListener(OnPutawayBtn); vippasBtn.onClick.AddListener(OnVipPasBtn); closeBtn.onClick.AddListener(OnCloseBtn); soldNumBtn.onClick.AddListener(OnSoldNumClick); addBtn.onClick.AddListener(OnItemNumAdd); reduceBtn.onClick.AddListener(OnItemNumReduce); keyBoard.onValueChange.AddListener(OnNumKeyboardChange); keyBoard.onConfirm.AddListener((bool _isConfirm) => { if (_isConfirm) { keyBoard.gameObject.SetActive(false); } RefreshPriceCnt((int)PutawayData.Instance.priceCnt); }); } protected override void OnPreOpen() { if (PutawayData.Instance.itemModel != null) { CB503_tagCGPYQueryBourseItemOnSale querypack = new CB503_tagCGPYQueryBourseItemOnSale(); querypack.ItemID = (uint)PutawayData.Instance.itemModel.itemInfo.ItemID; querypack.ItemName = string.Empty; querypack.QueryType = 0; GameNetSystem.Instance.SendInfo(querypack); } model.OnRefreshQueryMarketItem += OnRefreshQueryMarketItem; PwdKeyboardWin.OnPwdWinClose += OnPwdWinClose; model.OnRefreshItemDealPrice += OnRefreshItemDealPrice; keyBoard.gameObject.SetActive(false); InitData(); OnRefreshItemDealPrice((int)PutawayData.Instance.itemModel.itemInfo.ItemID); } private void OnRefreshItemDealPrice(int itemid) { if (PutawayData.Instance.itemModel.itemInfo.ItemID == (uint)itemid) { uint price = model.GetItemDealPrice((uint)PutawayData.Instance.itemModel.itemInfo.ItemID); if (price == 0) { dealItemTip.text = Language.Get("Market_Text_21"); ItemConfig cfg = Config.Instance.Get(itemid); if (cfg != null) { dealItemPrice.text = cfg.GoldPrice.ToString(); } } else { dealItemTip.text = Language.Get("Market_Text_20"); if (price == 200000000) { dealItemPrice.text = "<1"; } else { dealItemPrice.text = price.ToString(); } } } } private void OnPwdWinClose(bool okClose) { if (!hasInBuying) { if (!PwdKeyboard.Instance.pwd.Equals(string.Empty) && PwdKeyboard.Instance.pwd.Length < 6) { ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("Market_Text_26")); return; } PutawayData.Instance.pwd = PwdKeyboard.Instance.pwd; } else { hasInBuying = false; if (okClose) { pwd = PwdKeyboard.Instance.pwd; SendBuyPack(); } } } private void OnRefreshQueryMarketItem() { List list = null; noOtherTip.SetActive(true); model.queryMarketItemList.TryGetValue(0, out list); if (list != null) { int _Cnt = 0; for (int i = 0; i < list.Count; i++) { MarketItemData data = list[i]; if (data.PlayerID != PlayerDatas.Instance.baseData.PlayerID) { Transform child = queryItemTf.GetChild(_Cnt); _Cnt++; child.gameObject.SetActive(true); ItemConfig cfg = Config.Instance.Get((int)data.ItemTypeID); Text text = child.Find("PriceCnt").GetComponent(); int uintprice = (int)data.PriceCount / data.Count; if (uintprice < 1) text.text = "<1"; else text.text = data.PriceCount.ToString(); Button btn = child.GetComponent