#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
##@package Player.RemoteQuery.GY_Query_CrossPutInItem
|
#
|
# @todo:¿ç·þ»ñµÃÎïÆ·
|
# @author hxp
|
# @date 2019-01-09
|
# @version 1.0
|
#
|
# ÏêϸÃèÊö: ¿ç·þ»ñµÃÎïÆ·
|
#
|
#-------------------------------------------------------------------------------
|
#"""Version = 2019-01-09 19:30"""
|
#-------------------------------------------------------------------------------
|
|
import GameWorld
|
import ItemCommon
|
import ItemControler
|
import PlayerControl
|
|
#------------------------------------------------------------------------------
|
## ¿ç·þÈü±¨Ãûµ÷ÓýӿÚ
|
# @param query_Type ÇëÇóÀàÐÍ
|
# @param query_ID ÇëÇóµÄÍæ¼ÒID
|
# @param packCMDList ·¢°üÃüÁî
|
# @param tick µ±Ç°Ê±¼ä
|
# @return "True" or "False" or ""
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def DoLogic(query_Type, query_ID, packCMDList, tick):
|
return
|
|
|
#------------------------------------------------------------------------------
|
## Ö´Ðнá¹û
|
# @param curPlayer ·¢³öÇëÇóµÄÍæ¼Ò
|
# @param callFunName ¹¦ÄÜÃû³Æ
|
# @param funResult ²éѯµÄ½á¹û
|
# @param tick µ±Ç°Ê±¼ä
|
# @return None
|
# @remarks º¯ÊýÏêϸ˵Ã÷.
|
def DoResult(curPlayer, callFunName, funResult, tick):
|
playerID = curPlayer.GetPlayerID()
|
GameWorld.Log("GY_Query_CrossPutInItem %s" % funResult, playerID)
|
itemInfo = eval(funResult)
|
if playerID != itemInfo["PlayerID"]:
|
return
|
itemData = itemInfo["ItemData"]
|
packIndex = itemInfo["PackIndex"]
|
event = itemInfo["Event"]
|
itemID, itemCount, isAuctionItem, itemUserData = itemData
|
curItem = ItemCommon.CreateSingleItem(itemID, itemCount, isAuctionItem)
|
if not curItem:
|
return
|
if itemUserData and itemUserData != "{}":
|
curItem.SetUserData(itemUserData, len(itemUserData))
|
|
if ItemControler.PlayerItemControler(curPlayer).PutInItem(packIndex, curItem, event=event):
|
return
|
|
# ·ÅÈëʧ°Ü·¢Óʼþ
|
GameWorld.Log("ÊÕµ½¿ç·þ»ñµÃÎïÆ·£¬·ÅÈëʧ°Ü£¬Ö±½Ó·¢Óʼþ! itemInfo=%s" % str(itemInfo), playerID)
|
addItemList = [{"ItemID":itemID, "Count":itemCount, "IsAuctionItem":isAuctionItem, "UserData":itemUserData}]
|
PlayerControl.SendMailByKey("", [playerID], addItemList, detail={"CrossPutInItem":1, "Event":event})
|
return
|
|
|
|