//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Tuesday, July 10, 2018
|
//--------------------------------------------------------
|
using UnityEngine;
|
using System.Collections;
|
using UnityEngine.UI;
|
using System.Collections.Generic;
|
|
using System;
|
|
namespace Snxxz.UI
|
{
|
//极品白拿
|
public class NeedForWhiteInvestment : MonoBehaviour
|
{
|
[SerializeField] Text m_Text_Day;
|
[SerializeField] Text m_Text_AddPower;
|
[SerializeField] Text m_Text_NeedMoeny;
|
[SerializeField] Text m_Text_Name;
|
[SerializeField] ItemCell m_ItemCell_One;
|
[SerializeField] ItemCell m_ItemCell_Two;
|
[SerializeField] ItemCell m_ItemCell_Three;
|
|
[SerializeField] Button m_Button_OnClick;
|
[SerializeField] ImageEx m_ButtonImage;
|
[SerializeField] Text m_Text_Button;
|
|
[SerializeField] GameObject m_Image_Miss;
|
[SerializeField] GameObject m_Image_Receive;
|
|
NeedForWhiteModel m_NeedForWhiteModel;
|
NeedForWhiteModel needForWhiteModel { get { return m_NeedForWhiteModel ?? (m_NeedForWhiteModel = ModelCenter.Instance.GetModel<NeedForWhiteModel>()); } }
|
ItemTipsModel _itemTipsModel;
|
ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
|
|
private int Get_Id = 0;
|
private bool IsWhetherToCount = false;
|
public void GetId(int id)
|
{
|
Get_Id = id;
|
IsWhetherToCount = false;
|
SetReceiveInformation(id);
|
if (needForWhiteModel.NeedForWhiteDic.ContainsKey(id))
|
{
|
var NeedForWhite = needForWhiteModel.NeedForWhiteDic[id];
|
m_Text_Day.text = string.Format(Language.Get("Full_Refund"), NeedForWhite.Day);
|
m_Text_AddPower.text = string.Format(Language.Get("Add_Power"), NeedForWhite.AddPower);
|
m_Text_Name.text = NeedForWhite.Name;
|
int Money = (int)UIHelper.GetMoneyCnt(1);
|
var buySateClass = needForWhiteModel.BuySate[id];
|
if (Money >= NeedForWhite.NeedMoney)
|
{
|
m_Text_NeedMoeny.color = UIHelper.GetUIColor(TextColType.Green);
|
}
|
else
|
{
|
if (buySateClass.receive == 0)
|
{
|
m_Text_NeedMoeny.color = UIHelper.GetUIColor(TextColType.Red);
|
}
|
else
|
{
|
m_Text_NeedMoeny.color = UIHelper.GetUIColor(TextColType.Green);
|
}
|
}
|
m_Text_NeedMoeny.text = NeedForWhite.NeedMoney.ToString();
|
var Job = PlayerDatas.Instance.baseData.Job;
|
List<Item> NeedForWhiteItem = NeedForWhite.AwardItem.GetAwardItem(Job);
|
m_ItemCell_One.gameObject.SetActive(false);
|
m_ItemCell_Two.gameObject.SetActive(false);
|
m_ItemCell_Three.gameObject.SetActive(false);
|
for (int i = 0; i < NeedForWhiteItem.Count; i++)
|
{
|
int Type = i;
|
Item item = NeedForWhiteItem[i];
|
var Item = ItemConfig.Get(item.id);
|
ItemCellModel cellModel = new ItemCellModel(item.id, true, (ulong)item.count);
|
switch (Type)
|
{
|
case 0:
|
m_ItemCell_One.gameObject.SetActive(true);
|
m_ItemCell_One.Init(cellModel);
|
m_ItemCell_One.button.RemoveAllListeners();
|
m_ItemCell_One.button.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(item.id, false, (ulong)item.count);
|
itemTipsModel.SetItemTipsModel(attrData);
|
});
|
break;
|
case 1:
|
m_ItemCell_Two.gameObject.SetActive(true);
|
m_ItemCell_Two.Init(cellModel);
|
m_ItemCell_Two.button.RemoveAllListeners();
|
m_ItemCell_Two.button.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(item.id, false, (ulong)item.count);
|
itemTipsModel.SetItemTipsModel(attrData);
|
});
|
break;
|
case 2:
|
m_ItemCell_Three.gameObject.SetActive(true);
|
m_ItemCell_Three.Init(cellModel);
|
m_ItemCell_Three.button.RemoveAllListeners();
|
m_ItemCell_Three.button.AddListener(() =>
|
{
|
ItemAttrData attrData = new ItemAttrData(item.id, false, (ulong)item.count);
|
itemTipsModel.SetItemTipsModel(attrData);
|
});
|
break;
|
default:
|
break;
|
}
|
}
|
}
|
}
|
|
private void SetReceiveInformation(int id)
|
{
|
m_Image_Miss.SetActive(false);
|
m_Image_Receive.SetActive(false);
|
var NeedForWhite = needForWhiteModel.NeedForWhiteDic[id];
|
if (needForWhiteModel.BuySate.ContainsKey(id))
|
{
|
TimeSpan ts = (DateTime.Now - needForWhiteModel.DateTime_S);
|
int second = (int)ts.TotalSeconds + needForWhiteModel.OpenTimeS;
|
var buySateClass = needForWhiteModel.BuySate[id];
|
if (buySateClass.receive == 0)//------未购买
|
{
|
|
if (needForWhiteModel.FreeGoodsOpenTimeS - second > 0)
|
{
|
m_ButtonImage.gray = false; ;
|
m_Text_Button.text = Language.Get("Buy_Now");
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() =>
|
{
|
PurchaseBulletBox(id);
|
});
|
|
}
|
else//------------错过
|
{
|
m_Image_Miss.SetActive(true);
|
m_ButtonImage.gray = true;
|
m_Text_Button.text = Language.Get("TheCumulativeOnlineMiss");
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() =>
|
{
|
SysNotifyMgr.Instance.ShowTip("Missing_Tips");
|
});
|
}
|
}
|
else if (buySateClass.receive == 1)//---------已领取
|
{
|
m_Text_Button.text = Language.Get("RealmPractice110");
|
m_ButtonImage.gray = true;
|
m_Image_Receive.SetActive(true);
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() =>
|
{
|
SysNotifyMgr.Instance.ShowTip("Pick_Up_Tips");
|
});
|
}
|
else//------可领
|
{
|
m_Image_Receive.SetActive(true);
|
TimeSpan ts1 = (DateTime.Now - buySateClass.dateTime);
|
int _second = (int)ts1.TotalSeconds + buySateClass.receive;
|
if (NeedForWhite.ReturnTime > _second)//---时间未到
|
{
|
IsWhetherToCount = true;
|
m_ButtonImage.gray = false;
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() => {
|
SysNotifyMgr.Instance.ShowTip("Waiting_For_Prompt");});
|
}
|
else//--倒计时结束可领l
|
{
|
IsWhetherToCount = false;
|
m_ButtonImage.gray = false;
|
m_Button_OnClick.interactable = true;
|
m_Text_Button.text = Language.Get("Z1043");
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() => { needForWhiteModel.BuyReceive(id); });
|
|
}
|
}
|
}
|
}
|
|
private void LateUpdate()
|
{
|
if (IsWhetherToCount)
|
{
|
var NeedForWhite = needForWhiteModel.NeedForWhiteDic[Get_Id];
|
var buySateClass = needForWhiteModel.BuySate[Get_Id];
|
TimeSpan ts1 = (DateTime.Now - buySateClass.dateTime);
|
int _second = (int)ts1.TotalSeconds + buySateClass.receive;
|
if (NeedForWhite.ReturnTime - _second > 0)
|
{
|
TimeLeftSecond(NeedForWhite.ReturnTime - _second);
|
}
|
else
|
{
|
IsWhetherToCount = false;
|
m_ButtonImage.gray = false;
|
m_Text_Button.text = Language.Get("Z1043");
|
m_Button_OnClick.RemoveAllListeners();
|
m_Button_OnClick.AddListener(() => { needForWhiteModel.BuyReceive(Get_Id); });
|
}
|
}
|
else
|
{
|
IsWhetherToCount = false;
|
}
|
}
|
private void TimeLeftSecond(int second)
|
{
|
string timeString = string.Empty;
|
TimeSpan ts = new TimeSpan(second * TimeSpan.TicksPerSecond);
|
int Day = (int)ts.TotalDays;
|
int hour = (int)ts.TotalHours % 24;
|
int minute = (int)ts.TotalMinutes % 60;
|
int _second = (int)ts.TotalSeconds % 60;
|
if (ts.TotalDays > 0)//天
|
{
|
timeString = Day + Language.Get("L1074") + hour + Language.Get("Hour") + minute + Language.Get("Minute") + _second + Language.Get("RealmWin_Bewrite_35");
|
}
|
else if (ts.TotalHours > 0)//时
|
{
|
timeString = 0 + Language.Get("L1074") + hour + Language.Get("Hour") + minute + Language.Get("Minute") + _second + Language.Get("RealmWin_Bewrite_35");
|
}
|
else if (ts.TotalMinutes > 0)//分
|
{
|
timeString = 0 + Language.Get("L1074") + 0 + Language.Get("Hour") + minute + Language.Get("Minute") + _second + Language.Get("RealmWin_Bewrite_35");
|
}
|
else//秒
|
{
|
timeString = 0 + Language.Get("L1074") + 0 + Language.Get("Hour") + 0 + Language.Get("Minute") + _second + Language.Get("RealmWin_Bewrite_35");
|
}
|
m_Text_Button.text = string.Format(Language.Get("Time_Left"), timeString);
|
}
|
|
public void PurchaseBulletBox(int ID)
|
{
|
var NeedForWhite = needForWhiteModel.NeedForWhiteDic[ID];
|
int Money = (int)UIHelper.GetMoneyCnt(1);
|
if (Money >= NeedForWhite.NeedMoney)
|
{
|
ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), string.Format(Language.Get("Consumption_Tips"),
|
NeedForWhite.NeedMoney, NeedForWhite.Name, NeedForWhite.NeedMoney, NeedForWhite.Day), (bool isOk) =>
|
{
|
if (isOk)
|
{
|
needForWhiteModel.BuyReceive(ID);
|
}
|
});
|
}
|
else
|
{
|
WindowCenter.Instance.Open<RechargeTipWin>();
|
}
|
}
|
}
|
}
|
|
|
|