//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Thursday, June 21, 2018
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
namespace vnxbqy.UI
|
{
|
|
public class WishBottleAwardWin : Window
|
{
|
|
List<ItemCell> itemList = new List<ItemCell>();
|
List<Image> itemSelect = new List<Image>();
|
List<Image> getYetList = new List<Image>();
|
Button m_OKButton;
|
Text m_Text;
|
Button m_CloseButton;
|
|
int SelectIndex = -1;
|
Operation operationType = Operation.HolidayWish;
|
|
HolidayWishPoolModel model { get { return ModelCenter.Instance.GetModel<HolidayWishPoolModel>(); } }
|
PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
|
|
#region Built-in
|
|
protected override void BindController()
|
{
|
itemList.Clear();
|
itemList.Add(GetWidgt<ItemCell>("ItemCell1"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell2"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell3"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell4"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell5"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell6"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell7"));
|
itemList.Add(GetWidgt<ItemCell>("ItemCell8"));
|
|
itemSelect.Clear();
|
itemSelect.Add(GetWidgt<Image>("select1"));
|
itemSelect.Add(GetWidgt<Image>("select2"));
|
itemSelect.Add(GetWidgt<Image>("select3"));
|
itemSelect.Add(GetWidgt<Image>("select4"));
|
itemSelect.Add(GetWidgt<Image>("select5"));
|
itemSelect.Add(GetWidgt<Image>("select6"));
|
itemSelect.Add(GetWidgt<Image>("select7"));
|
itemSelect.Add(GetWidgt<Image>("select8"));
|
|
getYetList.Clear();
|
getYetList.Add(GetWidgt<Image>("yet1"));
|
getYetList.Add(GetWidgt<Image>("yet2"));
|
getYetList.Add(GetWidgt<Image>("yet3"));
|
getYetList.Add(GetWidgt<Image>("yet4"));
|
getYetList.Add(GetWidgt<Image>("yet5"));
|
getYetList.Add(GetWidgt<Image>("yet6"));
|
getYetList.Add(GetWidgt<Image>("yet7"));
|
getYetList.Add(GetWidgt<Image>("yet8"));
|
|
m_OKButton = GetWidgt<Button>("OK");
|
m_CloseButton = GetWidgt<Button>("CloseBtn");
|
m_Text = GetWidgt<Text>("wishText");
|
}
|
|
protected override void AddListeners()
|
{
|
m_CloseButton.AddListener(CloseClick);
|
}
|
|
protected override void OnPreOpen()
|
{
|
SelectIndex = -1;
|
model.UpdateBottleInfo += Display;
|
Display();
|
}
|
|
protected override void OnAfterOpen()
|
{
|
|
}
|
|
protected override void OnPreClose()
|
{
|
model.UpdateBottleInfo -= Display;
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
|
#endregion
|
|
void Display()
|
{
|
OperationHolidayWish holiday;
|
OperationTimeHepler.Instance.TryGetOperation(operationType, out holiday);
|
|
|
for (int i = 0; i < itemList.Count; i++)
|
{
|
var items = holiday.wishBottles[model.bottleNumSelect].ChoosePrizeList;
|
if (i < items.Length)
|
{
|
itemList[i].SetActive(true);
|
|
int itemID = (int)items[i].ItemID;
|
var config = ItemConfig.Get(itemID);
|
var itemData = new ItemCellModel(itemID, false, items[i].ItemCount);
|
itemList[i].Init(itemData);
|
itemList[i].auctionIcon.SetActive(items[i].IsBind > 0 ? true : false);
|
|
|
//选中
|
foreach (var select in itemSelect)
|
{
|
select.SetActive(false);
|
}
|
if (SelectIndex != -1)
|
itemSelect[SelectIndex].SetActive(true);
|
|
int index = i;
|
itemList[i].button.SetListener(() => {
|
foreach (var select in itemSelect)
|
{
|
select.SetActive(false);
|
}
|
itemSelect[index].SetActive(true);
|
if (SelectIndex == index)
|
{
|
ItemTipUtility.Show(itemID);
|
}
|
|
SelectIndex = index;
|
});
|
|
//已领取
|
getYetList[i].SetActive(model.GetBottleAwardState(model.bottleNumSelect, i) == 1);
|
}
|
else
|
{
|
itemList[i].SetActive(false);
|
}
|
}
|
|
var needNum = holiday.wishBottles[model.bottleNumSelect].NeedWishValue;
|
var curNum = model.bottleDict[model.bottleNumSelect].x;
|
string curNumStr = UIHelper.AppendColor(curNum >= needNum ? TextColType.DarkGreen:TextColType.Red, curNum.ToString());
|
|
m_Text.text = Language.Get("SubWishInfo7", curNumStr, needNum);
|
|
m_OKButton.SetListener(() => {
|
if (SelectIndex == -1)
|
{
|
SysNotifyMgr.Instance.ShowTip("WishBottle1");
|
return;
|
}
|
if (model.GetBottleAwardState(model.bottleNumSelect, SelectIndex) == 1)
|
{
|
SysNotifyMgr.Instance.ShowTip("WishBottle");
|
return;
|
}
|
|
if (playerPack.GetEmptyGridCount(PackType.Item) <= 0)
|
{
|
SysNotifyMgr.Instance.ShowTip("BagFull");
|
return;
|
}
|
|
if (curNum < needNum)
|
{
|
SysNotifyMgr.Instance.ShowTip("WishBottle2");
|
return;
|
}
|
|
int recordIndex = holiday.wishBottles[model.bottleNumSelect].ChoosePrizeList[SelectIndex].RecordIndex;
|
|
CAA10_tagCMFeastWishBottleChooseItem wish = new CAA10_tagCMFeastWishBottleChooseItem();
|
wish.BottleNum = model.bottleNumSelect;
|
wish.RecordIndex = (byte)recordIndex;
|
GameNetSystem.Instance.SendInfo(wish);
|
});
|
|
}
|
|
}
|
|
}
|