ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py
@@ -28,7 +28,6 @@
import PyGameData
import PlayerTask
import FBCommon
import ObjPool
# 红颜解锁方式
(
@@ -146,11 +145,13 @@
    if unlockWay == UnlockWay_Item:
        needItemID = unlockValue
        needItemCnt = unlockNeedCnt
        itemCount = ItemControler.GetItemCountByID(curPlayer, needItemID)
        if itemCount < needItemCnt:
            GameWorld.DebugLog("激活红颜物品不足! beautyID=%s,needItemID=%s,itemCount=%s < %s" % (beautyID, needItemID, itemCount, needItemCnt), playerID)
        costItemIndexList, bindCnt, unBindCnt = ItemCommon.GetPackItemBindStateIndexInfo(curPlayer, needItemID, needItemCnt)
        lackCnt = needItemCnt - bindCnt - unBindCnt
        if lackCnt > 0:
            GameWorld.DebugLog("激活红颜物品不足! beautyID=%s,needItemID=%s,needItemCnt=%s,lackCnt=%s" % (beautyID, needItemID, needItemCnt, lackCnt), playerID)
            return
        ItemControler.DelItemCountByID(curPlayer, needItemID, needItemCnt)
        ItemCommon.DelCostItemByBind(curPlayer, costItemIndexList, bindCnt, unBindCnt, needItemCnt, "Beauty")
        
    elif unlockWay == UnlockWay_TaskID:
        taskID = unlockValue
@@ -212,6 +213,18 @@
    RefreshBeautyAttr(curPlayer)
    SyncBeautyInfo(curPlayer, [beautyID])
    return
def GetBeautyActCnt(curPlayer):
    ## 红颜已激活总数
    actCnt = 0
    ipyDataMgr = IpyGameDataPY.IPY_Data()
    for index in range(ipyDataMgr.GetBeautyCount()):
        ipyData = ipyDataMgr.GetBeautyByIndex(index)
        beautyID = ipyData.GetBeautyID()
        if not GetBeautyState(curPlayer, beautyID):
            continue
        actCnt += 1
    return actCnt
#// B2 20 红颜好感度升级 #tagCSBeautyLVUP
#
@@ -300,7 +313,7 @@
    SyncBeautyInfo(curPlayer, [beautyID])
    
    # 有升级额外处理
    if updLV > updLV:
    if updLV > curLV:
        RefreshBeautyAttr(curPlayer)
        
    return
@@ -521,7 +534,9 @@
        effPerLVAdd = ipyData.GetEffPerLVAdd()
        if effType:
            effValue = effValue + effPerLVAdd * talentLV
            effTypeDict[effType] = [effValue, effTypeValue]
            if effType not in effTypeDict:
                effTypeDict[effType] = [0, effTypeValue]
            effTypeDict[effType][0] = effTypeDict[effType][0] + effValue
            #GameWorld.DebugLog("红颜特殊效果: beautyID=%s,effType=%s,talentLV=%s,%s" % (beautyID, effType, talentLV, effTypeDict), playerID)
            
        # ʱװ
@@ -573,7 +588,7 @@
        if not state and beautyIDList == None:
            continue
        lv, exp = GetBeautyLVInfo(curPlayer, beautyID)
        beauty = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCBeauty)
        beauty = ChPyNetSendPack.tagSCBeauty()
        beauty.BeautyID = beautyID
        beauty.State = state
        beauty.LV = lv
@@ -592,7 +607,7 @@
                else:
                    if not skinInfo:
                        continue
                beautySkin = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCBeautySkin)
                beautySkin = ChPyNetSendPack.tagSCBeautySkin()
                beautySkin.SkinID = skinID
                beautySkin.State = 1 if IsBeautySkinCanUse(curPlayer, beautyID, skinID, ipyData) else 0
                beautySkin.Used = GetBeautySkinUsed(curPlayer, skinID)
@@ -605,7 +620,7 @@
    if not beautyList:
        return
    
    clientPack = ObjPool.GetPoolMgr().acquire(ChPyNetSendPack.tagSCBeautyInfo)
    clientPack = ChPyNetSendPack.tagSCBeautyInfo()
    clientPack.BeautyList = beautyList
    clientPack.Count = len(clientPack.BeautyList)
    NetPackCommon.SendFakePack(curPlayer, clientPack)