From 6e39e6e2aa64d5c6ba13e8cef3b04fafe5eecf3a Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期三, 08 五月 2019 14:07:58 +0800
Subject: [PATCH] 6694 【2.0】【开发】强化红点优化

---
 System/DailyQuest/DayRemind.cs        |    2 ++
 System/EquipGem/EquipStrengthWin.cs   |    2 ++
 System/EquipGem/EquipStrengthModel.cs |   37 ++++++++++++++++++++++++++++++++++++-
 3 files changed, 40 insertions(+), 1 deletions(-)

diff --git a/System/DailyQuest/DayRemind.cs b/System/DailyQuest/DayRemind.cs
index 7a641dd..ebfa583 100644
--- a/System/DailyQuest/DayRemind.cs
+++ b/System/DailyQuest/DayRemind.cs
@@ -50,6 +50,7 @@
     public const string FESTIVALREDPACKREMIND = "FestivalRedpackRemind";
     public const string EQUIPTRAIN_COSTDIAMOND = "EquipTrain_CostDiamond";
     public const string AUCTION_REDPOINT = "Auction_Redpoint";
+    public const string EQUIPSTRENGTH_REDPOINT = "EquipStrength_Redpoint";
 
     public Dictionary<string, int[]> dayRemindDic = new Dictionary<string, int[]>();
 
@@ -109,6 +110,7 @@
         SetDayRemind(FESTIVALREDPACKREMIND);
         SetDayRemind(EQUIPTRAIN_COSTDIAMOND);
         SetDayRemind(AUCTION_REDPOINT);
+        SetDayRemind(EQUIPSTRENGTH_REDPOINT);
     }
 
     private void SetDayRemind(string _key)
diff --git a/System/EquipGem/EquipStrengthModel.cs b/System/EquipGem/EquipStrengthModel.cs
index d0a4229..54afeb1 100644
--- a/System/EquipGem/EquipStrengthModel.cs
+++ b/System/EquipGem/EquipStrengthModel.cs
@@ -56,6 +56,9 @@
 
     public List<int> equipPlaces { get; private set; }
 
+    public int redpointLimitLevel { get; private set; }
+    public int redpointLimitMoney { get; private set; }
+
     private bool isChangeBool = true;
     public bool IsChangeBool {
         get { return isChangeBool; }
@@ -116,6 +119,10 @@
         GetEquipLevelMax();
         GetEvolutionTypeMax();
 
+        var funcConfig = FuncConfigConfig.Get("StrengthenRedPointLevel");
+        redpointLimitLevel = int.Parse(funcConfig.Numerical1);
+        redpointLimitMoney = int.Parse(funcConfig.Numerical2);
+
         equipPlaces = new List<int>(12);
         for (int i = 1; i <= 12; i++)
         {
@@ -173,7 +180,8 @@
 
     private void PlayerDataRefreshEvent(PlayerDataType dataType)
     {
-        if (dataType == PlayerDataType.Silver)
+        if (dataType == PlayerDataType.Silver
+            || dataType == PlayerDataType.LV)
         {
             if (isServerPrepare)
             {
@@ -552,6 +560,15 @@
         return m_EquipStrengthRedpoints.TryGetValue(packIndex, out _redpoint);
     }
 
+    public void SetDayRemind()
+    {
+        if (redpoint.state == RedPointState.Simple)
+        {
+            DayRemind.Instance.SetDayRemind(DayRemind.EQUIPSTRENGTH_REDPOINT, true);
+            UpdateRedpoint();
+        }
+    }
+
     void UpdateRedpoint()
     {
         if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Strength))
@@ -560,6 +577,24 @@
             return;
         }
 
+        if (PlayerDatas.Instance.baseData.LV >= redpointLimitLevel)
+        {
+            if (DayRemind.Instance.GetDayRemind(DayRemind.EQUIPSTRENGTH_REDPOINT))
+            {
+                RefreshRedpoint(Int2.zero, 0);
+                return;
+            }
+        }
+        else
+        {
+            var money = UIHelper.GetMoneyCnt(3);
+            if (money < (ulong)redpointLimitMoney)
+            {
+                RefreshRedpoint(Int2.zero, 0);
+                return;
+            }
+        }
+
         var equipSets = equipModel.GetAllEquipSets();
         foreach (var level in equipSets)
         {
diff --git a/System/EquipGem/EquipStrengthWin.cs b/System/EquipGem/EquipStrengthWin.cs
index 7bbcb9c..77aa410 100644
--- a/System/EquipGem/EquipStrengthWin.cs
+++ b/System/EquipGem/EquipStrengthWin.cs
@@ -92,6 +92,8 @@
             model.EquipStrengthUpdate -= EquipStrengthUpdate;
             model.EquipStrengthLvUpdate -= EquipStrengthLvUpdate;
             PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshEvent;
+
+            model.SetDayRemind();
         }
 
         protected override void OnAfterClose()

--
Gitblit v1.8.0