From cd4e26da0a2347a79aa18f4c77a5df9b103abfa6 Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期五, 23 十一月 2018 10:30:24 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/KnapSack/Logic/PlayerPackModels.cs |   23 ++++++++++++++++++++---
 1 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/System/KnapSack/Logic/PlayerPackModels.cs b/System/KnapSack/Logic/PlayerPackModels.cs
index 406cbdc..8a7a6a5 100644
--- a/System/KnapSack/Logic/PlayerPackModels.cs
+++ b/System/KnapSack/Logic/PlayerPackModels.cs
@@ -573,13 +573,30 @@
             return cnt;
         }
 
-        public List<int> GetAddAttrIdByStars(out int starsCount)
+        public List<int> GetAddAttrIdByStars(int _curStarsCount, out int starsCount)
         {
             starsCount = 0;
             List<int> activeIdlist = new List<int>();
             List<int> addIdlist = new List<int>();
+            List<int> starslist = RoleEquipStarsConfig.GetEquipStarsCntlist();
+            if (starslist == null || starslist.Count < 1) return addIdlist;
             int activeStars = GetActiveCntByType(1);
-            RoleEquipStarsConfig activeStarsConfig = RoleEquipStarsConfig.GetEquipStarsModel(activeStars);
+            int realActiveStars = _curStarsCount > activeStars ? activeStars : _curStarsCount;
+            for (int i = starslist.Count - 1; i > -1; i--)
+            {
+                if (i == 0 && starslist[i] > realActiveStars)
+                {
+                    realActiveStars = 0;
+                    break;
+                }
+                if (starslist[i] <= realActiveStars)
+                {
+                    realActiveStars = starslist[i];
+                    break;
+                }
+            }
+
+            RoleEquipStarsConfig activeStarsConfig = RoleEquipStarsConfig.GetEquipStarsModel(realActiveStars);
             if(activeStarsConfig != null)
             {
                 for(int i = 0; i < activeStarsConfig.attType.Length; i++)
@@ -592,7 +609,7 @@
             {
                 bool isAddId = false;
                 RoleEquipStarsConfig starsConfig = starsConfigs[i];
-                if (activeStars < starsConfig.countNeed)
+                if (realActiveStars < starsConfig.countNeed)
                 {
                     for(int j = 0; j < starsConfig.attType.Length; j++)
                     {

--
Gitblit v1.8.0