| | |
| | | GameWorld.DebugAnswer(curPlayer, "MakeItemCount ID (个数 拍品分组 全部传奇属性)")
|
| | | return
|
| | |
|
| | | event = [ChConfig.ItemGive_GMMake, False, {"CMD":"MakeItemCount"}]
|
| | | itemID = msgList[0]
|
| | | itemCount = msgList[1] if len(msgList) > 1 else 1
|
| | | auctionGroup = msgList[2] if len(msgList) > 2 else 0
|
| | |
| | | if not itemData:
|
| | | GameWorld.DebugAnswer(curPlayer, '该物品不存在 = %s' % (itemID))
|
| | | return
|
| | | packCount = itemData.GetPackCount()
|
| | | if itemID in ChConfig.Def_TransformItemIDList:
|
| | | curItem = ItemControler.GetOutPutItemObj(itemID, itemCount, curPlayer=curPlayer)
|
| | | PlayerItemControler = ItemControler.PlayerItemControler(curPlayer)
|
| | | if not PlayerItemControler.PutInItem(IPY_GameWorld.rptItem, curItem, event=[ChConfig.ItemGive_GMMake, False, {"CMD":"MakeItemCount"}]):
|
| | | if not PlayerItemControler.PutInItem(IPY_GameWorld.rptItem, curItem, event=event):
|
| | | GameWorld.DebugAnswer(curPlayer, "放入物品失败!")
|
| | | return
|
| | |
|
| | |
| | | if not ipyData:
|
| | | GameWorld.DebugAnswer(curPlayer, "非可拍卖物品itemID=%s" % (itemID))
|
| | | return
|
| | | groupItemCount = itemCount / auctionGroup
|
| | | for i in xrange(auctionGroup):
|
| | | if i == auctionGroup - 1:
|
| | | groupItemCount += itemCount % auctionGroup
|
| | | __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, groupItemCount, isAuctionItem, isAllAttr) |
| | | if not ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, auctionGroup, [IPY_GameWorld.rptItem], event=event):
|
| | | GameWorld.DebugAnswer(curPlayer, "###放入物品失败!")
|
| | | else:
|
| | | isAuctionItem = False
|
| | | if packCount > 1:
|
| | | __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, itemCount, isAuctionItem, isAllAttr)
|
| | | if itemData.GetPackCount() > 1:
|
| | | __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, itemCount, isAuctionItem, isAllAttr, event)
|
| | | else:
|
| | | for _ in xrange(itemCount):
|
| | | __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, 1, isAuctionItem, isAllAttr)
|
| | | __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, 1, isAuctionItem, isAllAttr, event)
|
| | | return
|
| | |
|
| | | def __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, count, isAuctionItem, isAllAttr):
|
| | | def __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, count, isAuctionItem, isAllAttr, event):
|
| | | if ItemControler.GetAppointItemRealID(itemID):
|
| | | ItemControler.GivePlayerAppointItem(curPlayer, itemID, isAuctionItem, event=[ChConfig.ItemGive_GMMake, False, {"CMD":"MakeItemCount"}])
|
| | | ItemControler.GivePlayerAppointItem(curPlayer, itemID, isAuctionItem, event=event)
|
| | | return
|
| | | curItem = ItemControler.GetOutPutItemObj(itemID, count, isAuctionItem, curPlayer=curPlayer, isAllAttr=isAllAttr)
|
| | | if not playerItemControler.PutInItem(IPY_GameWorld.rptItem, curItem, event=[ChConfig.ItemGive_GMMake, False, {"CMD":"MakeItemCount"}]):
|
| | | if not playerItemControler.PutInItem(IPY_GameWorld.rptItem, curItem, event=event):
|
| | | GameWorld.DebugAnswer(curPlayer, "放入物品失败!")
|
| | |
|
| | | return
|