From 46f1b3554ca7c3eeea118aaf80fe756bebdfde93 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 09 二月 2026 13:46:54 +0800
Subject: [PATCH] 121 【武将】武将系统-服务端(修复武将修改皮肤战斗时不生效bug;Hero命令增加切换皮肤;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py |   15 +++++++--------
 1 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
index 9345b28..fc590a6 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
@@ -29,12 +29,12 @@
 import GameLogic_Dingjunge
 import PlayerMingge
 import PlayerBeauty
-import PlayerFamily
 import PlayerHorse
 import PlayerGubao
 import PlayerHero
 import PlayerHJG
 import GameWorld
+import ChPlayer
 import ChConfig
 import ChEquip
 
@@ -80,6 +80,10 @@
         if not isReload: # 非重读阵容的视为变更
             self.isHeroChange = True
         reloadEffHeroCard(curPlayer, self) # 更新武将阵容强制重刷生效卡牌
+        return
+    
+    def OnSwitch(self):
+        self.isHeroChange = True
         return
     
     def IsHeroItemIn(self, itemIndex): return itemIndex in self.heroItemDict
@@ -361,8 +365,6 @@
             
             effCardAddPerAft = heroPreset.GetEffCardAddPer()
             
-            if effCardAddPerBef == effCardAddPerAft:
-                continue
             heroPresetID = heroPreset.heroPresetID
             GameWorld.DebugLog("武将物品变化影响: itemIndex=%s,heroPresetID=%s,effCardAddPerBef=%s,effCardAddPerAft=%s" 
                                % (itemIndex, heroPresetID, effCardAddPerBef, effCardAddPerAft), self.playerID)
@@ -778,9 +780,9 @@
         skinID = 0
         skinIDList = heroIpyData.GetSkinIDList()
         if skinIndex < 0 or skinIndex >= len(skinIDList):
-            skinID = skinIDList[skinIndex]
-        elif skinIDList:
             skinID = skinIDList[0]
+        elif skinIDList:
+            skinID = skinIDList[skinIndex]
             
         lineupHero = presetLineup.GetLineupHero(posNum)
         #if False:
@@ -1194,7 +1196,4 @@
     else:
         GameWorld.DebugLog("主线阵容没有在战斗中,不需要处理", playerID)
         
-    PlayerFamily.RefreshFamilyMember(curPlayer) # 更新公会
-    # 更新排行榜
-    
     return

--
Gitblit v1.8.0