From 4c8a4908e7e0ab1575e6e9a0093f54bd63d85b6f Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 二月 2026 21:07:17 +0800
Subject: [PATCH] 16 卡牌服务端(删除无用跨服管理模块、跨服功能、其他废弃代码;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py |   35 +++++++++++++++++++++++++----------
 1 files changed, 25 insertions(+), 10 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py
index d1b6242..4900629 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py
+++ b/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)

--
Gitblit v1.8.0