#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # #------------------------------------------------------------------------------- # ##@package GM.Commands.ClearTagItem # # @todo:Çå³ýÄ¿±êÍæ¼ÒÎïÆ· # @author hxp # @date 2014-12-17 # @version 1.0 # # ÏêϸÃèÊö: Çå³ýÄ¿±êÍæ¼ÒÎïÆ· # #--------------------------------------------------------------------- """Version = 2014-12-17 14:30""" import GameWorld import IPY_GameWorld ## GMÃüÁîÖ´ÐÐÈë¿Ú # @param curPlayer µ±Ç°Íæ¼Ò # @param paramList ²ÎÊýÁбí tagPlayerID packType itemIndex # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def OnExec(curPlayer, paramList): if len(paramList) < 3: GameWorld.DebugAnswer(curPlayer, "²ÎÊý´íÎó ClearTagItem tagPlayerID packType itemIndex") GameWorld.DebugAnswer(curPlayer, "×óÊÖ:ClearTagItem tagPlayerID 1 20") GameWorld.DebugAnswer(curPlayer, "ÓÒÊÖ:ClearTagItem tagPlayerID 1 0") GameWorld.DebugAnswer(curPlayer, "±³°üµÚÒ»¸ñ:ClearTagItem tagPlayerID 2 0") return tagPlayerID = paramList[0] packType = paramList[1] itemIndex = paramList[2] tagPlayer = GameWorld.GetPlayerManager().FindPlayerByID(tagPlayerID) if not tagPlayer: GameWorld.DebugAnswer(curPlayer, "ÕÒ²»µ½¸ÃÍæ¼Ò tagPlayerID=%s" % tagPlayerID) return if packType < 0 or packType >= IPY_GameWorld.rptMax: GameWorld.DebugAnswer(curPlayer, "±³°üÀàÐÍ´íÎó packType=%s" % packType) return isOK = __DoLogic_ClearTagSingItem(tagPlayer, packType, itemIndex) GameWorld.DebugAnswer(curPlayer, "Çå³ýÄ¿±êÍæ¼ÒÎïÆ·: tagPlayerID=%s,packType=%s,itemIndex=%s,isOK=%s" % (tagPlayerID, packType, itemIndex, isOK)) return True ## Çå³ý¶ÔÓ¦±³°üijË÷ÒýµÄÎïÆ· # @param curPlayer µ±Ç°Íæ¼Ò # @param itemIndex ±³°üË÷Òý # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def __DoLogic_ClearTagSingItem(tagPlayer, packType, itemIndex): backPack = tagPlayer.GetItemManager().GetPack(packType) curItem = backPack.GetAt(itemIndex) if not curItem or curItem.IsEmpty(): return False curItem.Clear() return True