| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #---------------------------------------------------------------------  | 
| #  | 
| #---------------------------------------------------------------------  | 
| ##@package GY_Query_DelItem  | 
| # @todo: É¾³ýÎïÆ·  | 
| #  | 
| # @author: xdh  | 
| # @date 2016-08-12 21:00  | 
| # @version 1.0  | 
| #  | 
| # @note: É¾³ýÎïÆ·  | 
| #---------------------------------------------------------------------  | 
| #"""Version = 2016-08-12 21:00"""   | 
| #---------------------------------------------------------------------  | 
| import GameWorld  | 
| import IPY_GameWorld  | 
| import ItemCommon  | 
| #---------------------------------------------------------------------  | 
|   | 
| ## XX  | 
| #  @param query_Type ÇëÇóÀàÐÍ  | 
| #  @param query_ID ÇëÇóµÄÍæ¼ÒID  | 
| #  @param packCMDList ·¢°üÃüÁî  | 
| #  @param tick µ±Ç°Ê±¼ä  | 
| #  @return "True" or "False" or ""  | 
| def DoLogic(query_Type, query_ID, packCMDList, tick):  | 
|     return ''  | 
|   | 
|   | 
| ## µÇ½ÐÅÏ¢  | 
| #  @param curPlayer ·¢³öÇëÇóµÄÍæ¼Ò  | 
| #  @param callFunName ¹¦ÄÜÃû³Æ  | 
| #  @param funResult ²éѯµÄ½á¹û  | 
| #  @param tick µ±Ç°Ê±¼ä  | 
| #  @return None  | 
| def DoResult(curPlayer, callFunName, funResult, tick):  | 
|     playerID = curPlayer.GetPlayerID()  | 
|     GameWorld.Log("GY_Query_DelItem funResult=%s" % funResult, playerID)  | 
|     result = eval(funResult)  | 
|      | 
|     if len(result) !=2:  | 
|         return  | 
|       | 
|     needItemList, eventName = result  | 
|     itemPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)  | 
|     itemInfoList = []  | 
|     for itemId, itemNum in needItemList:  | 
|         isEnough, indexList = ItemCommon.GetItem_FromPack_ByID(itemId, itemPack, itemNum)  | 
|         if not isEnough:  | 
|             GameWorld.DebugLog("%s item(%s) isn't enough" % (eventName, itemId), curPlayer.GetPlayerID())  | 
|             continue  | 
|         itemInfoList.append((itemId, itemNum, indexList))  | 
|           | 
|     for itemId, itemNum, indexList in itemInfoList:  | 
|         if not indexList:  | 
|             continue  | 
|         ItemCommon.ReduceItem(curPlayer, itemPack, indexList, itemNum, False, eventName)  | 
|           | 
|           | 
|     return  | 
|   | 
|   |