From 0d95c26257bf4ab291356b1adb6ad2064e6b2969 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期六, 13 四月 2019 10:51:05 +0800
Subject: [PATCH] 3278 【BUG】【2.0】宗门试炼,点击扫荡没反应
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py | 37 +++++++++++++++----------------------
1 files changed, 15 insertions(+), 22 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
index 2fe1b45..973cb4a 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/MakeItemCount.py
@@ -17,9 +17,9 @@
import IPY_GameWorld
import ItemControler
-import IpyGameDataPY
import GameWorld
import ChConfig
+import ItemCommon
#---------------------------------------------------------------------
#全局变量
@@ -38,9 +38,10 @@
#输入命令格式错误
if len(msgList) < 1:
- GameWorld.DebugAnswer(curPlayer, "MakeItemCount ID (个数 拍品分组 全部传奇属性)")
+ 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
@@ -50,43 +51,35 @@
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
playerItemControler = ItemControler.PlayerItemControler(curPlayer)
# 拍品
- if auctionGroup:
- isAuctionItem = True
- ipyData = IpyGameDataPY.GetIpyGameData("AuctionItem", itemID)
- 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 auctionGroup > 0:
+ for _ in xrange(auctionGroup):
+ if not ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, True, [IPY_GameWorld.rptItem], event=event):
+ GameWorld.DebugAnswer(curPlayer, "###放入物品失败!")
else:
- isAuctionItem = False
- if packCount > 1:
- __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, itemCount, isAuctionItem, isAllAttr)
+ if not ItemCommon.GetIsEquip(itemData):
+ if not ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, False, [IPY_GameWorld.rptItem], event=event):
+ GameWorld.DebugAnswer(curPlayer, "###放入物品失败!")
else:
for _ in xrange(itemCount):
- __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, 1, isAuctionItem, isAllAttr)
+ __DoGMGivePlayerItem(curPlayer, playerItemControler, itemID, 1, False, 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
--
Gitblit v1.8.0