From e59112d8aecdd863bd04965bd6e2de883753bb5a Mon Sep 17 00:00:00 2001 From: lcy <1459594991@qq.com> Date: 星期四, 02 一月 2025 17:11:02 +0800 Subject: [PATCH] 10290 运势-客户端 --- System/LoopAct/YunShi/OperationYunShi.cs | 43 ++++++++++++++++++--- System/LoopAct/YunShi/YunShiXBActModel.cs | 10 ++++ System/LoopAct/YunShi/YunShiRechargeGiftActWin.cs | 23 +++++------ 3 files changed, 57 insertions(+), 19 deletions(-) diff --git a/System/LoopAct/YunShi/OperationYunShi.cs b/System/LoopAct/YunShi/OperationYunShi.cs index 04fbea3..022c4a3 100644 --- a/System/LoopAct/YunShi/OperationYunShi.cs +++ b/System/LoopAct/YunShi/OperationYunShi.cs @@ -14,14 +14,45 @@ { var textBuilder = OperationTimeHepler.textBuilder; textBuilder.Length = 0; - textBuilder.Append(startDate.ToDisplay(false)); - textBuilder.Append(string.Format(" {0}:{1}", joinStartHour.ToString("D2"), joinStartMinute.ToString("D2"))); - if (startDate != endDate) + + OperationDate adjustedStartDate = startDate; + int adjustedStartHour = joinStartHour; + int adjustedStartMinute = joinStartMinute; + if (resetType == 0) { - textBuilder.Append(" - "); - textBuilder.Append(endDate.ToDisplay(false)); - textBuilder.Append(string.Format(" {0}:{1}", joinEndHour.ToString("D2"), joinEndMinute.ToString("D2"))); + adjustedStartHour = 0; + adjustedStartMinute = 0; } + else if (resetType == 1) + { + adjustedStartHour = 4; + adjustedStartMinute = 59; + } + + textBuilder.Append(adjustedStartDate.ToDisplay(false)); + textBuilder.Append(string.Format(" {0}:{1}", adjustedStartHour.ToString("D2"), adjustedStartMinute.ToString("D2"))); + + + OperationDate adjustedEndDate = endDate; + int adjustedEndHour = joinEndHour; + int adjustedEndMinute = joinEndMinute; + + + if (resetType == 0) + { + adjustedEndDate.day += 1; + } + else if (resetType == 1) + { + adjustedEndDate.day += 1; + adjustedEndHour = 4; + adjustedEndMinute = 59; + } + + textBuilder.Append(" - "); + textBuilder.Append(adjustedEndDate.ToDisplay(false)); + textBuilder.Append(string.Format(" {0}:{1}", adjustedEndHour.ToString("D2"), adjustedEndMinute.ToString("D2"))); + return textBuilder.ToString(); } diff --git a/System/LoopAct/YunShi/YunShiRechargeGiftActWin.cs b/System/LoopAct/YunShi/YunShiRechargeGiftActWin.cs index 54f7141..6479b06 100644 --- a/System/LoopAct/YunShi/YunShiRechargeGiftActWin.cs +++ b/System/LoopAct/YunShi/YunShiRechargeGiftActWin.cs @@ -9,7 +9,7 @@ [SerializeField] TextEx actTime; YunShiRechargeGiftActModel model { get { return ModelCenter.Instance.GetModel<YunShiRechargeGiftActModel>(); } } VipModel vipModel { get { return ModelCenter.Instance.GetModel<VipModel>(); } } - + HappyXBModel happyXBModel { get { return ModelCenter.Instance.GetModelEx<HappyXBModel>(); } } StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } } #region Built-in @@ -25,11 +25,18 @@ protected override void OnPreOpen() { scroller.OnRefreshCell += OnRefreshCell; - GlobalTimeEvent.Instance.secondEvent += secondEvent; vipModel.rechargeCountEvent += VipModel_rechargeCountEvent; storeModel.RefreshBuyShopLimitEvent += RefreshBuyShopLimitEvent; DisplayScroll(); - secondEvent(); + OperationYunShi act; + OperationTimeHepler.Instance.TryGetOperation(YunShiXBActModel.operaType, out act); + if (act == null) + return; + int type = act.treasureType; + var xbInfo = happyXBModel.GetXBInfoByType(type); + if (xbInfo == null) + return; + actTime.text = Language.Get("RidingPetBossQuestTime", act.ToDisplayTime()); } private void VipModel_rechargeCountEvent(int obj) @@ -44,7 +51,6 @@ protected override void OnPreClose() { scroller.OnRefreshCell -= OnRefreshCell; - GlobalTimeEvent.Instance.secondEvent -= secondEvent; vipModel.rechargeCountEvent -= VipModel_rechargeCountEvent; storeModel.RefreshBuyShopLimitEvent -= RefreshBuyShopLimitEvent; } @@ -122,13 +128,6 @@ return 0; } - private void secondEvent() - { - OperationRechargeGiftAct act; - OperationTimeHepler.Instance.TryGetOperation(YunShiRechargeGiftActModel.operaType, out act); - if (act == null) - return; - actTime.text = Language.Get("RidingPetBossQuestTime", act.ToDisplayTimeEx()); - } + } } \ No newline at end of file diff --git a/System/LoopAct/YunShi/YunShiXBActModel.cs b/System/LoopAct/YunShi/YunShiXBActModel.cs index fe411cf..2f118fb 100644 --- a/System/LoopAct/YunShi/YunShiXBActModel.cs +++ b/System/LoopAct/YunShi/YunShiXBActModel.cs @@ -122,7 +122,15 @@ private void OnOperationTimeUpdateEvent(Operation operation) { - UpdateRedPoint(); + + if (operation == Operation.default48) + { + if (WindowCenter.Instance.IsOpen<YunShiWin>()) + { + WindowCenter.Instance.Close<YunShiWin>(); + } + UpdateRedPoint(); + } } private void OnRefreshXBTypeInfoAct() -- Gitblit v1.8.0