using System; using System.Collections.Generic; using DG.Tweening; using FlowerPower; using UnityEngine; namespace FlowerPower { public class BuyConfirmUI : BaseUI { private BuyConfirmUICtrl ctrl; private BuyConfirmModel model; private FGUI.P18_ShopView.com_buy_confirm ui; private AdRdData m_data; private List PaidgiftList; private List list; public BuyConfirmUI(BuyConfirmUICtrl ctrl) : base(ctrl) { uiName = UIConst.BuyConfirmUI; this.ctrl = ctrl; } protected override void SetUIInfo(UIInfo uiInfo) { uiInfo.packageName = "P18_ShopView"; uiInfo.assetName = "com_buy_confirm"; uiInfo.layerType = UILayerType.Popup; uiInfo.isNeedOpenAnim = false; uiInfo.isNeedCloseAnim = false; uiInfo.isNeedUIMask = true; } protected override void OnInit() { } protected override void OnClose() { CommonHelper.FadeOut(ui); } protected override void OnBind() { ui = baseUI as FGUI.P18_ShopView.com_buy_confirm; } protected override void OnOpenBefore(object args) { m_data = (AdRdData)args; PaidgiftList = ConfigSystem.GetConfig().dataList; if (m_data.type == PurchasingManager.remove_ad) { ui.state.selectedIndex = 1; ui.lab_coin.text = "x " + PaidgiftList[1].coins_quantity; } else if (m_data.type.StartsWith("buy_gold")) { ui.state.selectedIndex = 0; list = ConfigSystem.GetConfig().dataList; int startIndex = "buy_gold".Length; string suffix = m_data.type[startIndex..]; // 截取 "gold" 后的所有字符 int suffix_num = int.Parse(suffix); ui.lab_coin.text = GameHelper.Get101Str(list[suffix_num].Actual_coins); } else if (m_data.type == PurchasingManager.pack_reward) { ui.state.selectedIndex = 2; ui.lab_coin.text = "x " + PaidgiftList[0].coins_quantity; ui.lab_revoke.text = "x " + PaidgiftList[0].props_quantity[1]; ui.lab_refresh.text = "x " + PaidgiftList[0].props_quantity[2]; ui.lab_remove.text = "x " + PaidgiftList[0].props_quantity[0]; } int myAdNum = AdRdManager.Instance.GetLookRewardADNum(); ui.lab_des.SetVar("num", m_data.ad_count.ToString()).FlushVars(); ui.lab_have_ads.SetVar("num", myAdNum.ToString()).FlushVars(); ui.btn_close.SetClick(() => { UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.BuyConfirmUI_Close); }); ui.btn_no_thanks.SetClick(() => { UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.BuyConfirmUI_Close); }); ui.btn_continue.SetClick(() => { AdRdManager.Instance.SetLookRewardADNum(myAdNum - m_data.ad_count); AdRdManager.Instance.SendEventClickByName(m_data.type, "success"); GameDispatcher.Instance.Dispatch(GameMsg.apple_pay_success, m_data.type); UICtrlDispatcher.Instance.Dispatch(UICtrlMsg.BuyConfirmUI_Close); }); } protected override void OnOpen(object args) { CommonHelper.FadeIn(ui); } protected override void AddListener() { } protected override void RemoveListener() { } private void InitView() { } } }