#!/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  
 | 
  
 | 
      
 | 
      
 |