From 8d22c913b691d571052eee46393cbb5ee2631221 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 29 九月 2025 21:43:46 +0800
Subject: [PATCH] 11 【内政】淘金系统-测试bug
---
Main/System/InternalAffairs/GoldRushTentCell.cs | 18 +++++++++++++++++-
Main/System/InternalAffairs/GoldRushWorkerWin.cs | 11 +++++++++++
Main/System/InternalAffairs/GoldRushWorkerCell.cs | 4 +++-
3 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/Main/System/InternalAffairs/GoldRushTentCell.cs b/Main/System/InternalAffairs/GoldRushTentCell.cs
index 39c9d28..e71b374 100644
--- a/Main/System/InternalAffairs/GoldRushTentCell.cs
+++ b/Main/System/InternalAffairs/GoldRushTentCell.cs
@@ -18,6 +18,7 @@
[SerializeField] GameObject lockMoneyGo;
[SerializeField] Button unlockMoneyBtn; //璐у竵瑙i攣
[SerializeField] Image unlockMoneyIcon;
+ [SerializeField] Image unlockMoneyRedpoint;
[SerializeField] Text unlockMoneyText;
[SerializeField] GameObject goldRushMissionWaitGo; //鏈彂甯冧换鍔�
[SerializeField] GameObject goldRushMissionWorkingGo; //宸插彂甯冧换鍔�
@@ -66,6 +67,7 @@
GoldRushManager.Instance.OnGoldRushInfoEvent += Display;
GoldRushManager.Instance.OnRefreshItemEvent += OnRefreshItemEvent;
GlobalTimeEvent.Instance.secondEvent += OnSecondEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataRefreshEvent;
leaderCount = GoldRushManager.Instance.GetCampWorkerCnt(campID);
Display();
@@ -79,6 +81,19 @@
GoldRushManager.Instance.OnGoldRushInfoEvent -= Display;
GoldRushManager.Instance.OnRefreshItemEvent -= OnRefreshItemEvent;
GlobalTimeEvent.Instance.secondEvent -= OnSecondEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefreshEvent;
+ }
+
+ void OnPlayerDataRefreshEvent(PlayerDataType type)
+ {
+ if (type == GoldRushManager.Instance.unLockMoneyType)
+ {
+ if (GoldRushManager.Instance.GetCampLockState(campID) == 2)
+ {
+ var campConfig = GoldRushCampConfig.Get(campID);
+ unlockMoneyRedpoint.SetActive(UIHelper.CheckMoneyCount(campConfig.MoneyUnlock[0], campConfig.MoneyUnlock[1], 0));
+ }
+ }
}
void FixFollowWoker(int lockState)
@@ -186,6 +201,7 @@
unLockBtn.SetActive(false);
lockMoneyGo.SetActive(true);
+ unlockMoneyRedpoint.SetActive(UIHelper.CheckMoneyCount(campConfig.MoneyUnlock[0], campConfig.MoneyUnlock[1], 0));
unlockMoneyIcon.SetIconWithMoneyType(campConfig.MoneyUnlock[0]);
unlockMoneyText.text = campConfig.MoneyUnlock[1].ToString();
goldRushMissionWaitGo.SetActive(false);
@@ -515,7 +531,7 @@
}
}
- if (followBack)
+ if (followBack&& GoldRushManager.Instance.GetCampWorkerCnt(campID) == 0)
{
StartMove(true);
workState = 2;
diff --git a/Main/System/InternalAffairs/GoldRushWorkerCell.cs b/Main/System/InternalAffairs/GoldRushWorkerCell.cs
index 43ad061..91b6211 100644
--- a/Main/System/InternalAffairs/GoldRushWorkerCell.cs
+++ b/Main/System/InternalAffairs/GoldRushWorkerCell.cs
@@ -15,6 +15,7 @@
[SerializeField] Button lockMoneyBtn;
[SerializeField] Text lockMoneyText;
[SerializeField] Image lockMoneyIcon;
+ [SerializeField] Image lockMoneyRedpoint;
public void Display(int workerID)
@@ -37,7 +38,7 @@
lockLVText.text = Language.Get("L1037", lockLV);
}
else
- {
+ {
unLockBtn.SetActive(true);
unLockBtn.AddListener(() =>
{
@@ -56,6 +57,7 @@
lockLVRect.SetActive(false);
unLockBtn.SetActive(false);
lockMoneyBtn.SetActive(true);
+ lockMoneyRedpoint.SetActive(UIHelper.CheckMoneyCount(config.MoneyUnlock[0], config.MoneyUnlock[1], 0));
lockMoneyIcon.SetIconWithMoneyType(config.MoneyUnlock[0]);
lockMoneyText.text = config.MoneyUnlock[1].ToString();
lockMoneyBtn.AddListener(() =>
diff --git a/Main/System/InternalAffairs/GoldRushWorkerWin.cs b/Main/System/InternalAffairs/GoldRushWorkerWin.cs
index 880b8fb..cf5e7e1 100644
--- a/Main/System/InternalAffairs/GoldRushWorkerWin.cs
+++ b/Main/System/InternalAffairs/GoldRushWorkerWin.cs
@@ -49,6 +49,7 @@
workMgrScroller.OnRefreshCell += OnRefreshWorkMgrCell;
workersScroller.OnRefreshCell += OnRefreshWorkersCell;
GlobalTimeEvent.Instance.secondEvent += OnSecondEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent += OnPlayerDataRefreshEvent;
if (functionOrder == 0)
{
@@ -68,6 +69,16 @@
workMgrScroller.OnRefreshCell -= OnRefreshWorkMgrCell;
workersScroller.OnRefreshCell -= OnRefreshWorkersCell;
GlobalTimeEvent.Instance.secondEvent -= OnSecondEvent;
+ PlayerDatas.Instance.playerDataRefreshEvent -= OnPlayerDataRefreshEvent;
+ }
+
+
+ void OnPlayerDataRefreshEvent(PlayerDataType type)
+ {
+ if (type == GoldRushManager.Instance.unLockMoneyType)
+ {
+ workersScroller.m_Scorller.RefreshActiveCellViews();
+ }
}
--
Gitblit v1.8.0