| | |
| | | familyPlayerIDList = json.loads(auctionItem.FamilyPlayerIDInfo)
|
| | | taxRate = IpyGameDataPY.GetFuncCfg("AuctionTaxrate", 2) # 仙盟拍品税率百分比
|
| | | personMaxRate = IpyGameDataPY.GetFuncCfg("AuctionTaxrate", 3) # 仙盟拍品个人最大收益百分比
|
| | | giveTotalGold = int(math.ceil(bidderPrice * (100 - taxRate) / 100.0))
|
| | | taxGold = max(1, int(bidderPrice * taxRate / 100.0)) # 最少收税1
|
| | | giveTotalGold = max(0, bidderPrice - taxGold)
|
| | | giveMaxGold = int(math.ceil(giveTotalGold * personMaxRate / 100.0))
|
| | | memCount = len(familyPlayerIDList)
|
| | | giveGoldAverage = min(giveMaxGold, int(math.ceil(giveTotalGold * 1.0 / memCount))) # 有收益的人平分
|
| | |
| | |
|
| | | elif playerID:
|
| | | taxRate = IpyGameDataPY.GetFuncCfg("AuctionTaxrate", 1) # 全服拍品税率百分比
|
| | | givePlayerGold = int(math.ceil(bidderPrice * (100 - taxRate) / 100.0))
|
| | | taxGold = max(1, int(bidderPrice * taxRate / 100.0)) # 最少收税1
|
| | | givePlayerGold = max(0, bidderPrice - taxGold)
|
| | |
|
| | | # 个人拍卖收益邮件
|
| | | detail = {"ItemGUID":itemGUID, "ItemID":itemID, "Count":itemCount, "BidderPrice":bidderPrice}
|
| | |
| | | errInfo = "end bid"
|
| | | return itemID, errInfo
|
| | |
|
| | | nextPrice = ipyData.GetBasePrice() if not auctionItem.BidderPrice else (auctionItem.BidderPrice + ipyData.GetBiddingAdd())
|
| | | buyoutPrice = ipyData.GetBuyoutPrice() # 允许没有一口价的,代表可以一直竞价
|
| | | nextPrice = ipyData.GetBasePrice() * auctionItem.Count if not auctionItem.BidderPrice else (auctionItem.BidderPrice + ipyData.GetBiddingAdd() * auctionItem.Count)
|
| | | buyoutPrice = ipyData.GetBuyoutPrice() * auctionItem.Count # 允许没有一口价的,代表可以一直竞价
|
| | | nextPrice = nextPrice if not buyoutPrice else min(nextPrice, buyoutPrice) # 不超过一口价
|
| | | if not (biddingPrice == nextPrice or (buyoutPrice and biddingPrice == buyoutPrice)):
|
| | | # 竞价价格错误
|
| | |
| | |
|
| | | # 更新竞价信息
|
| | | auctionItem.BiddingQueryID = 0
|
| | | auctionItem.BiddingTick = 0
|
| | | auctionItem.BiddingQueryTick = 0
|
| | | auctionItem.BiddingTime = GameWorld.GetCurrentDataTimeStr()
|
| | | auctionItem.BidderID = playerID
|
| | | auctionItem.BidderName = curPlayer.GetName()
|