452 lines
17 KiB
C#
452 lines
17 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
using FairyGUI;
|
|
using BingoBrain.Core;
|
|
|
|
using BingoBrain;
|
|
using FGUI.G008_reward_animal;
|
|
using DG.Tweening;
|
|
using BingoBrain.HotFix;
|
|
using FGUI.Common_animal;
|
|
using System;
|
|
using DontConfuse;
|
|
|
|
namespace BingoBrain
|
|
{
|
|
public class PackrewardUI : BaseUI
|
|
{
|
|
private PackrewardUICtrl ctrl;
|
|
private PackrewardModel model;
|
|
private FGUI.G008_reward_animal.com_packreward ui;
|
|
|
|
public PackrewardUI(PackrewardUICtrl ctrl) : base(ctrl)
|
|
{
|
|
uiName = UIConst.PackrewardUI;
|
|
this.ctrl = ctrl;
|
|
}
|
|
|
|
protected override void SetUIInfo(UIInfo uiInfo)
|
|
{
|
|
uiInfo.packageName = "G008_reward_animal";
|
|
uiInfo.assetName = "com_packreward";
|
|
uiInfo.layerType = UILayerType.Popup;
|
|
uiInfo.isNeedOpenAnim = false;
|
|
uiInfo.isNeedCloseAnim = false;
|
|
uiInfo.isNeedUIMask = false;
|
|
}
|
|
|
|
#region 生命周期
|
|
protected override void OnInit()
|
|
{
|
|
//model = ModuleManager.Instance.GetModel(ModelConst.PackrewardModel) as PackrewardModel;
|
|
}
|
|
|
|
protected override void OnClose()
|
|
{
|
|
if (GameHelper.IsAdModelOfPay())
|
|
{
|
|
Hall.Instance.UpdateSecondEvent -= InitView;
|
|
|
|
}
|
|
GameHelper.showGameUI = true;
|
|
WebviewManager.Instance.SetDarkThough(true);
|
|
GameDispatcher.Instance.Dispatch(GameMsg.pack_close);
|
|
int three_gift_got_index = SaveData.GetSaveobject().three_gift_got_index;
|
|
if (isAutoPop && (three_gift_got_index <= (int)rewardState.day3))
|
|
{
|
|
uiCtrlDispatcher.Dispatch(UICtrlMsg.ThreeDaysGiftUI_Open);
|
|
}
|
|
}
|
|
|
|
private bool isAutoPop = false;
|
|
protected override void OnBind()
|
|
{
|
|
ui = baseUI as FGUI.G008_reward_animal.com_packreward;
|
|
}
|
|
|
|
protected override void OnOpenBefore(object args)
|
|
{
|
|
if (Screen.safeArea.y != 0)
|
|
{//刘海屏
|
|
ui.gold.y += Screen.safeArea.y;
|
|
|
|
}
|
|
|
|
GameHelper.showGameUI = false;
|
|
bool need_scroll = false;
|
|
PackRewardData Datas = args as PackRewardData;
|
|
if (args != null)
|
|
{
|
|
Datas = args as PackRewardData;
|
|
need_scroll = Datas.isNeedScroll;
|
|
isAutoPop = Datas.isAutoPop;
|
|
}
|
|
if (need_scroll) ui.panel_parent.scrollPane.ScrollDown(300, false);
|
|
if (need_scroll)
|
|
{
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.remove_ad_show, 1);
|
|
}
|
|
else
|
|
{
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.pack_show, 1);
|
|
}
|
|
list = ConfigSystem.GetConfig<PaidgiftModel>().dataList;
|
|
gold_num = list[0].coins_quantity;
|
|
back_num = list[0].props_quantity[1];
|
|
out_num = list[0].props_quantity[0];
|
|
refresh_num = list[0].props_quantity[2];
|
|
|
|
ui.panel_parent.panel.btn_close0.SetClick(CtrlCloseUI);
|
|
ui.panel_parent.panel.btn_close1.SetClick(CtrlCloseUI);
|
|
ui.gold.GetChild("number_text").text = GameHelper.GetGoldNumber().ToString();
|
|
InitView();
|
|
if (GameHelper.IsAdModelOfPay())
|
|
{
|
|
Hall.Instance.UpdateSecondEvent += InitView;
|
|
}
|
|
WebviewManager.Instance.SetDarkThough(false);
|
|
}
|
|
|
|
protected override void OnOpen(object args)
|
|
{
|
|
}
|
|
|
|
protected override void OnHide()
|
|
{
|
|
}
|
|
|
|
protected override void OnDisplay(object args)
|
|
{
|
|
}
|
|
#endregion
|
|
|
|
#region 消息
|
|
protected override void AddListener()
|
|
{
|
|
GameDispatcher.Instance.AddListener(GameMsg.apple_pay_success, pay_success);
|
|
}
|
|
protected override void RemoveListener()
|
|
{
|
|
GameDispatcher.Instance.RemoveListener(GameMsg.apple_pay_success, pay_success);
|
|
}
|
|
#endregion
|
|
void pay_success(object str)
|
|
{
|
|
string type = (string)str;
|
|
if (type == PurchasingManager.remove_ad)
|
|
{
|
|
|
|
var start = GameHelper.GetUICenterPosition(ui.panel_parent.panel.text_goldnum2);
|
|
|
|
DOVirtual.DelayedCall(1, () =>
|
|
{
|
|
DOVirtual.Float(0, (float)PreferencesMgr.Instance.Currency101, 1,
|
|
value => { ui.gold.GetChild("number_text").text = GameHelper.Get101Str((decimal)value); });
|
|
});
|
|
|
|
var end = GameHelper.GetUICenterPosition(ui.gold.GetChild("number_text"));
|
|
var rewardData = new RewardData
|
|
{
|
|
displayType = RewardDisplayType.RewardFly | RewardDisplayType.ValueChange
|
|
};
|
|
var rewardSingleData = new Goda(101, list[1].coins_quantity, RewardOrigin.Play)
|
|
{
|
|
startPosition = start,
|
|
endPosition = end,
|
|
|
|
};
|
|
rewardData.AddReward(rewardSingleData);
|
|
|
|
rewardData.displayType = RewardDisplayType.RewardFly | RewardDisplayType.ValueChange;
|
|
rewardData.AddCompleted(success =>
|
|
{
|
|
// if (success)
|
|
// {
|
|
// RefreshGold(awardNum);
|
|
// }
|
|
});
|
|
|
|
GameDispatcher.Instance.Dispatch(BingoInfo.GetReward, rewardData);
|
|
|
|
UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.AdcomingUI_Close);
|
|
SaveData.GetSaveobject().is_get_removead = true;
|
|
InitView();
|
|
|
|
|
|
}
|
|
else if (type == PurchasingManager.pack_reward)
|
|
{
|
|
var start = GameHelper.GetUICenterPosition(ui.panel_parent.panel.text_goldnum);
|
|
|
|
DOVirtual.DelayedCall(1, () =>
|
|
{
|
|
DOVirtual.Float(0, (float)PreferencesMgr.Instance.Currency101, 1,
|
|
value => { ui.gold.GetChild("number_text").text = ((int)value).ToString(); });
|
|
});
|
|
;
|
|
var end = GameHelper.GetUICenterPosition(ui.gold.GetChild("number_text"));
|
|
|
|
|
|
var rewardData = new RewardData
|
|
{
|
|
displayType = RewardDisplayType.RewardFly | RewardDisplayType.ValueChange
|
|
};
|
|
var rewardSingleData = new Goda(101, list[0].coins_quantity, RewardOrigin.Play)
|
|
{
|
|
startPosition = start,
|
|
endPosition = end,
|
|
|
|
};
|
|
rewardData.AddReward(rewardSingleData);
|
|
rewardData.displayType = RewardDisplayType.RewardFly | RewardDisplayType.ValueChange;
|
|
rewardData.AddCompleted(success =>
|
|
{
|
|
// if (success)
|
|
// {
|
|
// RefreshGold(awardNum);
|
|
// }
|
|
});
|
|
GameDispatcher.Instance.Dispatch(BingoInfo.GetReward, rewardData);
|
|
SaveData.GetSaveobject().is_get_packreward = true;
|
|
InitView();
|
|
}
|
|
|
|
|
|
|
|
}
|
|
//初始化页面逻辑
|
|
private int gold_num = 300;
|
|
private int back_num = 1;
|
|
private int out_num = 1;
|
|
private int refresh_num = 1;
|
|
private List<Paidgift> list;
|
|
private void InitView()
|
|
{
|
|
ui.panel_parent.panel.pay_type.selectedIndex = 0;
|
|
|
|
list = ConfigSystem.GetConfig<PaidgiftModel>().dataList;
|
|
ui.panel_parent.panel.text_have1.text = "Owner ADs:" + SaveData.GetSaveobject().look_ad_numbers;
|
|
ui.panel_parent.panel.text_have2.text = "Owner ADs:" + SaveData.GetSaveobject().look_ad_numbers;
|
|
|
|
ui.panel_parent.panel.need_text1.text = "need " + list[0].Paid_price + " ADs";
|
|
ui.panel_parent.panel.need_text2.text = "need " + list[1].Paid_price + " ADs";
|
|
ui.panel_parent.panel.text_goldnum.text = "x" + gold_num;
|
|
ui.panel_parent.panel.text_backnum1.text = "x" + back_num;
|
|
ui.panel_parent.panel.text_outnum.text = "x" + out_num;
|
|
ui.panel_parent.panel.text_refreshnum.text = "x" + refresh_num;
|
|
btn_green btn_buypack = (ui.panel_parent.panel.btn_buypack as btn_green);
|
|
GObject pack_title = ui.panel_parent.panel.btn_buypack.GetChild("title");
|
|
|
|
ui.panel_parent.panel.text_goldnum2.text = "x" + list[1].coins_quantity;
|
|
btn_green btn_removead = (ui.panel_parent.panel.btn_buyremovead as btn_green);
|
|
GObject removead_title = ui.panel_parent.panel.btn_buyremovead.GetChild("title");
|
|
btn_buypack.img_saveingpot.visible = false;
|
|
btn_removead.img_saveingpot.visible = false;
|
|
if (!GameHelper.IsAdModelOfPay())
|
|
{
|
|
ui.panel_parent.panel.pay_type.selectedIndex = 1;
|
|
|
|
decimal price_pack = (decimal)list[0].Paid_price2;
|
|
ui.panel_parent.panel.btn_max_pack.title = GameHelper.Get102Str(price_pack);
|
|
bool is_get_pack = SaveData.GetSaveobject().is_get_packreward;
|
|
if (is_get_pack)
|
|
{
|
|
ui.panel_parent.panel.btn_max_pack.enabled = false;
|
|
ui.panel_parent.panel.btn_max_pack.SetClick(() => { });
|
|
}
|
|
else
|
|
{
|
|
|
|
ui.panel_parent.panel.btn_max_pack.SetClick(() =>
|
|
{
|
|
MaxPayClass maxPayData = new MaxPayClass
|
|
{
|
|
amount = (int)Math.Round(price_pack * 100),
|
|
sku = MaxPayManager.pack_reward,
|
|
currency = "USD"
|
|
};
|
|
MaxPayManager.Instance.Buy(maxPayData);
|
|
});
|
|
}
|
|
if (GameHelper.IsGiftSwitch() && ConfigSystem.GetConfig<CommonModel>().PiggyBankSwitch == 1) (ui.panel_parent.panel.btn_max_pack.GetChild("img_saveingpot") as GImage).visible = true;
|
|
if (GameHelper.IsGiftSwitch() && ConfigSystem.GetConfig<CommonModel>().PiggyBankSwitch == 1) (ui.panel_parent.panel.btn_max_remove.GetChild("img_saveingpot") as GImage).visible = true;
|
|
decimal price_remove = (decimal)list[1].Paid_price2;
|
|
ui.panel_parent.panel.btn_max_remove.title = GameHelper.Get102Str(price_remove);
|
|
bool is_get_removead = SaveData.GetSaveobject().is_get_removead;
|
|
if (is_get_removead)
|
|
{
|
|
ui.panel_parent.panel.btn_max_remove.enabled = false;
|
|
ui.panel_parent.panel.btn_max_remove.SetClick(() => { });
|
|
}
|
|
else
|
|
{
|
|
ui.panel_parent.panel.btn_max_remove.SetClick(() =>
|
|
{
|
|
MaxPayClass maxPayData = new MaxPayClass
|
|
{
|
|
amount = (int)Math.Round(price_remove * 100),
|
|
sku = MaxPayManager.remove_ad,
|
|
currency = "USD"
|
|
};
|
|
MaxPayManager.Instance.Buy(maxPayData);
|
|
});
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
bool is_get = SaveData.GetSaveobject().is_get_packreward;
|
|
if (is_get)
|
|
{
|
|
btn_buypack.state.selectedIndex = 0;
|
|
btn_buypack.cooldown.selectedIndex = 1;
|
|
ui.panel_parent.panel.btn_buypack.grayed = true;
|
|
pack_title.text = "Cliamed";
|
|
ui.panel_parent.panel.btn_buypack.SetClick(() =>
|
|
{
|
|
|
|
});
|
|
}
|
|
else if (SaveData.GetSaveobject().look_ad_numbers >= list[0].Paid_price)
|
|
{
|
|
btn_buypack.state.selectedIndex = 1;
|
|
btn_buypack.cooldown.selectedIndex = 0;
|
|
btn_buypack.SetClick(() =>
|
|
{
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.pack_success, 1);
|
|
ApplePayClass test = new ApplePayClass()
|
|
{
|
|
sku = PurchasingManager.pack_reward,
|
|
};
|
|
SaveData.GetSaveobject().look_ad_numbers -= (int)list[0].Paid_price;
|
|
PurchasingManager.Instance.Purchase(PurchasingManager.pack_reward, test);
|
|
});
|
|
}
|
|
else if (SaveData.GetSaveobject().look_ad_time > GameHelper.GetNowTime())
|
|
{
|
|
btn_buypack.state.selectedIndex = 0;
|
|
btn_buypack.cooldown.selectedIndex = 1;
|
|
pack_title.text = GameHelper.TimeFormat(SaveData.GetSaveobject().look_ad_time - Convert.ToInt32(GameHelper.GetNowTime()), CountDownType.Hour);
|
|
btn_buypack.SetClick(() =>
|
|
{
|
|
|
|
|
|
});
|
|
}
|
|
else
|
|
{
|
|
btn_buypack.state.selectedIndex = 0;
|
|
btn_buypack.cooldown.selectedIndex = 0;
|
|
pack_title.text = "Watch AD";
|
|
if (GameHelper.IsGiftSwitch() && ConfigSystem.GetConfig<CommonModel>().PiggyBankSwitch == 1) btn_buypack.img_saveingpot.visible = true;
|
|
btn_buypack.SetClick(() =>
|
|
{
|
|
|
|
GameHelper.ShowVideoAd("PackReward", (issuccess) =>
|
|
{
|
|
if (issuccess)
|
|
{
|
|
SaveData.GetSaveobject().look_ad_time = (int)GameHelper.GetNowTime() + GameHelper.GetCommonModel().exchangeCD;
|
|
InitView();
|
|
|
|
}
|
|
});
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.pack_click, 1);
|
|
});
|
|
}
|
|
|
|
|
|
|
|
|
|
is_get = SaveData.GetSaveobject().is_get_removead;
|
|
if (is_get)
|
|
{
|
|
|
|
btn_removead.state.selectedIndex = 0;
|
|
btn_removead.cooldown.selectedIndex = 1;
|
|
removead_title.text = "Cliamed";
|
|
btn_removead.SetClick(() =>
|
|
{
|
|
|
|
|
|
});
|
|
}
|
|
|
|
else if (SaveData.GetSaveobject().look_ad_numbers >= list[1].Paid_price)
|
|
{
|
|
btn_removead.state.selectedIndex = 1;
|
|
btn_removead.cooldown.selectedIndex = 0;
|
|
btn_removead.SetClick(() =>
|
|
{
|
|
ApplePayClass test = new ApplePayClass()
|
|
{
|
|
sku = PurchasingManager.remove_ad,
|
|
};
|
|
SaveData.GetSaveobject().look_ad_numbers -= (int)list[1].Paid_price;
|
|
PurchasingManager.Instance.Purchase(PurchasingManager.pack_reward, test);
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.remove_ad_success, 1);
|
|
});
|
|
}
|
|
else if (SaveData.GetSaveobject().look_ad_time > GameHelper.GetNowTime())
|
|
{
|
|
btn_removead.state.selectedIndex = 0;
|
|
btn_removead.cooldown.selectedIndex = 1;
|
|
removead_title.text = GameHelper.TimeFormat(SaveData.GetSaveobject().look_ad_time - Convert.ToInt32(GameHelper.GetNowTime()), CountDownType.Hour);
|
|
btn_removead.SetClick(() =>
|
|
{
|
|
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
{
|
|
btn_removead.state.selectedIndex = 0;
|
|
btn_removead.cooldown.selectedIndex = 0;
|
|
removead_title.text = "Watch AD";
|
|
if (GameHelper.IsGiftSwitch() && ConfigSystem.GetConfig<CommonModel>().PiggyBankSwitch == 1) btn_removead.img_saveingpot.visible = true;
|
|
btn_removead.SetClick(() =>
|
|
{
|
|
GameHelper.ShowVideoAd("RemoveAd", (issuccess) =>
|
|
{
|
|
if (issuccess)
|
|
{
|
|
SaveData.GetSaveobject().look_ad_time = (int)GameHelper.GetNowTime() + GameHelper.GetCommonModel().exchangeCD;
|
|
InitView();
|
|
|
|
}
|
|
});
|
|
NetworkKit.BuriedPoint(BuriedPointEvent.Apple_pay_event, BuriedPointEvent.remove_ad_click, 1);
|
|
// ApplePayClass test = new ApplePayClass()
|
|
// {
|
|
// transactionId = "",
|
|
// amount = (int)(list[1].Paid_price * 100),
|
|
// sku = PurchasingManager.remove_ad,
|
|
// currency = "USD"
|
|
// };
|
|
|
|
// PurchasingManager.Instance.Purchase(PurchasingManager.remove_ad, test);
|
|
|
|
|
|
// SaveData.GetSaveobject().is_get_removead = true;
|
|
// SaveData.saveDataFunc();
|
|
// InitView();
|
|
|
|
});
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
public class PackRewardData
|
|
{
|
|
public bool isAutoPop;
|
|
public bool isNeedScroll;
|
|
} |