From 2caa86ba7ac292698924f1fef1461133dcb3de0f Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 29 十月 2019 18:53:14 +0800 Subject: [PATCH] 8319 【恺英】邮件购买物品默认放入背包(一口价才放入背包,背包满发邮件) --- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py | 18 ++++++++++++------ 1 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/AuctionHouse.py index f668b8b..dc1dabf 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) -- Gitblit v1.8.0