From eabc1cf8441444ea40b0fb00b394009eb5c9e90d Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 25 八月 2025 20:40:20 +0800
Subject: [PATCH] 5 【武将】招募系统-测试bug记录
---
Main/System/HappyXB/HappyXBModel.cs | 114 +++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 78 insertions(+), 36 deletions(-)
diff --git a/Main/System/HappyXB/HappyXBModel.cs b/Main/System/HappyXB/HappyXBModel.cs
index 0af1b07..f75a087 100644
--- a/Main/System/HappyXB/HappyXBModel.cs
+++ b/Main/System/HappyXB/HappyXBModel.cs
@@ -44,6 +44,9 @@
DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent += OnBeforePlayerDataInitialize;
FuncOpen.Instance.OnFuncStateChangeEvent += UpdateFuncState;
PackManager.Instance.RefreshItemEvent += RefreshXBTool;
+ TimeMgr.Instance.OnDayEvent += OnDayEvent;
+ DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent += OnPlayerLoginOk;
+ InvestModel.Instance.onInvestUpdate += OnInvestUpdate;
xbGetItemDict.Clear();
xbTypeItemDict.Clear();
@@ -71,17 +74,30 @@
DTC0102_tagCDBPlayer.beforePlayerDataInitializeEvent -= OnBeforePlayerDataInitialize;
FuncOpen.Instance.OnFuncStateChangeEvent -= UpdateFuncState;
PackManager.Instance.RefreshItemEvent -= RefreshXBTool;
+ TimeMgr.Instance.OnDayEvent -= OnDayEvent;
+ DTC0403_tagPlayerLoginLoadOK.playerLoginOkEvent -= OnPlayerLoginOk;
+ InvestModel.Instance.onInvestUpdate -= OnInvestUpdate;
}
- public void OnBeforePlayerDataInitialize()
+ void OnBeforePlayerDataInitialize()
{
isXBCoolTime = false;
xbTypeInfoDict.Clear();
}
+ void OnPlayerLoginOk()
+ {
+ HeroCallRedPoint();
+ }
+
+ void OnInvestUpdate(int type)
+ {
+ if (type == 7)
+ HeroCallRedPoint();
+ }
public XBGetItemConfig GetXBItemConfigByType(int type)
{
int lv = 0;
@@ -307,27 +323,33 @@
//璐у竵瀵诲疂
int moneyType = funcSet.CostMoneyType;
int xbOneMoney = funcSet.CostMoneyList[0];
-
- if (UIHelper.GetMoneyCnt(moneyType) >= xbOneMoney)
+ //鏆傚畾鍏呭�艰揣甯侀渶瑕佷簩娆$‘璁�
+ if (moneyType == 1)
{
- //鏆傚畾鍏呭�艰揣甯侀渶瑕佷簩娆$‘璁�
- if (moneyType == 1)
+ StoreModel.Instance.UseMoneyCheck(xbOneMoney, moneyType, () =>
{
- StoreModel.Instance.UseMoneyCheck(xbOneMoney, moneyType, () =>
+ if (UIHelper.GetMoneyCnt(moneyType) >= xbOneMoney)
{
SendXBQuest(xbType, 0, 0);
- }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, xbOneMoney,
- UIHelper.GetIconNameWithMoneyType(moneyType), funcSet.CostItemCountList[0]));
+ }
+ else
+ {
+ ItemTipUtility.ShowMoneyTip(moneyType);
+ }
+ }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, xbOneMoney,
+ UIHelper.GetIconNameWithMoneyType(moneyType), funcSet.CostItemCountList[0]));
- }
- else
- {
- SendXBQuest(xbType, 0, 0);
- }
}
else
{
- ItemTipUtility.ShowMoneyTip(moneyType);
+ if (UIHelper.GetMoneyCnt(moneyType) >= xbOneMoney)
+ {
+ SendXBQuest(xbType, 0, 0);
+ }
+ else
+ {
+ ItemTipUtility.ShowMoneyTip(moneyType);
+ }
}
}
}
@@ -356,26 +378,34 @@
//璐у竵瀵诲疂
int moneyType = funcSet.CostMoneyType;
- if (UIHelper.GetMoneyCnt(moneyType) >= needMoney)
+
+ //鏆傚畾鍏呭�艰揣甯侀渶瑕佷簩娆$‘璁�
+ if (moneyType == 1)
{
- //鏆傚畾鍏呭�艰揣甯侀渶瑕佷簩娆$‘璁�
- if (moneyType == 1)
+ StoreModel.Instance.UseMoneyCheck(needMoney, moneyType, () =>
{
- StoreModel.Instance.UseMoneyCheck(needMoney, moneyType, () =>
+ //鍙鏈夐亾鍏峰氨鏄亾鍏峰瀹濓紝涓嶈冻閮ㄥ垎鏈嶅姟绔墸璐у竵
+ if (UIHelper.GetMoneyCnt(moneyType) >= needMoney)
{
- //鍙鏈夐亾鍏峰氨鏄亾鍏峰瀹濓紝涓嶈冻閮ㄥ垎鏈嶅姟绔墸璐у竵
SendXBQuest(xbType, 1, toolCnt > 0 ? 2 : 0);
- }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, needMoney,
- UIHelper.GetIconNameWithMoneyType(moneyType), needToolCnt - toolCnt));
- }
- else
- {
- SendXBQuest(xbType, 1, toolCnt > 0 ? 2 : 0);
- }
+ }
+ else
+ {
+ ItemTipUtility.ShowMoneyTip(moneyType);
+ }
+ }, (int)BuyStoreItemCheckType.HeroCall, fullTip: Language.Get("CostMoneyForItem", funcSet.CostItemID, needMoney,
+ UIHelper.GetIconNameWithMoneyType(moneyType), needToolCnt - toolCnt));
}
else
{
- ItemTipUtility.ShowMoneyTip(moneyType);
+ if (UIHelper.GetMoneyCnt(moneyType) >= needMoney)
+ {
+ SendXBQuest(xbType, 1, toolCnt > 0 ? 2 : 0);
+ }
+ else
+ {
+ ItemTipUtility.ShowMoneyTip(moneyType);
+ }
}
}
@@ -479,10 +509,15 @@
#region 绾㈢偣閫昏緫
public const int HappyXB_RedKey = 203;
public const int XBHeroCall1_RedKey = 20300; //姝﹀皢鍏嶈垂鍙敜
+ public const int XBHeroCall10_RedKey = 20301; //姝﹀皢10鍙敜
+ public const int XBHeroCallScore_RedKey = 20302; //姝﹀皢绉垎鍙敜
- public Redpoint happyXBRed = new Redpoint(HappyXB_RedKey);
+ public Redpoint happyXBRed = new Redpoint(MainRedDot.MainHerosRedpoint, HappyXB_RedKey);
public Redpoint bestXBFreeRed = new Redpoint(HappyXB_RedKey, XBHeroCall1_RedKey);
+ public Redpoint bestXB10Red = new Redpoint(HappyXB_RedKey, XBHeroCall10_RedKey);
+ public Redpoint bestXBScoreRed = new Redpoint(HappyXB_RedKey, XBHeroCallScore_RedKey);
+
private void UpdateFuncState(int funcId)
@@ -500,32 +535,39 @@
HeroCallRedPoint();
}
+ void OnDayEvent()
+ {
+ HeroCallRedPoint();
+ }
+
//鑻遍泟鎷涘嫙
public void HeroCallRedPoint()
{
if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.HappyFindTreasure)) return;
// 鍏嶈垂 10杩� 绉垎
- happyXBRed.state = RedPointState.None;
+ bestXB10Red.state = RedPointState.None;
+ bestXBFreeRed.state = RedPointState.None;
+ bestXBScoreRed.state = RedPointState.None;
if (IsHaveFreeXB((int)HappXBTitle.HeroCallAdvanced))
{
bestXBFreeRed.state = RedPointState.Simple;
- return;
- }
- else
- {
- bestXBFreeRed.state = RedPointState.None;
}
if (IsHaveManyXBToolEx((int)HappXBTitle.HeroCallAdvanced, out int xbtoolCnt, out int needtoolCnt, out int needMoney))
{
- happyXBRed.state = RedPointState.Simple;
+ bestXB10Red.state = RedPointState.Simple;
return;
}
//绉垎瓒冲
-
+ if ((InvestModel.Instance.IsInvested(InvestModel.monthCardType)
+ || GetXBInfoByType((int)HappXBTitle.HeroCallScore)?.treasureCount == 0)
+ && UIHelper.GetMoneyCnt(51) >= TreasureSetConfig.Get((int)HappXBTitle.HeroCallScore).CostMoneyList[0])
+ {
+ bestXBScoreRed.state = RedPointState.Simple;
+ }
}
--
Gitblit v1.8.0