From 532ee8a00dac025085c781f6d62f7d12072ea6b0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 04 三月 2020 20:18:43 +0800
Subject: [PATCH] 8397 【开发】个人boss新增评级

---
 ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py |   22 ++++++++++++++--------
 1 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py
index f668b8b..bb7aa39 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py
@@ -870,7 +870,7 @@
         auctionItemMgr.sysBuyoutItemByTimeList.sort(key=operator.attrgetter("SysBuyTime"))
     return
 
-def __EndAuctionItem(endItemList, endEvent, funcAutoBuyout=False):
+def __EndAuctionItem(endItemList, endEvent, funcAutoBuyout=False, buyPlayer=None):
     ''' 结束拍品竞拍
     @param delItemStateDict: 删除的拍品竞拍状态
     '''
@@ -897,14 +897,20 @@
             
             # 竞拍成功邮件,发放物品
             if bidderID:
+                mailTypeKey = "PaimaiMail3"
+                paramList = [bidderPrice]
+                detail = {"ItemGUID":itemGUID}
+                addItemList = [{"ItemID":itemID, "Count":itemCount, "IsAuctionItem":False, "UserData":auctionItem.UserData}]
                 if funcAutoBuyout:
                     # 功能自动购买的不给物品,由功能根据功能需求处理
                     pass
+                ## 如果有玩家的,直接给到背包
+                elif buyPlayer and buyPlayer.GetPlayerID() == bidderID:
+                    mailInfo = [mailTypeKey, addItemList, paramList, detail]
+                    resultMsg = str([itemGUID, itemID, itemCount, auctionItem.UserData, mailInfo])
+                    buyPlayer.MapServer_QueryPlayerResult(0, 0, "AuctionHouseGiveItem", resultMsg, len(resultMsg))
                 else:
-                    paramList = [bidderPrice]
-                    detail = {"ItemGUID":itemGUID}
-                    addItemList = [{"ItemID":itemID, "Count":itemCount, "IsAuctionItem":False, "UserData":auctionItem.UserData}]
-                    PlayerCompensation.SendMailByKey("PaimaiMail3", [bidderID], addItemList, paramList, detail=detail)
+                    PlayerCompensation.SendMailByKey(mailTypeKey, [bidderID], addItemList, paramList, detail=detail)
                 AddAuctionRecord(auctionItem, AuctionRecordResult_BidOK)
             
             # 拍卖成功收益,都以玩家收益向上取整
@@ -1434,7 +1440,7 @@
         #GameWorld.DebugLog("拍品有人竞价了,移除系统一口价拍品列表!")
         
     if isBuyout:
-        __EndAuctionItem([auctionItem], "Buyout", funcAutoBuyout)
+        __EndAuctionItem([auctionItem], "Buyout", funcAutoBuyout, buyPlayer=curPlayer)
     else:
         if __AddAuctionItemEndTimeByBid(auctionItem):
             __SortAuctionitem(isSortWorldItem=False)
@@ -1448,7 +1454,7 @@
 
 def __DoEquipStarAutoBuyEquip(curPlayer, queryData, tick):
     ## 升星自动购买
-    classLV, equipPlace, curPartStar, equipPackIndex, isAutoBuyPreview, curRate, delEquipIndexList, delItemInfoList, lackItemCostMoney, playerGoldPaper = queryData
+    classLV, equipPlace, curPartStar, equipPackIndex, isAutoBuyPreview, curRate, delEquipGUIDDict, delItemInfoDict, lackItemCostMoney, playerGoldPaper = queryData
     GameWorld.DebugLog("升星自动购买装备: classLV=%s, equipPlace=%s, curPartStar=%s, equipPackIndex=%s" % (classLV, equipPlace, curPartStar, equipPackIndex))
     GameWorld.DebugLog("    是否预览 %s, curRate=%s,lackItemCostMoney=%s, playerGoldPaper=%s" % (isAutoBuyPreview, curRate, lackItemCostMoney, playerGoldPaper))
     nextStar = curPartStar + 1
@@ -1610,7 +1616,7 @@
         # 这里认为一定可以购买成功,不对返回值做处理,即使无法购买也认为购买成功,玩家的消耗照常扣除
         __DoPlayerBidAuctionItem(curPlayer, worldAuctionItem.ItemGUID, buyoutPrice, tick, False, funcAutoBuyout=True)
         
-    return classLV, equipPlace, curPartStar, equipPackIndex, curRate, delEquipIndexList, delItemInfoList, lackItemCostMoney, buyEquipCostMoney
+    return classLV, equipPlace, curPartStar, equipPackIndex, curRate, delEquipGUIDDict, delItemInfoDict, lackItemCostMoney, buyEquipCostMoney
 
 def __SyncEquipStarAutoBuyCostInfo(curPlayer, classLV, equipPlace, curPartStar, curRate, totalCostMoney):
     ## 通知自动购买预览结果

--
Gitblit v1.8.0