From c5eec6f1ec285dfff3eca1e991fc9dffd177a94c Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期四, 27 九月 2018 16:25:39 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/Dogz/DogzModel.cs |   48 +++++++++++++++++++++++++++++++-----------------
 1 files changed, 31 insertions(+), 17 deletions(-)

diff --git a/System/Dogz/DogzModel.cs b/System/Dogz/DogzModel.cs
index df9e3fe..c560c2e 100644
--- a/System/Dogz/DogzModel.cs
+++ b/System/Dogz/DogzModel.cs
@@ -695,13 +695,26 @@
         {
             var configs = Config.Instance.GetAllValues<DogzConfig>();
             presentSelectDogz = configs[0].ID;
-            foreach (var key in m_DogzEquipLimit.Keys)
+            if(dogzFuncRedpoint.state == RedPointState.Simple)
             {
-                Redpoint redpoint = GetSingleDogzRedpointById(key);
-                if (redpoint.state == RedPointState.Simple)
+                foreach (var key in m_DogzEquipLimit.Keys)
                 {
-                    presentSelectDogz = key;
-                    break;
+                    Redpoint redpoint = GetSingleDogzRedpointById(key);
+                    if (redpoint.state == RedPointState.Simple)
+                    {
+                        presentSelectDogz = key;
+                        break;
+                    }
+                }
+            }
+            else
+            {
+                foreach(var key in dogzAssistStateDict.Keys)
+                {
+                    if(TryGetAssistDogzState(key))
+                    {
+                        presentSelectDogz = presentSelectDogz > key ? presentSelectDogz : key;
+                    }
                 }
             }
         }
@@ -776,18 +789,18 @@
                 value.state = RedPointState.None;
             }
             bool isMaxAssistNum = GetAssistDogzCount() >= DogzAssistDefaultCnt ? true : false;
+            int minAlreadyAssistId = 0;
+            foreach (var dogzId in m_DogzEquipLimit.Keys)
+            {
+                if (TryGetAssistDogzState(dogzId)
+                    && ((minAlreadyAssistId > dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0))
+                {
+                    minAlreadyAssistId = dogzId;
+                }
+            }
+
             if (!isMaxAssistNum)
             {
-                int minAlreadyAssistId = 0;
-                foreach (var dogzId in m_DogzEquipLimit.Keys)
-                {
-                    if (TryGetAssistDogzState(dogzId)
-                        && ((minAlreadyAssistId < dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0))
-                    {
-                        minAlreadyAssistId = dogzId;
-                    }
-                }
-
                 int maxDogzId = 0;
                 foreach(var dogzId in m_DogzEquipLimit.Keys)
                 {
@@ -815,7 +828,8 @@
                 {
                     var equips = GetDogzEquips(dogzId);
                     int equipNum = equips == null ? 0 : equips.Count;
-                    if(!TryGetAssistDogzState(dogzId) && equipNum == 5)
+                    if(!TryGetAssistDogzState(dogzId) && equipNum == 5
+                         && ((minAlreadyAssistId != 0 && dogzId > minAlreadyAssistId) || minAlreadyAssistId == 0))
                     {
                         Redpoint assistRedpoint = GetDogzAssistRedpointById(dogzId);
                         if (assistRedpoint.state == RedPointState.None)
@@ -903,7 +917,7 @@
                 foreach (var dogzId in m_DogzEquipLimit.Keys)
                 {
                     if(TryGetAssistDogzState(dogzId)
-                        && ((minAlreadyAssistId < dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0))
+                        && ((minAlreadyAssistId > dogzId && minAlreadyAssistId != 0) || minAlreadyAssistId == 0))
                     {
                         minAlreadyAssistId = dogzId;
                     }

--
Gitblit v1.8.0