From 3ac863ebc8f55dd0838b4ee2f9d0c39234af25eb Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 09 二月 2026 10:46:00 +0800
Subject: [PATCH] 358 【内政】红颜系统-服务端(修改游历体力为DWORD;红颜时装升级改为使用背包物品;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py     |    8 ++++----
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py |   10 ++++++----
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index f140163..c03761b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -27597,7 +27597,7 @@
 
 class  tagSCTravelInfo(Structure):
     Head = tagHead()
-    Energy = 0    #(BYTE Energy)//剩余体力
+    Energy = 0    #(DWORD Energy)//剩余体力
     EnergyTime = 0    #(DWORD EnergyTime)//上次恢复体力时间戳
     TravelCnt = 0    #(DWORD TravelCnt)//累计游历次数
     SceneryType = 0    #(BYTE SceneryType)//景观类型
@@ -27618,7 +27618,7 @@
     def ReadData(self, _lpData, _pos=0, _Len=0):
         self.Clear()
         _pos = self.Head.ReadData(_lpData, _pos)
-        self.Energy,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+        self.Energy,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.EnergyTime,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.TravelCnt,_pos = CommFunc.ReadDWORD(_lpData, _pos)
         self.SceneryType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
@@ -27653,7 +27653,7 @@
     def GetLength(self):
         length = 0
         length += self.Head.GetLength()
-        length += 1
+        length += 4
         length += 4
         length += 4
         length += 1
@@ -27670,7 +27670,7 @@
     def GetBuffer(self):
         data = ''
         data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
-        data = CommFunc.WriteBYTE(data, self.Energy)
+        data = CommFunc.WriteDWORD(data, self.Energy)
         data = CommFunc.WriteDWORD(data, self.EnergyTime)
         data = CommFunc.WriteDWORD(data, self.TravelCnt)
         data = CommFunc.WriteBYTE(data, self.SceneryType)
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 ec54759..a280305 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerBeauty.py
@@ -470,11 +470,13 @@
     needItemCnt = ipyData.GetUpNeedCnt()
     if not needItemID or not needItemCnt:
         return
-    itemCount = ItemControler.GetItemCountByID(curPlayer, needItemID)
-    if itemCount < needItemCnt:
-        GameWorld.DebugLog("红颜时装升星物品不足! skinID=%s,needItemID=%s,itemCount=%s < %s" % (skinID, needItemID, itemCount, needItemCnt))
+    
+    costItemIndexList, bindCnt, unBindCnt = ItemCommon.GetPackItemBindStateIndexInfo(curPlayer, needItemID, needItemCnt)
+    lackCnt = needItemCnt - bindCnt - unBindCnt
+    if lackCnt > 0:
+        GameWorld.DebugLog("红颜时装升星物品不足! skinID=%s,needItemID=%s,needItemCnt=%s,lackCnt=%s" % (skinID, needItemID, needItemCnt, lackCnt))
         return
-    ItemControler.DelItemCountByID(curPlayer, needItemID, needItemCnt)
+    ItemCommon.DelCostItemByBind(curPlayer, costItemIndexList, bindCnt, unBindCnt, needItemCnt, "Beauty")
     
     nextStar = curStar + 1
     GameWorld.DebugLog("红颜时装升星! skinID=%s,nextStar=%s" % (skinID, nextStar), playerID)

--
Gitblit v1.8.0