From 7fe5b708667ada80e22ce098635c30c89246d23b Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 05 十二月 2025 20:00:07 +0800
Subject: [PATCH] 121 【武将】武将系统-服务端(武将生效卡牌逻辑;去除图鉴加成;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py |  288 ++++++++++++++++++++++++++++----------------------------
 1 files changed, 144 insertions(+), 144 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py
index 19a0800..8d22386 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHero.py
@@ -184,6 +184,7 @@
         GameWorld.DebugLog("首次激活武将: heroID=%s" % (heroID), curPlayer.GetPlayerID())
         #首次获得图鉴额外逻辑 ...
         Sync_HeroInfo(curPlayer, [heroID])
+        PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 首次获得
         
     return
 
@@ -225,55 +226,55 @@
     GameWorld.DebugLog("设置武将图鉴激活状态:%s,bookState=%s,updBookState=%s" % (isAct, bookState, updBookState), curPlayer.GetPlayerID())
     return
 
-def GetHeroBookStarLV(curPlayer, heroID):
-    ## 武将图鉴星级等级
-    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
-    return GameWorld.GetValue(bookState, 4, 3)
-def SetHeroBookStarLV(curPlayer, heroID, starLV):
-    ## 设置武将图鉴星级等级,支持三位数 0~999 级
-    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
-    updBookState = GameWorld.SetValue(bookState, 4, 3, starLV)
-    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBook % heroID, updBookState)
-    GameWorld.DebugLog("设置武将图鉴星级等级:%s,bookState=%s,updBookState=%s" % (starLV, bookState, updBookState), curPlayer.GetPlayerID())
-    return
+#def GetHeroBookStarLV(curPlayer, heroID):
+#    ## 武将图鉴星级等级
+#    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
+#    return GameWorld.GetValue(bookState, 4, 3)
+#def SetHeroBookStarLV(curPlayer, heroID, starLV):
+#    ## 设置武将图鉴星级等级,支持三位数 0~999 级
+#    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
+#    updBookState = GameWorld.SetValue(bookState, 4, 3, starLV)
+#    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBook % heroID, updBookState)
+#    GameWorld.DebugLog("设置武将图鉴星级等级:%s,bookState=%s,updBookState=%s" % (starLV, bookState, updBookState), curPlayer.GetPlayerID())
+#    return
 
-def GetHeroBookStarLVH(curPlayer, heroID):
-    ## 武将图鉴星级历史最高等级
-    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
-    return GameWorld.GetValue(bookStateH, 4, 3)
-def SetHeroBookStarLVH(curPlayer, heroID, starLVH):
-    ## 设置武将图鉴星级历史最高等级,支持三位数 0~999 级
-    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
-    updBookStateH = GameWorld.SetValue(bookStateH, 4, 3, starLVH)
-    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBookH % heroID, updBookStateH)
-    GameWorld.DebugLog("设置武将图鉴星级历史最高等级:%s,bookStateH=%s,updBookStateH=%s" % (starLVH, bookStateH, updBookStateH), curPlayer.GetPlayerID())
-    Sync_HeroInfo(curPlayer, [heroID])
-    return
+#def GetHeroBookStarLVH(curPlayer, heroID):
+#    ## 武将图鉴星级历史最高等级
+#    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
+#    return GameWorld.GetValue(bookStateH, 4, 3)
+#def SetHeroBookStarLVH(curPlayer, heroID, starLVH):
+#    ## 设置武将图鉴星级历史最高等级,支持三位数 0~999 级
+#    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
+#    updBookStateH = GameWorld.SetValue(bookStateH, 4, 3, starLVH)
+#    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBookH % heroID, updBookStateH)
+#    GameWorld.DebugLog("设置武将图鉴星级历史最高等级:%s,bookStateH=%s,updBookStateH=%s" % (starLVH, bookStateH, updBookStateH), curPlayer.GetPlayerID())
+#    Sync_HeroInfo(curPlayer, [heroID])
+#    return
 
-def GetHeroBookBreakLV(curPlayer, heroID):
-    ## 武将图鉴突破等级
-    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
-    return GameWorld.GetValue(bookState, 7, 3)
-def SetHeroBookBreakLV(curPlayer, heroID, breakLV):
-    ## 设置武将图鉴突破等级,支持三位数 0~999 级
-    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
-    updBookState = GameWorld.SetValue(bookState, 7, 3, breakLV)
-    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBook % heroID, updBookState)
-    GameWorld.DebugLog("设置武将图鉴突破等级:%s,bookState=%s,updBookState=%s" % (breakLV, bookState, updBookState), curPlayer.GetPlayerID())
-    return
+#def GetHeroBookBreakLV(curPlayer, heroID):
+#    ## 武将图鉴突破等级
+#    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
+#    return GameWorld.GetValue(bookState, 7, 3)
+#def SetHeroBookBreakLV(curPlayer, heroID, breakLV):
+#    ## 设置武将图鉴突破等级,支持三位数 0~999 级
+#    bookState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID)
+#    updBookState = GameWorld.SetValue(bookState, 7, 3, breakLV)
+#    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBook % heroID, updBookState)
+#    GameWorld.DebugLog("设置武将图鉴突破等级:%s,bookState=%s,updBookState=%s" % (breakLV, bookState, updBookState), curPlayer.GetPlayerID())
+#    return
 
-def GetHeroBookBreakLVH(curPlayer, heroID):
-    ## 武将图鉴突破历史最高等级
-    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
-    return GameWorld.GetValue(bookStateH, 7, 3)
-def SetHeroBookBreakLVH(curPlayer, heroID, breakLVH):
-    ## 设置武将图鉴突破历史最高等级,支持三位数 0~999 级
-    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
-    updBookStateH = GameWorld.SetValue(bookStateH, 7, 3, breakLVH)
-    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBookH % heroID, updBookStateH)
-    GameWorld.DebugLog("设置武将图鉴突破历史最高等级:%s,bookStateH=%s,updBookStateH=%s" % (breakLVH, bookStateH, updBookStateH), curPlayer.GetPlayerID())
-    Sync_HeroInfo(curPlayer, [heroID])
-    return
+#def GetHeroBookBreakLVH(curPlayer, heroID):
+#    ## 武将图鉴突破历史最高等级
+#    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
+#    return GameWorld.GetValue(bookStateH, 7, 3)
+#def SetHeroBookBreakLVH(curPlayer, heroID, breakLVH):
+#    ## 设置武将图鉴突破历史最高等级,支持三位数 0~999 级
+#    bookStateH = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBookH % heroID)
+#    updBookStateH = GameWorld.SetValue(bookStateH, 7, 3, breakLVH)
+#    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroBookH % heroID, updBookStateH)
+#    GameWorld.DebugLog("设置武将图鉴突破历史最高等级:%s,bookStateH=%s,updBookStateH=%s" % (breakLVH, bookStateH, updBookStateH), curPlayer.GetPlayerID())
+#    Sync_HeroInfo(curPlayer, [heroID])
+#    return
 
 def GetHeroItem(curPlayer, itemIndex):
     curPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptHero)
@@ -352,7 +353,7 @@
     GameWorld.DebugLog("武将升级: itemIndex=%s,heroID=%s,updHeroLV=%s" % (itemIndex, heroID, updHeroLV), playerID)
     heroItem.SetUserAttr(ShareDefine.Def_IudetHeroLV, updHeroLV)
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 升级
     
     PlayerActivity.AddDailyTaskValue(curPlayer, ChConfig.DailyTask_HeroLVUP, 1)
     PlayerTask.AddTaskValue(curPlayer, ChConfig.TaskType_HeroLVUP)
@@ -436,6 +437,8 @@
                        % (itemIndex, heroID, star, useStar, addStar, updStar), playerID)
     ItemCommon.DelItem(curPlayer, useItem, useItem.GetCount(), False, "HeroStarUP")
     DoHeroUpdStar(curPlayer, heroItem, updStar)
+    
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 升星
     return
 
 def GetHeroStarMax(heroItem):
@@ -468,7 +471,7 @@
 
 def DoHeroUpdStar(curPlayer, heroItem, updStar, isSync=True):
     ## 执行武将星级更新
-    heroID = heroItem.GetItemTypeID()
+    #heroID = heroItem.GetItemTypeID()
     curStar = heroItem.GetUserAttr(ShareDefine.Def_IudetHeroStar)
     addStar = updStar - curStar
     item = heroItem.GetItem()
@@ -481,13 +484,10 @@
         
     if isSync:
         heroItem.Sync_Item()
-    
-    itemIndex = heroItem.GetItemPlaceIndex()
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
-    
-    starLVH = GetHeroBookStarLVH(curPlayer, heroID)
-    if updStar > starLVH:
-        SetHeroBookStarLVH(curPlayer, heroID, updStar)
+        
+    #starLVH = GetHeroBookStarLVH(curPlayer, heroID)
+    #if updStar > starLVH:
+    #    SetHeroBookStarLVH(curPlayer, heroID, updStar)
     return
 
 def __DoHeroStarTalentUp(singleItem, addLV):
@@ -653,20 +653,20 @@
     GameWorld.DebugLog("武将突破: itemIndex=%s,heroID=%s,nextBreakLV=%s" % (itemIndex, heroID, nextBreakLV), playerID)
     SetHeroBreakLV(curPlayer, heroItem, nextBreakLV)
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 突破
     return
 
 def SetHeroBreakLV(curPlayer, heroItem, breakLV, isSync=True):
     ## 设置武将突破等级
-    heroID = heroItem.GetItemTypeID()
+    #heroID = heroItem.GetItemTypeID()
     item = heroItem.GetItem()
     item.SetUserAttr(ShareDefine.Def_IudetHeroBreakLV, breakLV)
     if isSync:
         heroItem.Sync_Item()
         
-    breakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
-    if breakLV > breakLVH:
-        SetHeroBookBreakLVH(curPlayer, heroID, breakLV)
+    #breakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
+    #if breakLV > breakLVH:
+    #    SetHeroBookBreakLVH(curPlayer, heroID, breakLV)
     return
 
 #// B2 33 武将觉醒 #tagCSHeroAwake
@@ -719,7 +719,7 @@
     GameWorld.DebugLog("武将觉醒: itemIndex=%s,heroID=%s,nextAwakeLV=%s" % (itemIndex, heroID, nextAwakeLV), playerID)
     SetHeroAwakeLV(heroItem, nextAwakeLV)
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 觉醒
     return
 
 def SetHeroAwakeLV(heroItem, awakeLV, isSync=True):
@@ -857,7 +857,7 @@
     if isSync:
         heroItem.Sync_Item()
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 选择天赋
     return
 
 #// B2 35 武将洗炼 #tagCSHeroWash
@@ -991,7 +991,7 @@
     heroItem.Sync_Item()
     GameWorld.DebugLog("武将洗炼替换! itemIndex=%s,heroID=%s,washIDList=%s" % (itemIndex, heroID, washIDList))
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 替换洗炼天赋
     return
 
 #// B2 36 武将换肤 #tagCSHeroWearSkin
@@ -1024,7 +1024,7 @@
             return
     heroItem.SetUserAttr(ShareDefine.Def_IudetHeroSkin, skinIndex)
     
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 切换皮肤
     return
 
 def ActiveHeroSkin(curPlayer, heroID, skinIndex, isActive=True):
@@ -1040,7 +1040,7 @@
     PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroSkin % heroID, updState)
     Sync_HeroInfo(curPlayer, [heroID])
     
-    RefreshLordAttr(curPlayer)
+    #RefreshLordAttr(curPlayer)
     return
 
 #// B2 37 武将图鉴激活升级 #tagCSHeroBookUP
@@ -1058,9 +1058,9 @@
     bookType = clientData.BookType
     
     if bookType == 1:
-        __doHeroBookStarLVUP(curPlayer, heroID)
+        pass #__doHeroBookStarLVUP(curPlayer, heroID)
     elif bookType == 2:
-        __doHeroBookBreakLVUP(curPlayer, heroID)
+        pass #__doHeroBookBreakLVUP(curPlayer, heroID)
     else:
         __doHeroBookAct(curPlayer, heroID)
     return
@@ -1106,48 +1106,48 @@
                     
     Sync_HeroInfo(curPlayer, [heroID])
     
-    RefreshLordAttr(curPlayer)
+    #RefreshLordAttr(curPlayer) 图鉴属性去除了
     
     bookCnt = GetHeroBookActCnt(curPlayer)
     PlayerTask.UpdTaskValue(curPlayer, ChConfig.TaskType_HeroBook)
     PlayerSuccess.UptateSuccessProgress(curPlayer, ShareDefine.SuccType_OSAHeroBook, bookCnt)
     return
 
-def __doHeroBookStarLVUP(curPlayer, heroID):
-    ## 图鉴星级升级
-    playerID = curPlayer.GetPlayerID()
-    if not GetHeroBookInitState(curPlayer, heroID):
-        GameWorld.DebugLog("该武将图鉴未激活! heroID=%s" % heroID, playerID)
-        return
-    bookStar = GetHeroBookStarLV(curPlayer, heroID)
-    bookStarH = GetHeroBookStarLVH(curPlayer, heroID)
-    if bookStar >= bookStarH:
-        GameWorld.DebugLog("该武将图鉴星级已达当前英雄最高星级! heroID=%s,bookStar=%s >= %s" % (heroID, bookStar, bookStarH), playerID)
-        return
-    GameWorld.DebugLog("武将图鉴星级升级! heroID=%s,bookStar=%s,bookStarH=%s" % (heroID, bookStar, bookStarH), playerID)
-    SetHeroBookStarLV(curPlayer, heroID, bookStar + 1)
-    Sync_HeroInfo(curPlayer, [heroID])
-    
-    RefreshLordAttr(curPlayer)
-    return
+#def __doHeroBookStarLVUP(curPlayer, heroID):
+#    ## 图鉴星级升级,废弃
+#    playerID = curPlayer.GetPlayerID()
+#    if not GetHeroBookInitState(curPlayer, heroID):
+#        GameWorld.DebugLog("该武将图鉴未激活! heroID=%s" % heroID, playerID)
+#        return
+#    bookStar = GetHeroBookStarLV(curPlayer, heroID)
+#    bookStarH = GetHeroBookStarLVH(curPlayer, heroID)
+#    if bookStar >= bookStarH:
+#        GameWorld.DebugLog("该武将图鉴星级已达当前英雄最高星级! heroID=%s,bookStar=%s >= %s" % (heroID, bookStar, bookStarH), playerID)
+#        return
+#    GameWorld.DebugLog("武将图鉴星级升级! heroID=%s,bookStar=%s,bookStarH=%s" % (heroID, bookStar, bookStarH), playerID)
+#    SetHeroBookStarLV(curPlayer, heroID, bookStar + 1)
+#    Sync_HeroInfo(curPlayer, [heroID])
+#    
+#    RefreshLordAttr(curPlayer)
+#    return
 
-def __doHeroBookBreakLVUP(curPlayer, heroID):
-    ## 图鉴突破升级
-    playerID = curPlayer.GetPlayerID()
-    if not GetHeroBookInitState(curPlayer, heroID):
-        GameWorld.DebugLog("该武将图鉴未激活! heroID=%s" % heroID, playerID)
-        return
-    bookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
-    bookBreakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
-    if bookBreakLV >= bookBreakLVH:
-        GameWorld.DebugLog("该武将图鉴突破等级已达当前英雄最高突破等级! heroID=%s,bookBreakLV=%s >= %s" % (heroID, bookBreakLV, bookBreakLVH), playerID)
-        return
-    GameWorld.DebugLog("武将图鉴突破升级! heroID=%s,bookBreakLV=%s,bookBreakLVH=%s" % (heroID, bookBreakLV, bookBreakLVH), playerID)
-    SetHeroBookBreakLV(curPlayer, heroID, bookBreakLV + 1)
-    Sync_HeroInfo(curPlayer, [heroID])
-    
-    RefreshLordAttr(curPlayer)
-    return
+#def __doHeroBookBreakLVUP(curPlayer, heroID):
+#    ## 图鉴突破升级,废弃
+#    playerID = curPlayer.GetPlayerID()
+#    if not GetHeroBookInitState(curPlayer, heroID):
+#        GameWorld.DebugLog("该武将图鉴未激活! heroID=%s" % heroID, playerID)
+#        return
+#    bookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
+#    bookBreakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
+#    if bookBreakLV >= bookBreakLVH:
+#        GameWorld.DebugLog("该武将图鉴突破等级已达当前英雄最高突破等级! heroID=%s,bookBreakLV=%s >= %s" % (heroID, bookBreakLV, bookBreakLVH), playerID)
+#        return
+#    GameWorld.DebugLog("武将图鉴突破升级! heroID=%s,bookBreakLV=%s,bookBreakLVH=%s" % (heroID, bookBreakLV, bookBreakLVH), playerID)
+#    SetHeroBookBreakLV(curPlayer, heroID, bookBreakLV + 1)
+#    Sync_HeroInfo(curPlayer, [heroID])
+#    
+#    RefreshLordAttr(curPlayer)
+#    return
 
 #// B2 38 武将锁定 #tagCSHeroLock
 #
@@ -1235,7 +1235,7 @@
         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_HeroAwakeRebirthCnt, rebirthCnt + 1)
         Sync_PlayerHeroInfo(curPlayer)
         
-    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate([itemIndex])
+    PlayerOnline.GetOnlinePlayer(curPlayer).OnHeroItemUpate(heroItem) # 重生
     return
 
 def __calcHeroLVReturnitem(quality, heroLV, returnItemDict, ratio):
@@ -1487,7 +1487,7 @@
     if not awardMoneyInfo or len(awardMoneyInfo) != 2:
         return
     moneyType, moneyValue = awardMoneyInfo
-    if GetHeroActivite(curPlayer, heroID) != 1:
+    if not GetHeroActivite(curPlayer, heroID):
         GameWorld.DebugLog("武将未获得过,不可激活阵容推荐! heroID=%s" % (heroID))
         return
     awardState |= pow(2, index)
@@ -1497,43 +1497,43 @@
     Sync_LineupRecommendInfo(curPlayer, [recommendID])
     return
 
-def RefreshLordAttr(curPlayer):
-    ## 刷新主公属性
-    CalcHeroAddAttr(curPlayer)
-    PlayerOnline.GetOnlinePlayer(curPlayer).RefreshRoleAttr()
-    return
+#def RefreshLordAttr(curPlayer):
+#    ## 刷新主公属性
+#    CalcHeroAddAttr(curPlayer)
+#    PlayerOnline.GetOnlinePlayer(curPlayer).RefreshRoleAttr()
+#    return
 
-def CalcHeroAddAttr(curPlayer):
-    ## 计算武将对主公增加的属性
-    
-    heroBookAttrDict = {}
-    playerID = curPlayer.GetID()
-    
-    ipyDataMgr = IpyGameDataPY.IPY_Data()
-    for index in range(ipyDataMgr.GetHeroCount()):
-        ipyData = ipyDataMgr.GetHeroByIndex(index)
-        heroID = ipyData.GetHeroID()
-        if not ipyData.GetPlayerCanUse():
-            continue
-        if not GetHeroBookInitState(curPlayer, heroID):
-            # 图鉴未激活
-            continue
-        quality = ipyData.GetQuality()
-        qualityIpyData = IpyGameDataPY.GetIpyGameData("HeroQuality", quality)
-        if not qualityIpyData:
-            continue
-        bookInitAddPer = qualityIpyData.GetBookInitAddPer()
-        bookStarAddPer = qualityIpyData.GetBookStarAddPer()
-        bookBreakLVAddPer = qualityIpyData.GetBookBreakLVAddPer()
-        bookStar = GetHeroBookStarLV(curPlayer, heroID)
-        bookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
-        for attrPerID in ChConfig.BaseAttrPerIDList:
-            addPer = bookInitAddPer + bookStar * bookStarAddPer + bookBreakLV * bookBreakLVAddPer
-            heroBookAttrDict[attrPerID] = heroBookAttrDict.get(attrPerID, 0) + addPer
-            
-    GameWorld.DebugLog("武将图鉴属性: %s" % heroBookAttrDict, playerID)
-    PlayerOnline.GetOnlinePlayer(curPlayer).SetCalcAttr(ChConfig.Def_CalcAttr_HeroBook, heroBookAttrDict)
-    return
+#def CalcHeroAddAttr(curPlayer):
+#    ## 计算武将对主公增加的属性
+#    
+#    heroBookAttrDict = {}
+#    playerID = curPlayer.GetID()
+#    
+#    ipyDataMgr = IpyGameDataPY.IPY_Data()
+#    for index in range(ipyDataMgr.GetHeroCount()):
+#        ipyData = ipyDataMgr.GetHeroByIndex(index)
+#        heroID = ipyData.GetHeroID()
+#        if not ipyData.GetPlayerCanUse():
+#            continue
+#        if not GetHeroBookInitState(curPlayer, heroID):
+#            # 图鉴未激活
+#            continue
+#        quality = ipyData.GetQuality()
+#        qualityIpyData = IpyGameDataPY.GetIpyGameData("HeroQuality", quality)
+#        if not qualityIpyData:
+#            continue
+#        #bookInitAddPer = qualityIpyData.GetBookInitAddPer()
+#        #bookStarAddPer = qualityIpyData.GetBookStarAddPer()
+#        #bookBreakLVAddPer = qualityIpyData.GetBookBreakLVAddPer()
+#        bookStar = GetHeroBookStarLV(curPlayer, heroID)
+#        bookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
+#        for attrPerID in ChConfig.BaseAttrPerIDList:
+#            addPer = bookInitAddPer + bookStar * bookStarAddPer + bookBreakLV * bookBreakLVAddPer
+#            heroBookAttrDict[attrPerID] = heroBookAttrDict.get(attrPerID, 0) + addPer
+#            
+#    GameWorld.DebugLog("武将图鉴属性: %s" % heroBookAttrDict, playerID)
+#    PlayerOnline.GetOnlinePlayer(curPlayer).SetCalcAttr(ChConfig.Def_CalcAttr_HeroBook, heroBookAttrDict)
+#    return
 
 def Sync_HeroInfo(curPlayer, heroIDList=None):
     if heroIDList != None:
@@ -1563,10 +1563,10 @@
         hero.HeroID = heroID
         hero.SkinState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroSkin % heroID)
         hero.BookInitState = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_HeroBook % heroID) % 10
-        hero.BookStarLV = GetHeroBookStarLV(curPlayer, heroID)
-        hero.BookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
-        hero.BookStarLVH = GetHeroBookStarLVH(curPlayer, heroID)
-        hero.BookBreakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
+        #hero.BookStarLV = GetHeroBookStarLV(curPlayer, heroID)
+        #hero.BookBreakLV = GetHeroBookBreakLV(curPlayer, heroID)
+        #hero.BookStarLVH = GetHeroBookStarLVH(curPlayer, heroID)
+        #hero.BookBreakLVH = GetHeroBookBreakLVH(curPlayer, heroID)
         syncInfoList.append(hero)
         
     if not syncInfoList:

--
Gitblit v1.8.0