From cc349a454d938e4046151233d6639d2c3807da9b Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 04 十一月 2025 14:48:47 +0800
Subject: [PATCH] 143 演武场-客户端 接入挑战凭证用货币购买
---
Main/Utility/UIHelper.cs | 14 +++++++
Main/System/ItemTip/ItemTipWayWin.cs | 39 +++++++++++++++++--
Main/System/Arena/ArenaChallengeVoucher.cs | 4 +
Main/System/Store/StoreModel.cs | 11 +++++
Main/Config/Configs/GetItemWaysConfig.cs | 15 ++++++-
5 files changed, 75 insertions(+), 8 deletions(-)
diff --git a/Main/Config/Configs/GetItemWaysConfig.cs b/Main/Config/Configs/GetItemWaysConfig.cs
index 41cd2d4..89dce2d 100644
--- a/Main/Config/Configs/GetItemWaysConfig.cs
+++ b/Main/Config/Configs/GetItemWaysConfig.cs
@@ -1,6 +1,6 @@
锘�//--------------------------------------------------------
// [Author]: YYL
-// [ Date ]: 2025骞�8鏈�10鏃�
+// [ Date ]: 2025骞�11鏈�4鏃�
//--------------------------------------------------------
using System.Collections.Generic;
@@ -17,9 +17,12 @@
}
public int ID;
- public string name;
+ public string Name;
public string Text;
public int WinJumpID;
+ public int FuncID;
+ public int Type;
+ public string CustomValue;
public override int LoadKey(string _key)
{
@@ -33,11 +36,17 @@
string[] tables = input.Split('\t');
int.TryParse(tables[0],out ID);
- name = tables[1];
+ Name = tables[1];
Text = tables[2];
int.TryParse(tables[3],out WinJumpID);
+
+ int.TryParse(tables[4],out FuncID);
+
+ int.TryParse(tables[5],out Type);
+
+ CustomValue = tables[6];
}
catch (Exception exception)
{
diff --git a/Main/System/Arena/ArenaChallengeVoucher.cs b/Main/System/Arena/ArenaChallengeVoucher.cs
index f2abeec..409326c 100644
--- a/Main/System/Arena/ArenaChallengeVoucher.cs
+++ b/Main/System/Arena/ArenaChallengeVoucher.cs
@@ -10,7 +10,9 @@
{
btnBuy.SetListener(() =>
{
-
+ int type = ArenaManager.Instance.ChallengeMoneyType;
+ int itemID = UIHelper.GetItemIDWithMoneyType(type);
+ ItemTipUtility.Show(itemID, true);
});
}
diff --git a/Main/System/ItemTip/ItemTipWayWin.cs b/Main/System/ItemTip/ItemTipWayWin.cs
index d4b982e..9b4c8bd 100644
--- a/Main/System/ItemTip/ItemTipWayWin.cs
+++ b/Main/System/ItemTip/ItemTipWayWin.cs
@@ -47,18 +47,49 @@
{
var way = GetItemWaysConfig.Get(cell.index);
var nameText = cell.FindComponent("Text", "name") as Text;
- nameText.text = way.name;
+ nameText.text = way.Name;
var descText = cell.FindComponent("Text", "way") as Text;
descText.text = way.Text;
- cell.GetComponent<Button>().AddListener(()=>
- {
- UIJumpManager.Instance.OpenWindow(way.WinJumpID);
+ cell.GetComponent<Button>().AddListener(() =>
+ {
+ Run(way);
});
}
+ void Run(GetItemWaysConfig way)
+ {
+ if (way == null)
+ return;
+ int funcID = way.FuncID;
+ if (FuncOpenLVConfig.HasKey(funcID) && !FuncOpen.Instance.IsFuncOpen(funcID))
+ return;
+ switch (way.Type)
+ {
+ case 0:
+ if (WindowSearchConfig.HasKey(way.WinJumpID))
+ {
+ UIJumpManager.Instance.OpenWindow(way.WinJumpID);
+ }
+ break;
+ case 1:
+ int shopID = int.Parse(way.CustomValue);
+ if (StoreModel.Instance.CheckPopBuyWin(shopID))
+ {
+ StoreModel.Instance.buyShopID = shopID;
+ UIManager.Instance.OpenWindow<BuyItemWin>();
+ }
+ break;
+ default:
+ if (WindowSearchConfig.HasKey(way.WinJumpID))
+ {
+ UIJumpManager.Instance.OpenWindow(way.WinJumpID);
+ }
+ break;
+ }
+ }
}
diff --git a/Main/System/Store/StoreModel.cs b/Main/System/Store/StoreModel.cs
index cc788fa..8310ac8 100644
--- a/Main/System/Store/StoreModel.cs
+++ b/Main/System/Store/StoreModel.cs
@@ -541,6 +541,17 @@
return 0;
}
+
+ public bool CheckPopBuyWin(int shopID)
+ {
+ int state = GetShopIDState(shopID);
+ if (state == 1 || state == 3)
+ {
+ SysNotifyMgr.Instance.ShowTip(StringUtility.Contact("StoreTip", state));
+ return false;
+ }
+ return true;
+ }
}
public enum StoreFunc
diff --git a/Main/Utility/UIHelper.cs b/Main/Utility/UIHelper.cs
index 025b3ef..8767f39 100644
--- a/Main/Utility/UIHelper.cs
+++ b/Main/Utility/UIHelper.cs
@@ -100,6 +100,20 @@
}
}
+ // 閫氳繃璐у竵绫诲瀷鑾峰彇鐗╁搧ID
+ public static int GetItemIDWithMoneyType(int moneyType)
+ {
+ if (GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
+ {
+ return GeneralDefine.MoneyDisplayModel[moneyType];
+ }
+ else
+ {
+ Debug.LogError("MoneyDisplayModel 鏈厤缃揣甯佺被鍨嬶細" + moneyType);
+ return 0;
+ }
+ }
+
/// <summary>
/// 鍒嗙瀛楃涓叉彃鍏ョ┖鏍�
/// </summary>
--
Gitblit v1.8.0