| | |
| | | robPlayerID = mineItemData.RobPlayerID
|
| | | # 赶走抢夺者
|
| | | if robPlayerID and robPlayerID == tagPlayerID:
|
| | | __DoCancelPull(tagPlayerID, areaPlayerID, itemIndex)
|
| | | __DoCancelPull(tagPlayerID, areaPlayerID, itemIndex, "out")
|
| | |
|
| | | # 帮助的发奖
|
| | | if funcLineID == 0:
|
| | |
| | | return
|
| | | if workerCount <= 0:
|
| | | if not isPreview:
|
| | | __DoCancelPull(playerID, areaPlayerID, itemIndex)
|
| | | __DoCancelPull(playerID, areaPlayerID, itemIndex, "cancel")
|
| | | return
|
| | | GameWorld.DebugLog("请求福地拉物品! areaPlayerID=%s,itemIndex=%s,workerCount=%s,workerState=%s,workerTotal=%s,isPreview=%s"
|
| | | % (areaPlayerID, itemIndex, workerCount, workerState, workerTotal, isPreview), playerID)
|
| | |
| | | SyncMineAreaItemInfo(areaPlayerID, [itemIndex], notifyPlayerIDListEx)
|
| | | return
|
| | |
|
| | | def __DoCancelPull(playerID, areaPlayerID, itemIndex):
|
| | | def __DoCancelPull(playerID, areaPlayerID, itemIndex, reason=""):
|
| | | ## 取消拉取
|
| | | mineItemMgr = PyDataManager.GetDBPyMineAreaItemManager()
|
| | | mineItemData = mineItemMgr.GetMineItem(areaPlayerID, itemIndex)
|
| | |
| | | __RefreshMineItemSpeed(mineItemData, True)
|
| | |
|
| | | SyncMineAreaItemInfo(areaPlayerID, [itemIndex], notifyPlayerIDListEx)
|
| | | curPlayer = GameWorld.GetPlayerManager().FindPlayerByID(playerID)
|
| | | if curPlayer:
|
| | | MapServer_QueryPlayerResult(curPlayer, "MineAreaCancelPull", [areaPlayerID, reason])
|
| | | return
|
| | |
|
| | | def __DoMineItemRefresh(areaPlayerID, areaPlayer=None, isSys=False, isSuper=False, isNotify=True, refreshIndexList=None, setPosition=None, setItemLV=None, setMineID=None):
|