From 47eb171907516123892ea3f5d1888c6394c72382 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 30 十月 2025 16:50:20 +0800
Subject: [PATCH] 16 卡牌服务端(宝箱开启、物品合成通知;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_Chests.py            |   27 ++---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py                  |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py             |   10 +-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py                     |   92 ------------------
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py                       |   68 ------------
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py                         |   17 ---
 PySysDB/PySysDBPY.h                                                                                        |   27 -----
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py |    1 
 8 files changed, 23 insertions(+), 221 deletions(-)

diff --git a/PySysDB/PySysDBPY.h b/PySysDB/PySysDBPY.h
index f419b6e..dc81b01 100644
--- a/PySysDB/PySysDBPY.h
+++ b/PySysDB/PySysDBPY.h
@@ -1363,13 +1363,6 @@
     WORD        OldPrice;    //礼包原价
 };
 
-//拍卖物品表
-
-struct tagAuctionItem
-{
-	DWORD		_AuctionItemID;
-};
-
 //VIP特权表
 
 struct tagVipPrivilege
@@ -1541,19 +1534,6 @@
 	BYTE		CanBreakCollect;	//被攻击是否打断采集
 };
 
-//宝箱怪表
-
-struct tagTreasureNPC
-{
-	DWORD		_NPCID;	//宝箱怪NPCID
-	dict		AttackCountDropWeightInfo;	//攻击次数对应掉落权重饼图 {次数:[[权重, [物品ID,个数,是否拍品]], ...], ...}
-	list		AttackDropWeightList;	//常规攻击权重饼图 [[权重, [物品ID,个数,是否拍品]], ...]
-	list		AttackDropWeightListEx;	//额外掉落权重饼图库,每次攻击都会掉落  [[权重, [物品ID,个数,是否拍品]], ...]
-	BYTE		DropCountEx;	//额外库执行次数
-	BYTE		AlchemyDiffLV;	//过滤炼丹等级差,0-不过滤,>0过滤大于自身炼丹等级X级的物品
-	char		NotDropNotify;	//没有掉落时提示信息
-};
-
 //宝箱表开启
 
 struct Chests
@@ -1561,11 +1541,8 @@
 	DWORD		_ChestsItemID;	//宝箱物品ID
 	DWORD		CostItemID;		//消耗物品ID
 	BYTE		CostItemCount;	//消耗物品个数
-	WORD		CostGold;		//消耗仙玉
-	BYTE		ShowType;		//前端表现类型0-无表现, >0有表现需同步结果,具体类型前端自定义
-	BYTE		IsBind;			//开出物品是否绑定
-	BYTE		AucionItemCanSell;	//开出拍品可否上架集市
-	list		AucionItemDiffSellIDList;	//可否上架差异拍品ID列表,即可上架代表不可上架的拍品ID列表,不可上架代表可上架的拍品ID列表
+	BYTE		CostMoneyType;	//开启消耗货币类型
+	WORD		CostMoneyValue;	//消耗货币
 };
 
 //宝箱表产出表
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index af57e4b..c0f9f16 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -15353,98 +15353,6 @@
 
 
 #------------------------------------------------------
-# A8 10 通知获得物品 #tagMCNotifyUseItemGetItem
-
-class  tagMCNotifyUseItemGetItem(Structure):
-    Head = tagHead()
-    UseItemID = 0    #(DWORD UseItemID)// 使用的物品ID
-    UseCount = 0    #(WORD UseCount)// 使用物品个数
-    GetItemLen = 0    #(WORD GetItemLen)
-    GetItemData = ""    #(String GetItemData)//  获得物品信息 [[itemID,itemCount,isBind], [或itemID,itemCount,isBind,isAppoint], {或物品信息字典}, ...] 
-    MoneyType = 0    #(BYTE MoneyType)// 获得货币类型
-    MoneyCount = 0    #(DWORD MoneyCount)// 获得货币数量
-    data = None
-
-    def __init__(self):
-        self.Clear()
-        self.Head.Cmd = 0xA8
-        self.Head.SubCmd = 0x10
-        return
-
-    def ReadData(self, _lpData, _pos=0, _Len=0):
-        self.Clear()
-        _pos = self.Head.ReadData(_lpData, _pos)
-        self.UseItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
-        self.UseCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
-        self.GetItemLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
-        self.GetItemData,_pos = CommFunc.ReadString(_lpData, _pos,self.GetItemLen)
-        self.MoneyType,_pos = CommFunc.ReadBYTE(_lpData, _pos)
-        self.MoneyCount,_pos = CommFunc.ReadDWORD(_lpData, _pos)
-        return _pos
-
-    def Clear(self):
-        self.Head = tagHead()
-        self.Head.Clear()
-        self.Head.Cmd = 0xA8
-        self.Head.SubCmd = 0x10
-        self.UseItemID = 0
-        self.UseCount = 0
-        self.GetItemLen = 0
-        self.GetItemData = ""
-        self.MoneyType = 0
-        self.MoneyCount = 0
-        return
-
-    def GetLength(self):
-        length = 0
-        length += self.Head.GetLength()
-        length += 4
-        length += 2
-        length += 2
-        length += len(self.GetItemData)
-        length += 1
-        length += 4
-
-        return length
-
-    def GetBuffer(self):
-        data = ''
-        data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
-        data = CommFunc.WriteDWORD(data, self.UseItemID)
-        data = CommFunc.WriteWORD(data, self.UseCount)
-        data = CommFunc.WriteWORD(data, self.GetItemLen)
-        data = CommFunc.WriteString(data, self.GetItemLen, self.GetItemData)
-        data = CommFunc.WriteBYTE(data, self.MoneyType)
-        data = CommFunc.WriteDWORD(data, self.MoneyCount)
-        return data
-
-    def OutputString(self):
-        DumpString = '''
-                                Head:%s,
-                                UseItemID:%d,
-                                UseCount:%d,
-                                GetItemLen:%d,
-                                GetItemData:%s,
-                                MoneyType:%d,
-                                MoneyCount:%d
-                                '''\
-                                %(
-                                self.Head.OutputString(),
-                                self.UseItemID,
-                                self.UseCount,
-                                self.GetItemLen,
-                                self.GetItemData,
-                                self.MoneyType,
-                                self.MoneyCount
-                                )
-        return DumpString
-
-
-m_NAtagMCNotifyUseItemGetItem=tagMCNotifyUseItemGetItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagMCNotifyUseItemGetItem.Head.Cmd,m_NAtagMCNotifyUseItemGetItem.Head.SubCmd))] = m_NAtagMCNotifyUseItemGetItem
-
-
-#------------------------------------------------------
 # A8 17 宠物培养信息 #tagMCPetTrainInfo
 
 class  tagMCPetTrainInfo(Structure):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
index 54125ab..27fb851 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
@@ -476,6 +476,7 @@
         curSingleItem.Clear()
         return
     
+    ItemControler.NotifyGiveAwardInfo(curPlayer, {newItemID:itemCount}, "Compound")
     return userData
 
 #// A3 13 物品拆解 #tagCMItemDecompound
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
index 57227ca..e36e757 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/IpyGameDataPY.py
@@ -1116,10 +1116,6 @@
                         ("WORD", "OldPrice", 0),
                         ),
 
-                "AuctionItem":(
-                        ("DWORD", "AuctionItemID", 1),
-                        ),
-
                 "VipPrivilege":(
                         ("DWORD", "VIPPriID", 1),
                         ("DWORD", "VIP0", 0),
@@ -1255,25 +1251,12 @@
                         ("BYTE", "CanBreakCollect", 0),
                         ),
 
-                "TreasureNPC":(
-                        ("DWORD", "NPCID", 1),
-                        ("dict", "AttackCountDropWeightInfo", 0),
-                        ("list", "AttackDropWeightList", 0),
-                        ("list", "AttackDropWeightListEx", 0),
-                        ("BYTE", "DropCountEx", 0),
-                        ("BYTE", "AlchemyDiffLV", 0),
-                        ("char", "NotDropNotify", 0),
-                        ),
-
                 "Chests":(
                         ("DWORD", "ChestsItemID", 1),
                         ("DWORD", "CostItemID", 0),
                         ("BYTE", "CostItemCount", 0),
-                        ("WORD", "CostGold", 0),
-                        ("BYTE", "ShowType", 0),
-                        ("BYTE", "IsBind", 0),
-                        ("BYTE", "AucionItemCanSell", 0),
-                        ("list", "AucionItemDiffSellIDList", 0),
+                        ("BYTE", "CostMoneyType", 0),
+                        ("WORD", "CostMoneyValue", 0),
                         ),
 
                 "ChestsAward":(
@@ -3985,15 +3968,6 @@
     def GetPrice(self): return self.attrTuple[2] # 礼包现价 WORD
     def GetOldPrice(self): return self.attrTuple[3] # 礼包原价 WORD
 
-# 拍卖物品表
-class IPY_AuctionItem():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetAuctionItemID(self): return self.attrTuple[0] # DWORD
-
 # VIP特权表
 class IPY_VipPrivilege():
     
@@ -4189,21 +4163,6 @@
     def GetNotifyCollectResult(self): return self.attrTuple[10] # 是否通知采集结果 BYTE
     def GetCanBreakCollect(self): return self.attrTuple[11] # 被攻击是否打断采集 BYTE
 
-# 宝箱怪表
-class IPY_TreasureNPC():
-    
-    def __init__(self):
-        self.attrTuple = None
-        return
-        
-    def GetNPCID(self): return self.attrTuple[0] # 宝箱怪NPCID DWORD
-    def GetAttackCountDropWeightInfo(self): return self.attrTuple[1] # 攻击次数对应掉落权重饼图 {次数:[[权重, [物品ID,个数,是否拍品]], ...], ...} dict
-    def GetAttackDropWeightList(self): return self.attrTuple[2] # 常规攻击权重饼图 [[权重, [物品ID,个数,是否拍品]], ...] list
-    def GetAttackDropWeightListEx(self): return self.attrTuple[3] # 额外掉落权重饼图库,每次攻击都会掉落  [[权重, [物品ID,个数,是否拍品]], ...] list
-    def GetDropCountEx(self): return self.attrTuple[4] # 额外库执行次数 BYTE
-    def GetAlchemyDiffLV(self): return self.attrTuple[5] # 过滤炼丹等级差,0-不过滤,>0过滤大于自身炼丹等级X级的物品 BYTE
-    def GetNotDropNotify(self): return self.attrTuple[6] # 没有掉落时提示信息 char
-
 # 宝箱表开启
 class IPY_Chests():
     
@@ -4214,11 +4173,8 @@
     def GetChestsItemID(self): return self.attrTuple[0] # 宝箱物品ID DWORD
     def GetCostItemID(self): return self.attrTuple[1] # 消耗物品ID DWORD
     def GetCostItemCount(self): return self.attrTuple[2] # 消耗物品个数 BYTE
-    def GetCostGold(self): return self.attrTuple[3] # 消耗仙玉 WORD
-    def GetShowType(self): return self.attrTuple[4] # 前端表现类型0-无表现, >0有表现需同步结果,具体类型前端自定义 BYTE
-    def GetIsBind(self): return self.attrTuple[5] # 开出物品是否绑定 BYTE
-    def GetAucionItemCanSell(self): return self.attrTuple[6] # 开出拍品可否上架集市 BYTE
-    def GetAucionItemDiffSellIDList(self): return self.attrTuple[7] # 可否上架差异拍品ID列表,即可上架代表不可上架的拍品ID列表,不可上架代表可上架的拍品ID列表 list
+    def GetCostMoneyType(self): return self.attrTuple[3] # 开启消耗货币类型 BYTE
+    def GetCostMoneyValue(self): return self.attrTuple[4] # 消耗货币 WORD
 
 # 宝箱表产出表
 class IPY_ChestsAward():
@@ -6154,7 +6110,6 @@
         self.__LoadFileData("TreasureUp", onlyCheck)
         self.__LoadFileData("SignIn", onlyCheck)
         self.__LoadFileData("VIPAward", onlyCheck)
-        self.__LoadFileData("AuctionItem", onlyCheck)
         self.__LoadFileData("VipPrivilege", onlyCheck)
         self.__LoadFileData("Store", onlyCheck)
         self.__LoadFileData("ActSpringSale", onlyCheck)
@@ -6167,7 +6122,6 @@
         self.__LoadFileData("RuneCompound", onlyCheck)
         self.__LoadFileData("ResourcesBack", onlyCheck)
         self.__LoadFileData("CollectNPC", onlyCheck)
-        self.__LoadFileData("TreasureNPC", onlyCheck)
         self.__LoadFileData("Chests", onlyCheck)
         self.__LoadFileData("ChestsAward", onlyCheck)
         self.__LoadFileData("VIPKillNPC", onlyCheck)
@@ -7202,13 +7156,6 @@
         self.CheckLoadData("VIPAward")
         return self.ipyVIPAwardCache[index]
 
-    def GetAuctionItemCount(self):
-        self.CheckLoadData("AuctionItem")
-        return self.ipyAuctionItemLen
-    def GetAuctionItemByIndex(self, index):
-        self.CheckLoadData("AuctionItem")
-        return self.ipyAuctionItemCache[index]
-
     def GetVipPrivilegeCount(self):
         self.CheckLoadData("VipPrivilege")
         return self.ipyVipPrivilegeLen
@@ -7292,13 +7239,6 @@
     def GetCollectNPCByIndex(self, index):
         self.CheckLoadData("CollectNPC")
         return self.ipyCollectNPCCache[index]
-
-    def GetTreasureNPCCount(self):
-        self.CheckLoadData("TreasureNPC")
-        return self.ipyTreasureNPCLen
-    def GetTreasureNPCByIndex(self, index):
-        self.CheckLoadData("TreasureNPC")
-        return self.ipyTreasureNPCCache[index]
 
     def GetChestsCount(self):
         self.CheckLoadData("Chests")
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
index e22230c..73f307f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
@@ -1380,23 +1380,6 @@
 
     return
 
-def SendUseItemGetItemResult(curPlayer, useItemID, useCount, getItemInfo, moneyType=0, moneyCount=0):
-    # 通知客户端使用物品结果包
-    # @param getItemInfo: [{"ItemID":物品ID, "Count":个数, "IsBind":是否绑定, "IsSuite":是否套装化, "UserData":"自定义属性字符串"}, ...]
-    
-    getItemInfo = json.dumps(getItemInfo, ensure_ascii=False)
-    getItemInfo = getItemInfo.replace(" ", "")
-    getItemPack = ChPyNetSendPack.tagMCNotifyUseItemGetItem()
-    getItemPack.Clear()
-    getItemPack.UseItemID = useItemID
-    getItemPack.UseCount = useCount
-    getItemPack.GetItemData = str(getItemInfo)
-    getItemPack.GetItemLen = len(getItemPack.GetItemData)
-    getItemPack.MoneyType = moneyType
-    getItemPack.MoneyCount = moneyCount
-    NetPackCommon.SendFakePack(curPlayer, getItemPack)
-    return
-
 #---------------------------------------------------------------------
 
 ## 准备结束
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
index 452ef4b..3ea23fe 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -2010,7 +2010,7 @@
         return False
     
     if isAuctionItem:
-        ipyData = IpyGameDataPY.GetIpyGameData("AuctionItem", itemID)
+        ipyData = None #IpyGameDataPY.GetIpyGameData("AuctionItem", itemID)
         if not ipyData:
             GameWorld.ErrLog("非拍卖物品,默认转为非拍品! itemID=%s,itemCount=%s,isAuctionItem=%s" 
                              % (itemID, itemCount, isAuctionItem), curPlayer.GetPlayerID())
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
index f4d4cca..08d8ed8 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -347,11 +347,11 @@
             return
         curSingleItem.SetRemainHour(outTimeServerDay)
         
-    if isAuctionItem:
-        if IpyGameDataPY.GetIpyGameDataNotLog("AuctionItem", itemID):
-            ItemControler.SetIsAuctionItem(curSingleItem, isAuctionItem)
-        else:
-            GameWorld.DebugLog("拍卖物品表不存在该ID!创建拍品失败,默认转为非拍品!itemID=%s" % itemID)
+    #if isAuctionItem:
+    #    if IpyGameDataPY.GetIpyGameDataNotLog("AuctionItem", itemID):
+    #        ItemControler.SetIsAuctionItem(curSingleItem, isAuctionItem)
+    #    else:
+    #        GameWorld.DebugLog("拍卖物品表不存在该ID!创建拍品失败,默认转为非拍品!itemID=%s" % itemID)
             
     ItemControler.SetItemCount(curSingleItem, itemCount)
     
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_Chests.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_Chests.py
index 1899293..ab9923a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_Chests.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/Item_Chests.py
@@ -40,19 +40,17 @@
     if not chestsIpyData:
         return
     
-    showType = chestsIpyData.GetShowType() # 规定有开箱表现的默认只能开启1个
     #if showType:
     #    useCnt = 1
     useCnt = min(curRoleItem.GetCount(), useCnt)
     
-    isBind = int(chestsIpyData.GetIsBind()) # 奖励物品是否绑定
+    isBind = 0 # 奖励物品是否绑定
     costItemID = chestsIpyData.GetCostItemID()
     costItemCountTotal = chestsIpyData.GetCostItemCount() * useCnt
-    costGoldTotal = chestsIpyData.GetCostGold() * useCnt
-    auctionItemCanSell = chestsIpyData.GetAucionItemCanSell()
-    aucionItemDiffSellIDList = chestsIpyData.GetAucionItemDiffSellIDList()
+    costMoneyType = chestsIpyData.GetCostMoneyType()
+    costGoldTotal = chestsIpyData.GetCostMoneyValue() * useCnt
     
-    if costGoldTotal and not PlayerControl.HaveMoney(curPlayer, IPY_GameWorld.TYPE_Price_Gold_Money, costGoldTotal):
+    if costGoldTotal and costMoneyType and not PlayerControl.HaveMoney(curPlayer, costMoneyType, costGoldTotal):
         return
     
     if costItemID:
@@ -69,8 +67,8 @@
     if not awardInfo:
         return
     needSpaceDict, jobAwardItemList, moneyType, moneyCount, notifyItemList, updOpenCount = awardInfo
-    GameWorld.DebugLog("    needSpaceDict=%s,jobAwardItemList=%s,moneyType=%s,moneyCount=%s,notifyItemList=%s,updOpenCount=%s,auctionItemCanSell=%s,aucionItemDiffSellIDList=%s" 
-                       % (needSpaceDict, jobAwardItemList, moneyType, moneyCount, notifyItemList, updOpenCount, auctionItemCanSell, aucionItemDiffSellIDList))
+    GameWorld.DebugLog("    needSpaceDict=%s,jobAwardItemList=%s,moneyType=%s,moneyCount=%s,notifyItemList=%s,updOpenCount=%s" 
+                       % (needSpaceDict, jobAwardItemList, moneyType, moneyCount, notifyItemList, updOpenCount))
     
     for packType, needSpace in needSpaceDict.items():
         packSpace = ItemCommon.GetItemPackSpace(curPlayer, packType, needSpace)
@@ -82,9 +80,9 @@
     # 扣除消耗
     if costItemID:
         ItemCommon.DelCostItemByBind(curPlayer, costItemIndexList, bindCnt, unBindCnt, costItemCountTotal, "Chests")
-    if costGoldTotal:
+    if costMoneyType and costGoldTotal:
         infoDict = {ChConfig.Def_Cost_Reason_SonKey:chestsItemID}
-        PlayerControl.PayMoney(curPlayer, IPY_GameWorld.TYPE_Price_Gold_Money, costGoldTotal, ChConfig.Def_Cost_UseItem, infoDict)
+        PlayerControl.PayMoney(curPlayer, costMoneyType, costGoldTotal, ChConfig.Def_Cost_UseItem, infoDict)
         
     # 更新开启次数
     if updOpenCount:
@@ -97,11 +95,8 @@
     # 给奖励
     syncItemList = []
     for itemID, itemCount in jobAwardItemList:
-        canSell = (not auctionItemCanSell) if itemID in aucionItemDiffSellIDList else auctionItemCanSell
-        isAuctionItem = 1 if canSell and IpyGameDataPY.GetIpyGameDataNotLog("AuctionItem", itemID) else 0
-        
         userDataList = []
-        giveOKCount = ItemControler.DoGiveItemLoop(curPlayer, itemID, itemCount, isAuctionItem, 
+        giveOKCount = ItemControler.DoGiveItemLoop(curPlayer, itemID, itemCount, isBind, 
                                                    event=[ChConfig.ItemGive_Chests, False, {"UseItemID":chestsItemID}], 
                                                    jsonItemList=syncItemList, userDataList=userDataList)
         if giveOKCount < itemCount:
@@ -119,9 +114,7 @@
         if not PlayerControl.GiveMoney(curPlayer, moneyType, moneyCount, ChConfig.Def_GiveMoney_UseItem, addDataDict, False):
             moneyType, moneyCount = 0, 0
             
-    # 通知
-    if showType and syncItemList:
-        ChItem.SendUseItemGetItemResult(curPlayer, chestsItemID, useCnt, syncItemList, moneyType, moneyCount)
+    ItemControler.NotifyGiveAwardInfo(curPlayer, jobAwardItemList, "Chests", moneyInfo={moneyType, moneyCount})
     return True, useCnt
 
 

--
Gitblit v1.8.0