From 03deb40d55ab884159d9fb8e3b99d6b403b3088d Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期二, 17 三月 2026 21:49:06 +0800
Subject: [PATCH] 492 武将登场-客户端 支持跳转时装商店和时装特卖
---
Main/System/UIBase/UIJumpManager.cs | 42 +++++++++++++++++----
Main/System/HeroDebut/HeroDebutManager.cs | 20 ++++++++++
2 files changed, 54 insertions(+), 8 deletions(-)
diff --git a/Main/System/HeroDebut/HeroDebutManager.cs b/Main/System/HeroDebut/HeroDebutManager.cs
index 08fe78f..8179b82 100644
--- a/Main/System/HeroDebut/HeroDebutManager.cs
+++ b/Main/System/HeroDebut/HeroDebutManager.cs
@@ -859,6 +859,26 @@
return ctgDict;
}
+ public bool HasItemInSkinCTGIDList(int cfgID, int findItemID)
+ {
+ var config = ActHeroAppearConfig.Get(cfgID);
+ if (config == null || config.SkinCTGIDList == null) return false;
+
+ for (int i = 0; i < config.SkinCTGIDList.Length; i++)
+ {
+ var ctgID = config.SkinCTGIDList[i];
+ var ctgConfig = CTGConfig.Get(ctgID);
+ if (ctgConfig == null || ctgConfig.GainItemList == null) continue;
+
+ for (int j = 0; j < ctgConfig.GainItemList.Length; j++)
+ {
+ var itemID = ctgConfig.GainItemList[j][0];
+ if (itemID == findItemID) return true;
+ }
+ }
+ return false;
+ }
+
public List<int> GetSkinIDList(int cfgID, int heroID, int mainSkinID)
{
diff --git a/Main/System/UIBase/UIJumpManager.cs b/Main/System/UIBase/UIJumpManager.cs
index 125ea09..ec55d7e 100644
--- a/Main/System/UIBase/UIJumpManager.cs
+++ b/Main/System/UIBase/UIJumpManager.cs
@@ -49,15 +49,18 @@
if (config.WinName == "StoreBaseWin")
{
- //鎸囧畾鍟嗗搧
- StoreModel.Instance.jumpShopID = int.Parse(config.Extra);
- if (StoreModel.Instance.jumpShopID == 0)
+ if (int.TryParse(config.Extra, out int result))
{
- StoreModel.Instance.selectStoreFuncType = StoreFunc.Normal;
- }
- else
- {
- StoreModel.Instance.selectStoreFuncType = (StoreFunc)StoreConfig.Get(StoreModel.Instance.jumpShopID).ShopType;
+ //鎸囧畾鍟嗗搧
+ StoreModel.Instance.jumpShopID = result;
+ if (StoreModel.Instance.jumpShopID == 0)
+ {
+ StoreModel.Instance.selectStoreFuncType = StoreFunc.Normal;
+ }
+ else
+ {
+ StoreModel.Instance.selectStoreFuncType = (StoreFunc)StoreConfig.Get(StoreModel.Instance.jumpShopID).ShopType;
+ }
}
}
else if (config.WinName == "HeroDebutCallWin")
@@ -71,6 +74,29 @@
if (actHeroAppearConfig.ExShopCostItemID != int.Parse(config.Extra))
{
SysNotifyMgr.Instance.ShowTip("ActivityNoOpen");
+ return;
+ }
+ else
+ {
+ if (UIManager.Instance.IsOpened<HeroDebutCallWin>())
+ {
+ UIManager.Instance.CloseWindow<HeroDebutCallWin>();
+ UIManager.Instance.OpenWindow<HeroDebutCallWin>();
+ }
+ }
+ }
+ else if (config.WinName == "HeroDebutSkinWin")
+ {
+ var heroDebutAct = HeroDebutManager.Instance.GetOperationHeroAppearInfo();
+ if (heroDebutAct == null) return;
+
+ ActHeroAppearConfig actHeroAppearConfig = ActHeroAppearConfig.Get(heroDebutAct.CfgID);
+ if (actHeroAppearConfig == null) return;
+
+ if (!HeroDebutManager.Instance.HasItemInSkinCTGIDList(heroDebutAct.CfgID, int.Parse(config.Extra)))
+ {
+ SysNotifyMgr.Instance.ShowTip("ActivityNoOpen");
+ return;
}
else
{
--
Gitblit v1.8.0