//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Friday, September 08, 2017
|
//--------------------------------------------------------
|
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
|
namespace vnxbqy.UI
|
{
|
|
public class FastFinishWin : Window
|
{
|
[SerializeField] Text m_UseItem;
|
[SerializeField] Text m_UseMoney;
|
[SerializeField] Slider m_SplitSlider;
|
[SerializeField] Text m_Number;
|
[SerializeField] Button m_AddBtn;
|
[SerializeField] Button m_ReduceBtn;
|
[SerializeField] Button m_SplitBtn;
|
[SerializeField] Button m_CloseBtn;
|
[SerializeField] ItemCell m_ItemCell;
|
|
PackModel playerPack { get { return ModelCenter.Instance.GetModel<PackModel>(); } }
|
DailyQuestModel dailyModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
|
|
int m_itemID = 0;
|
int m_Money = 0;
|
int hasItemCnt = 0;
|
#region Built-in
|
protected override void BindController()
|
{
|
var configNum1 = FuncConfigConfig.Get("ActivityPlace").Numerical5;
|
var _jsonDataC = LitJson.JsonMapper.ToObject(configNum1);
|
m_itemID = int.Parse(_jsonDataC[0].ToString());
|
m_Money = int.Parse(_jsonDataC[1].ToString());
|
}
|
|
protected override void AddListeners()
|
{
|
m_SplitSlider.SetListener((float value) => { OnSplitValueChange(); });
|
m_AddBtn.SetListener(OnClickAddBtn);
|
m_ReduceBtn.SetListener(OnClickReduceBtn);
|
m_SplitBtn.SetListener(OnUseBtn);
|
m_CloseBtn.SetListener(OnClickCloseBtn);
|
}
|
|
protected override void OnPreOpen()
|
{
|
|
}
|
|
protected override void OnAfterOpen()
|
{
|
InitPanel();
|
}
|
|
protected override void OnPreClose()
|
{
|
hasItemCnt = 0;
|
}
|
|
protected override void OnAfterClose()
|
{
|
WindowCenter.Instance.Open<MainInterfaceWin>();
|
}
|
#endregion
|
|
|
void InitPanel()
|
{
|
int maxValue = 0;
|
|
hasItemCnt = playerPack.GetItemCountByID(PackType.Item, m_itemID);
|
if (hasItemCnt == 0)
|
{
|
m_ItemCell.SetActive(false);
|
m_UseMoney.SetActive(true);
|
m_UseMoney.text = Language.Get("ActivityPlaceFastFinishMoney", m_Money, 1);
|
maxValue = Math.Min(dailyModel.ActivityPlaceInfo.PlaceCount, (int)PlayerDatas.Instance.baseData.bindDiamond / m_Money);
|
}
|
else
|
{
|
m_ItemCell.SetActive(true);
|
m_UseMoney.SetActive(false);
|
maxValue = hasItemCnt;
|
var cellModel = new ItemCellModel(m_itemID, true, 1);
|
m_ItemCell.Init(cellModel);
|
m_ItemCell.button.SetListener(() =>
|
{
|
ItemTipUtility.Show(m_itemID);
|
});
|
m_UseItem.text = Language.Get("ActivityPlaceFastFinishItem", 1);
|
}
|
|
|
m_SplitSlider.minValue = 1;
|
m_SplitSlider.maxValue = maxValue;
|
m_SplitSlider.value = m_SplitSlider.minValue;
|
|
m_Number.text = Mathf.Ceil(m_SplitSlider.value).ToString();
|
}
|
|
public void OnSplitValueChange()
|
{
|
int curValue = (int)Mathf.Ceil(m_SplitSlider.value);
|
m_Number.text = curValue.ToString();
|
|
if (hasItemCnt == 0)
|
{
|
m_UseMoney.text = Language.Get("ActivityPlaceFastFinishMoney", m_Money*curValue, curValue);
|
}
|
else
|
{
|
m_UseItem.text = Language.Get("ActivityPlaceFastFinishItem", curValue);
|
}
|
}
|
|
public void OnClickAddBtn()
|
{
|
if (m_SplitSlider.value < m_SplitSlider.maxValue)
|
{
|
m_SplitSlider.value++;
|
}
|
}
|
|
public void OnClickReduceBtn()
|
{
|
if (m_SplitSlider.value > m_SplitSlider.minValue)
|
{
|
m_SplitSlider.value--;
|
}
|
}
|
|
public void OnUseBtn()
|
{
|
CB028_tagCMActivityPlaceQuickFinish fastFinish = new CB028_tagCMActivityPlaceQuickFinish();
|
fastFinish.FinishCount = (byte)Mathf.Ceil(m_SplitSlider.value);
|
GameNetSystem.Instance.SendInfo(fastFinish);
|
|
OnClickCloseBtn();
|
}
|
|
void OnClickCloseBtn()
|
{
|
Close();
|
}
|
|
}
|
|
}
|