//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Friday, September 21, 2018
|
//--------------------------------------------------------
|
|
using DG.Tweening;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace Snxxz.UI
|
{
|
|
public class WheelOfFortuneWin : Window
|
{
|
[SerializeField] Button m_LotteryBtn;
|
[SerializeField] RotatePointer m_RotatePointer;
|
[SerializeField] Toggle m_Toggle;
|
[SerializeField] CheckDisplay m_CheckDisplay;
|
[SerializeField] Text Money1_Text;
|
[SerializeField] Text Money2_Text;
|
[SerializeField] Text m_Text_remainingTimes;
|
[SerializeField] Button m_PromotionBtn;
|
[Header("滚动时间")]
|
public float RollingTime = 1f;
|
VipModel m_Vipmodel;
|
VipModel vipmodel { get { return m_Vipmodel ?? (m_Vipmodel = ModelCenter.Instance.GetModel<VipModel>()); } }
|
WheelOfFortuneModel wheelOfFortuneModel { get { return ModelCenter.Instance.GetModel<WheelOfFortuneModel>(); } }
|
private int remainingTimes = 0;//剩余次数
|
private int FairyJade = 0;//获取当前绑玉
|
#region Built-in
|
protected override void BindController()
|
{
|
}
|
|
protected override void AddListeners()
|
{
|
m_LotteryBtn.AddListener(OnClickButton);
|
m_Toggle.onValueChanged.AddListener(OnClickToggle);
|
m_PromotionBtn.AddListener(OnClickPromotionBtn);
|
}
|
|
protected override void OnPreOpen()
|
{
|
FairyJade = (int)UIHelper.GetMoneyCnt(2);
|
Money1_Text.text = FairyJade.ToString();
|
Money2_Text.text = UIHelper.GetMoneyCnt(1).ToString();
|
m_RotatePointer.Init();
|
IsLottery();//判断是否拥有次数
|
}
|
|
protected override void OnAfterOpen()
|
{
|
wheelOfFortuneModel.WheelOfFortuneUpdate += WheelOfFortuneUpdate;
|
RotatePointer.IsButtonShow += IsButtonShow;
|
CheckDisplay.EndOfFlashing += EndOfFlashing;
|
if (wheelOfFortuneModel.redPointStre1.state == RedPointState.Simple)
|
{
|
int GetDayOfYear = DateTime.Now.DayOfYear;
|
string strKey = "WheelOfRedPoint" + PlayerDatas.Instance.baseData.PlayerID;
|
LocalSave.SetInt(strKey, GetDayOfYear);
|
wheelOfFortuneModel.redPointStre1.state = RedPointState.None;
|
}
|
}
|
|
protected override void OnPreClose()
|
{
|
wheelOfFortuneModel.WheelOfFortuneUpdate -= WheelOfFortuneUpdate;
|
RotatePointer.IsButtonShow -= IsButtonShow;
|
CheckDisplay.EndOfFlashing -= EndOfFlashing;
|
}
|
|
private void EndOfFlashing()
|
{
|
TiedJadeChange();
|
}
|
|
private void WheelOfFortuneUpdate(float Angel)
|
{
|
m_LotteryBtn.interactable = false;
|
m_RotatePointer.SetTime(m_Toggle.isOn);
|
IsLottery();
|
}
|
|
protected override void OnAfterClose()
|
{
|
}
|
|
private void OnClickButton()
|
{
|
m_CheckDisplay.CloseAll();
|
wheelOfFortuneModel.StartTheDraw();//开始抽奖
|
}
|
private void OnClickToggle(bool _bool)
|
{
|
if (_bool)
|
{
|
m_RotatePointer._isRotate = false;
|
}
|
else
|
{
|
m_RotatePointer._isRotate = true;
|
}
|
}
|
private void OnClickPromotionBtn()
|
{
|
WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.VipRechargeFunc4);
|
}
|
private void IsButtonShow(bool _bool)//是否可点击旋转
|
{
|
m_LotteryBtn.interactable = _bool;
|
}
|
|
private void IsLottery()
|
{
|
int LotteryNumber = vipmodel.GetVipPrivilegeCnt(VipPrivilegeType.BindJadeWheel);
|
if (LotteryNumber > wheelOfFortuneModel.Number)
|
{
|
remainingTimes = LotteryNumber - wheelOfFortuneModel.Number;
|
m_LotteryBtn.interactable = true;
|
}
|
else
|
{
|
m_LotteryBtn.interactable = false;
|
}
|
}
|
private Sequence mScoreSequence;
|
private void TiedJadeChange()//绑玉变化
|
{
|
mScoreSequence = DOTween.Sequence();
|
mScoreSequence.SetAutoKill(false);
|
mScoreSequence.Append(DOTween.To(delegate(float value)
|
{
|
var temp = Math.Floor(value);
|
Money1_Text.text = temp + "";
|
}, FairyJade,(int)UIHelper.GetMoneyCnt(2), RollingTime));
|
FairyJade = (int)UIHelper.GetMoneyCnt(2);
|
}
|
#endregion
|
|
}
|
|
}
|