ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerOnline.py
@@ -385,6 +385,12 @@
    heroID = heroItem.GetItemTypeID()
    curAddPer = getHeroCardAddPer(heroItem)
    effAddPer, effItemIndex, inMain = olPlayer.GetHeroEffectiveCard(heroID)
    curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptHero)
    hisEffItem = curPack.GetAt(effItemIndex) if curPack.GetCount() > effItemIndex else None
    if not hisEffItem or hisEffItem.IsEmpty():
        GameWorld.DebugLog("历史生效的物品不在了,强制设置空! effAddPer=%s,effItemIndex=%s,inMain=%s" % (effAddPer, effItemIndex, inMain))
        effAddPer, effItemIndex, inMain = -1, -1, False
    if itemIndex == effItemIndex:
        if curAddPer == effAddPer:
            GameWorld.DebugLog("生效的卡牌不变且加成也不变,不用处理! heroID=%s,itemIndex=%s,inMain=%s,effAddPer=%s,curAddPer=%s" % (heroID, itemIndex, inMain, effAddPer, curAddPer))
@@ -464,8 +470,10 @@
        if inMain:
            updEffectiveCardDict[heroID] = [cardAddPer, index, inMain]
        else:
            addPer = updEffectiveCardDict.get(heroID, [-1, -1, False])[0]
            if cardAddPer > addPer:
            effInfo = updEffectiveCardDict.get(heroID, [-1, -1, False])
            if effInfo[2] == True:
                pass #GameWorld.Log("    已经有在阵容中的生效卡了: index=%s" % effInfo[1])
            elif cardAddPer > effInfo[0]:
                updEffectiveCardDict[heroID] = [cardAddPer, index, inMain]
                
    # 更新生效变更的卡牌