新增小额奖励

This commit is contained in:
2026-05-09 18:00:33 +08:00
parent 8bc05d6c63
commit e509522188
121 changed files with 1582 additions and 61 deletions
@@ -0,0 +1,25 @@
using BingoBrain.Core;
namespace BingoBrain
{
public class PettyAwardCtrl : BaseCtrl
{
public static PettyAwardCtrl Instance { get; private set; }
private PettyAwardModel model;
#region
protected override void OnInit()
{
Instance = this;
//model = ModuleManager.Instance..GetModel(ModelConst.PettyAwardModel) as PettyAwardModel;
}
protected override void OnDispose()
{
Instance = null;
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 90b28f931a8a485439898f66ca3a9822
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,23 @@
using BingoBrain.Core;
namespace BingoBrain
{
public class PettyAwardModel : BaseModel
{
#region
protected override void OnInit()
{
}
protected override void OnDispose()
{
}
protected override void OnReset()
{
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 88d12f04c8019c541bb34a5ed9e11b72
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,319 @@
using System;
using BingoBrain.Core;
using BingoBrain.HotFix;
using DontConfuse;
using FGUI.ACommon;
using Newtonsoft.Json;
using Spine.Unity;
using UnityEngine;
namespace BingoBrain
{
public class PettyAwardUI : BaseUI
{
private PettyAwardUICtrl ctrl;
private PettyAwardModel model;
private FGUI.ZM_Petty.com_petty_award ui;
private Action closeCallback;
public PettyAwardUI(PettyAwardUICtrl ctrl) : base(ctrl)
{
uiName = UIConst.PettyAwardUI;
this.ctrl = ctrl;
}
protected override void SetUIInfo(UIInfo uiInfo)
{
uiInfo.packageName = "ZM_Petty";
uiInfo.assetName = "com_petty_award";
uiInfo.layerType = UILayerType.Popup;
uiInfo.isNeedOpenAnim = false;
uiInfo.isNeedCloseAnim = false;
uiInfo.isNeedUIMask = true;
}
#region
protected override void OnInit()
{
//model = ModuleManager.Instance.GetModel(ModelConst.PettyAwardModel) as PettyAwardModel;
}
protected override void OnClose()
{
closeCallback?.Invoke();
}
protected override void OnBind()
{
ui = baseUI as FGUI.ZM_Petty.com_petty_award;
}
protected override void OnOpenBefore(object args)
{
InitView();
}
protected override void OnOpen(object args)
{
//open_sign = (System.Action)args;
}
protected override void OnHide()
{
}
protected override void OnDisplay(object args)
{
}
#endregion
#region
protected override void AddListener()
{
}
protected override void RemoveListener()
{
}
#endregion
private int _mLastState;
//初始化页面逻辑
private void InitView()
{
_mLastState = SaveData.GetSaveobject().PettyState;
Debug.Log($"PettyState============: {SaveData.GetSaveobject().PettyState}");
var num = GameHelper.GetCommonModel().SmallReward;
ui.com_get_panel.text_reward.text = $"{GameHelper.Get102Str(num)} USD";
ui.com_get_panel.btn_get.SetClick(GotoEnterAccount);
ui.btn_close.SetClick(() =>
{
if (ui.state.selectedIndex == 4)
{
GotoEnterAccount();
}
else
{
CtrlCloseUI();
}
});
if (_mLastState == 0)
{
// SkeletonAnimation sk = FXManager.Instance.SetFx<SkeletonAnimation>(ui.anim, Fx_Type.fx_petty_reward, ref closeCallback);
SkeletonAnimation sk = null;
FX.Instance.SetFx<SkeletonAnimation>(ui.anim, Fx_Type.fx_petty_reward,
ps =>
{
// ps.transform.localPosition = new Vector3(0, 195, 0);
sk = ps;
}, closeCallback);
sk.state.SetAnimation(0, "newbie_reward_an01", false);
sk.state.Complete += (a) =>
{
sk.state.SetAnimation(0, "newbie_reward_an02", true);
ui.btn_gerAward.SetClick(() =>
{
ui.btn_gerAward.visible = false;
sk.state.SetAnimation(0, "newbie_reward_an03", false);
sk.state.Complete += (a) =>
{
ui.state.selectedIndex = 1;
SaveData.GetSaveobject().PettyState = 1;
ui.anim.visible = false;
};
});
};
}
else
{
GotoPanel(_mLastState);
}
}
private void GotoPanel(int index)
{
switch (index)
{
case 1:
ui.state.selectedIndex = 1;
break;
case 2:
ui.state.selectedIndex = 2;
GotoEnterAccount();
break;
case 3:
ui.state.selectedIndex = 3;
GotoDetail();
break;
}
}
private void GotoEnterAccount()
{
ui.state.selectedIndex = 2;
SaveData.GetSaveobject().PettyState = 2;
if (!SaveData.GetSaveobject().PettyAccount.IsNullOrWhiteSpace())
{
ui.com_account.com_email.enter_email.text = SaveData.GetSaveobject().PettyAccount;
}
if (!SaveData.GetSaveobject().PettyFirstName.IsNullOrWhiteSpace())
{
ui.com_account.com_first_name.enter_first_name.text = SaveData.GetSaveobject().PettyFirstName;
}
if (!SaveData.GetSaveobject().PettyLastName.IsNullOrWhiteSpace())
{
ui.com_account.com_last_name.enter_last_name.text = SaveData.GetSaveobject().PettyLastName;
}
ui.com_account.btn_confirm.SetClick(ConfirmClick);
}
private void ConfirmClick()
{
var account = ui.com_account.com_email.enter_email.text.Replace(" ", "");
if (account == "")
{
GameHelper.ShowTips("Please enter the correct account information", true);
return;
}
if (!GameHelper.CheckAccountValidly(account))
{
GameHelper.ShowTips("Please enter the correct account information", true);
return;
}
var fname = ui.com_account.com_first_name.enter_first_name.text.Replace(" ", "");
if (!GameHelper.CheckNameValidly(fname))
{
GameHelper.ShowTips("Please enter the correct account information", true);
return;
}
var lname = ui.com_account.com_last_name.enter_last_name.text.Replace(" ", "");
if (!GameHelper.CheckNameValidly(lname))
{
GameHelper.ShowTips("Please enter the correct account information", true);
return;
}
SaveData.GetSaveobject().PettyAccount = account;
SaveData.GetSaveobject().PettyFirstName = fname;
SaveData.GetSaveobject().PettyLastName = lname;
GotoSecondConfirm(account, fname, lname);
}
private void GotoSecondConfirm(string account, string fname, string lname)
{
ui.state.selectedIndex = 4;
PaymentMsg info = new PaymentMsg
{
email = account,
first_name = fname,
last_name = lname
};
ui.com_second_confirm.text_account.SetVar("account", account).FlushVars();
ui.com_second_confirm.text_first_name.SetVar("name", fname).FlushVars();
ui.com_second_confirm.text_last_name.SetVar("name", lname).FlushVars();
ui.com_second_confirm.btn_confirm.SetClick(() =>
{
ui.com_second_confirm.btn_confirm.enabled = false;
NetworkKit.PostWithHeader<object>("shop/payOutUserInfo", info, (isSuccess, obj) =>
{
Debug.Log("[petty ui]-------------payOutUserInfo---" + JsonConvert.SerializeObject(info));
if (isSuccess)
{
GotoDetail();
}
else
{
GameHelper.ShowTips("Failed to save information., please try again");
ui.com_second_confirm.btn_confirm.enabled = true;
}
});
});
}
private void GotoDetail()
{
ui.state.selectedIndex = 3;
SaveData.GetSaveobject().PettyState = 3;
var pettyAmount = SaveData.GetSaveobject().PettyAmount;
if (pettyAmount != 0)
{
ui.com_detail.text_amount.SetVar("num", GameHelper.Get102Str(pettyAmount)).FlushVars();
}
else
{
var num = GameHelper.GetCommonModel().SmallReward;
ui.com_detail.text_amount.SetVar("num", GameHelper.Get102Str(num)).FlushVars();
SaveData.GetSaveobject().PettyAmount = num;
}
var pettyDateTime = SaveData.GetSaveobject().PettyDateTime;
if (!pettyDateTime.IsNullOrWhiteSpace())
{
ui.com_detail.text_data.SetVar("data", pettyDateTime).FlushVars();
}
else
{
var dateTime = DateTime.Now.ToString("yyyy.MM.dd");
ui.com_detail.text_data.SetVar("data", dateTime).FlushVars();
SaveData.GetSaveobject().PettyDateTime = dateTime;
}
var pettyOrderID = SaveData.GetSaveobject().PettyOrderID;
if (!pettyOrderID.IsNullOrWhiteSpace())
{
ui.com_detail.text_order.SetVar("order", pettyOrderID).FlushVars();
}
else
{
string datePart = DateTime.Now.ToString("yyyyMMdd");
System.Random random = new System.Random();
string randomPart = random.Next(1000, 9999).ToString(); // 生成1000-9999之间的四位数
ui.com_detail.text_order.SetVar("order", datePart + randomPart).FlushVars();
SaveData.GetSaveobject().PettyOrderID = datePart + randomPart;
}
ui.com_detail.text_email.SetVar("email", SaveData.GetSaveobject().PettyAccount).FlushVars();
var pettyDataLimit = SaveData.GetSaveobject().PettyDataLimit;
if (pettyDataLimit != 0)
{
ui.com_detail.text_limit.SetVar("day", pettyDataLimit.ToString()).FlushVars();
}
else
{
var day = GameHelper.GetCommonModel().ProcessingTime;
ui.com_detail.text_limit.SetVar("day", day.ToString()).FlushVars();
SaveData.GetSaveobject().PettyDataLimit = day;
}
}
}
}
namespace DontConfuse
{
public class PaymentMsg
{
public string email;
public string first_name;
public string last_name;
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 3419b0d0813ffd14294efe17fecb0b0e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,74 @@
using BingoBrain.Core;
using BingoBrain.HotFix;
namespace BingoBrain
{
public class PettyAwardUICtrl : BaseUICtrl
{
private PettyAwardUI ui;
private PettyAwardModel model;
private uint openUIMsg = SkinInfo.PettyAwardUI_Open;
private uint closeUIMsg = SkinInfo.PettyAwardUI_Close;
#region
protected override void OnInit()
{
//model = ModuleManager.Instance.GetModel(ModelConst.PettyAwardModel) as PettyAwardModel;
}
protected override void OnDispose()
{
}
public override void OpenUI(object args = null)
{
if (ui == null)
{
ui = new PettyAwardUI(this);
ui.Open(args);
}
}
public override void CloseUI(object args = null)
{
if (ui != null && !ui.isClose)
{
ui.Close();
}
ui = null;
}
#endregion
#region
public override uint GetOpenUIMsg(string uiName)
{
return openUIMsg;
}
public override uint GetCloseUIMsg(string uiName)
{
return closeUIMsg;
}
protected override void AddListener()
{
uiCtrlDispatcher.AddListener(openUIMsg, OpenUI);
uiCtrlDispatcher.AddListener(closeUIMsg, CloseUI);
}
protected override void RemoveListener()
{
uiCtrlDispatcher.RemoveListener(openUIMsg, OpenUI);
uiCtrlDispatcher.RemoveListener(closeUIMsg, CloseUI);
}
protected override void AddServerListener()
{
}
protected override void RemoveServerListener()
{
}
#endregion
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c8a241703482ef64ab8b07f9577ced78
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: