237 lines
8.1 KiB
C#
237 lines
8.1 KiB
C#
// using FGUI.A000_common;
|
|
using System.Collections.Generic;
|
|
using DG.Tweening;
|
|
using FGUI.LG_Common;
|
|
using SGModule.Common.Extensions;
|
|
|
|
namespace RedHotRoast
|
|
{
|
|
public class RewardboxUI : BaseUI
|
|
{
|
|
private RewardboxUICtrl ctrl;
|
|
private RewardboxModel model;
|
|
private FGUI.ZM_Game_04.com_rewardbox ui;
|
|
|
|
public RewardboxUI(RewardboxUICtrl ctrl) : base(ctrl)
|
|
{
|
|
uiName = UIConst.RewardboxUI;
|
|
this.ctrl = ctrl;
|
|
}
|
|
|
|
protected override void SetUIInfo(UIInfo uiInfo)
|
|
{
|
|
uiInfo.packageName = "ZM_Game_04";
|
|
uiInfo.assetName = "com_rewardbox";
|
|
uiInfo.layerType = UILayerType.Popup;
|
|
uiInfo.isNeedOpenAnim = false;
|
|
uiInfo.isNeedCloseAnim = false;
|
|
uiInfo.isNeedUIMask = true;
|
|
}
|
|
|
|
#region 生命周期
|
|
protected override void OnInit()
|
|
{
|
|
//model = ModuleManager.Instance.GetModel(ModelConst.RewardboxModel) as RewardboxModel;
|
|
}
|
|
|
|
protected override void OnClose()
|
|
{
|
|
GameHelper.showGameUI = true;
|
|
}
|
|
|
|
protected override void OnBind()
|
|
{
|
|
ui = baseUI as FGUI.ZM_Game_04.com_rewardbox;
|
|
}
|
|
|
|
protected override void OnOpenBefore(object args)
|
|
{
|
|
|
|
if (GameHelper.IsGiftSwitch()) ui.switchgift.selectedIndex = 1;
|
|
else ui.switchgift.selectedIndex = 0;
|
|
// (ui.btn_lookad as btn_tabad).color.selectedIndex = btn_tabad.Color_green;
|
|
|
|
FGUI.ZM_Common_01.btn_claim btnlook = ui.btn_lookad as FGUI.ZM_Common_01.btn_claim;
|
|
|
|
float[] ch_array = GameHelper.GetRewardValue(2);
|
|
if (SaveData.GetSaveObject().LargeRewardNum < ConfigSystem.GetCommonConf().FreeClaims)
|
|
{
|
|
(ui.btn_lookad as FGUI.ZM_Common_01.btn_claim3).state.selectedIndex = 1;
|
|
}
|
|
ui.btn_lookad.SetClick(() =>
|
|
{
|
|
if (SaveData.GetSaveObject().LargeRewardNum < ConfigSystem.GetCommonConf().FreeClaims)
|
|
{
|
|
StartScroll();
|
|
ui.btn_lookad.touchable = ui.btn_close.touchable = false;
|
|
}
|
|
else
|
|
{
|
|
GameHelper.ShowVideoAd("RewardBox", isSuccess =>
|
|
{
|
|
if (isSuccess)
|
|
{
|
|
StartScroll();
|
|
ui.btn_lookad.touchable = ui.btn_close.touchable = false;
|
|
}
|
|
});
|
|
}
|
|
|
|
});
|
|
ui.btn_close.SetClick(() =>
|
|
{
|
|
UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.RewardboxUI_Close);
|
|
GameHelper.addInterAdnumber();
|
|
});
|
|
if (GameHelper.GetVipPrivilege(Subscription.DoubleChestReward.As<int>()))
|
|
{
|
|
(ui.wheel as wheel).have_vip.selectedIndex = 1;
|
|
}
|
|
cash_num = (int)ch_array[0];
|
|
rate = (int)ch_array[1];
|
|
|
|
ui.gold_text.text = cash_num.ToString();
|
|
InitView();
|
|
}
|
|
|
|
protected override void OnOpen(object args)
|
|
{
|
|
}
|
|
|
|
protected override void OnHide()
|
|
{
|
|
}
|
|
|
|
protected override void OnDisplay(object args)
|
|
{
|
|
}
|
|
#endregion
|
|
|
|
#region 消息
|
|
protected override void AddListener()
|
|
{
|
|
|
|
}
|
|
protected override void RemoveListener()
|
|
{
|
|
|
|
}
|
|
#endregion
|
|
|
|
//初始化页面逻辑
|
|
private void InitView()
|
|
{
|
|
boost_array = GameHelper.GetRewardBoost(2);
|
|
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t0.Play(Scroll);
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t1.Play(() =>
|
|
{
|
|
rate_idnex++;
|
|
ui.btn_lookad.title = "" + cash_num * boost_array[rate_idnex % 5];
|
|
});
|
|
ui.btn_lookad.title = "" + cash_num * boost_array[rate_idnex];
|
|
|
|
list_1 = new List<item_wheel>() { (ui.wheel.GetChild("wheel_") as wheel_).item_0, (ui.wheel.GetChild("wheel_") as wheel_).item_1, (ui.wheel.GetChild("wheel_") as wheel_).item_2, (ui.wheel.GetChild("wheel_") as wheel_).item_3, (ui.wheel.GetChild("wheel_") as wheel_).item_4, (ui.wheel.GetChild("wheel_") as wheel_).item_5, (ui.wheel.GetChild("wheel_") as wheel_).item_6, (ui.wheel.GetChild("wheel_") as wheel_).item_7, };
|
|
// list_1[2].img_light.visible = true;
|
|
|
|
for (int i = 0; i < list_1.Count; i++)
|
|
{
|
|
list_1[i].type.selectedIndex = (i + scroll_number) % 3;
|
|
list_1[i].text_rate.text = "X" + boost_array[i % boost_array.Length];
|
|
}
|
|
}
|
|
private float cash_num;
|
|
private int[] boost_array;
|
|
List<item_wheel> list_1;
|
|
private int rate_idnex = 3;
|
|
private int scroll_number;
|
|
List<int> rate_list = new List<int>();
|
|
private int scroll_type = 1;
|
|
private int rate;
|
|
private void StartScroll()
|
|
{
|
|
ui.btn_lookad.SetClick(() => { });
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t0.timeScale = 5.0f;
|
|
scroll_type = 2;
|
|
}
|
|
private void Scroll()
|
|
{
|
|
if (scroll_type == 1)
|
|
{
|
|
scroll_number++;
|
|
rate_list.Clear();
|
|
for (int i = 0; i < 8; i++)
|
|
{
|
|
rate_list.Add(boost_array[(scroll_number + i) % boost_array.Length]);
|
|
}
|
|
for (int i = 0; i < list_1.Count; i++)
|
|
{
|
|
list_1[i].type.selectedIndex = (i + scroll_number) % 3;
|
|
list_1[i].text_rate.text = "X" + rate_list[i];
|
|
}
|
|
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t1.Play(() =>
|
|
{
|
|
rate_idnex++;
|
|
ui.btn_lookad.title = GameHelper.Get101Str((decimal)cash_num * boost_array[rate_idnex % boost_array.Length]);
|
|
});
|
|
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t0.Play(Scroll);
|
|
|
|
}
|
|
else
|
|
{
|
|
|
|
scroll_number++;
|
|
|
|
rate_list.Clear();
|
|
for (int i = 0; i < 8; i++)
|
|
{
|
|
rate_list.Add(boost_array[(scroll_number + i) % boost_array.Length]);
|
|
}
|
|
|
|
// bool need_return = false;
|
|
if (((ui.wheel.GetChild("wheel_") as wheel_).t0.timeScale < 2f) && (list_1[4].text_rate.text == ("X" + rate)))
|
|
{
|
|
//开始领取
|
|
float reward = cash_num * rate;
|
|
if (GameHelper.GetVipPrivilege(Subscription.DoubleChestReward.As<int>()))
|
|
{
|
|
reward *= 2;
|
|
}
|
|
GameDispatcher.Instance.Dispatch(GameMsg.Ad_success, reward);
|
|
SaveData.GetSaveObject().LargeRewardNum++;
|
|
SaveData.SaveDataFunc();
|
|
DOVirtual.DelayedCall(1.5f, () =>
|
|
{
|
|
UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.RewardboxUI_Close);
|
|
});
|
|
return;
|
|
}
|
|
for (int i = 0; i < list_1.Count; i++)
|
|
{
|
|
list_1[i].type.selectedIndex = (i + scroll_number) % 3;
|
|
list_1[i].text_rate.text = "X" + rate_list[i];
|
|
}
|
|
|
|
// if (need_return)
|
|
// {
|
|
// (ui.wheel.GetChild("wheel_") as wheel_).t0.timeScale = 0;
|
|
// return;
|
|
// }
|
|
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t1.Play(() =>
|
|
{
|
|
rate_idnex++;
|
|
ui.btn_lookad.title = GameHelper.Get101Str((decimal)cash_num * boost_array[rate_idnex % boost_array.Length]);
|
|
});
|
|
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t0.Play(Scroll);
|
|
(ui.wheel.GetChild("wheel_") as wheel_).t0.timeScale = (ui.wheel.GetChild("wheel_") as wheel_).t0.timeScale - 0.3f;
|
|
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|