From df5481265f8bf04548c8f51e5fffc9449547f423 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期五, 17 四月 2026 18:57:15 +0800
Subject: [PATCH] 602 坐骑优化-客户端 修复bug

---
 Main/System/Horse/HorseManager.cs |   24 +++++++++++++++++++++---
 Main/System/Horse/HorseWin.cs     |    8 --------
 2 files changed, 21 insertions(+), 11 deletions(-)

diff --git a/Main/System/Horse/HorseManager.cs b/Main/System/Horse/HorseManager.cs
index c3781e4..28df435 100644
--- a/Main/System/Horse/HorseManager.cs
+++ b/Main/System/Horse/HorseManager.cs
@@ -655,7 +655,7 @@
                 mergedResultDic[attrID] = value;
             }
         }
-    
+
 
         // 鍚堝苟 attrDic
         foreach (var kvp in attrDic)
@@ -684,7 +684,17 @@
         attrDic.TryGetValue(attrID, out long value);
         specialAttrDic.TryGetValue(attrID, out long specialValue);
         skinAttrDic.TryGetValue(attrID, out long skinValue);
-        return value + specialValue + skinValue;
+
+        GetNowRiderAttrInfo(out int nowRiderAttrID, out long nowRiderValue, out PlayerPropertyConfig playerPropertyConfig);
+        if (nowRiderAttrID == attrID)
+        {
+            return value + specialValue + skinValue + nowRiderValue;
+        }
+        else
+        {
+            return value + specialValue + skinValue;
+        }
+
     }
 
     public int GetAttrPer(int attrID)
@@ -696,7 +706,15 @@
             specialAttrDic.TryGetValue(pertype, out long specialValue);
             skinAttrDic.TryGetValue(pertype, out long skinValue);
 
-            return (int)(value + specialValue + skinValue);
+            GetNowRiderAttrInfo(out int nowRiderAttrID, out long nowRiderValue, out PlayerPropertyConfig playerPropertyConfig);
+            if (nowRiderAttrID == attrID)
+            {
+                return (int)(value + specialValue + skinValue + nowRiderValue);
+            }
+            else
+            {
+                return (int)(value + specialValue + skinValue);
+            }
         }
 
         return 0;
diff --git a/Main/System/Horse/HorseWin.cs b/Main/System/Horse/HorseWin.cs
index ca045a1..ddfffb6 100644
--- a/Main/System/Horse/HorseWin.cs
+++ b/Main/System/Horse/HorseWin.cs
@@ -88,18 +88,10 @@
                 () =>
                 {
                     if (!UIHelper.CheckMoneyCount(horseConfig.UnlockValue, horseConfig.UnlockNeedCnt, 2))
-                    {
                         return;
-                    }
-
                     HorseManager.Instance.unLockHorseID = carouselView.CurrentHorseId;
                     HorseManager.Instance.SendHorseIDOP(carouselView.CurrentHorseId, 1);
                     HorseManager.Instance.unLockSkinID = skinID;
-                    bool isChangeState = HorseManager.Instance.IsChangeState(HorseManager.Instance.GetUsingHorseSkinID(false));
-                    if (!isChangeState)
-                    {
-                        HorseManager.Instance.SendSkinOP(2, skinID);
-                    }
                 });
         });
     }

--
Gitblit v1.8.0