#!/usr/bin/python # -*- coding: GBK -*- # ##@package ItemState # µØ°åÎïÆ·´¦Àí # # @author eggxp # @date 2010-4-23 # @version 1.4 # # @change: "2011-04-07 14:30" panwei PsycoÓÅ»¯ # @change: "2013-06-07 16:00" wdb Ð޸ĽðÇ®Ïûʧʱ¼ä # @change: "2013-07-02 16:30" wdb ÐÞ¸ÄÎäÆ÷µôÂ䣬ʰȡ # @change: "2014-06-07 13:50" xmnathan µØ°åÎïÆ·Ïûʧʱ¼ä¶ÁÈ¡ÅäÖà #--------------------------------------------------------------------- #"""Version = 2014-06-07 13:50""" #--------------------------------------------------------------------- import GameWorld import IpyGameDataPY #--------------------------------------------------------------------- #--------------------------------------------------------------------- #Èç¹û¸ÃÎïÆ·Îª¹ÖÎïËÀÍöºóµô³ö£¬ÄÇôɱËÀ¸Ã¹ÖÎïµÄ¸öÈ˼°Æä¶ÓÎé³ÉÔ±¿ÉÒÔʰȡ´ËÎïÆ·¡£15ÃëºóËùÓÐÈË·½¿É×ÔÓÉʰȡ¡£ #Èç¹û¸ÃÎïÆ·ÊÇÍæ¼ÒÊܵ½PKºóµô³ö£¬ÄÇôɱËÀ¸ÃÍæ¼ÒµÄ¸öÈ˼°Æä¶ÓÎé³ÉÔ±¿ÉÒÔʰȡ´ËÎïÆ·¡£15ÃëºóËùÓÐÈË¿É×ÔÓÉʰȡ¡£ #ÆäÓàÇé¿ö£ºËùÓÐÍæ¼Ò¾ùÐèÒª¾²´ý15Ãëºó·½¿Éʰȡ´ËÎïÆ·¡£ # ## µ±¸öµØÍ¼ÎïÆ·Âß¼­´¦Àí£¬ÊÇ·ñÏûʧ # @param curMapItem µ±Ç°µØÍ¼ÎïÆ· # @param tick µ±Ç°Ê±¼ä # @return 0 1Ïûʧ def ProcessSingleMapItem(curMapItem, disappearTime, tick): #µ¥¸öÎïÆ·´¦ÀíÂß¼­ if tick - curMapItem.GetDropTick() >= disappearTime: curMapItem.Disappear() return 1 return 0 ## µØ°åÉϵÄÎïÆ·ÏûʧÂß¼­ # @param tick µ±Ç°Ê±¼ä # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def ProcessState(tick): GameWorld.GetPsycoFunc(__Func_ProcessState)(tick) return ## µØ°åÉϵÄÎïÆ·ÏûʧÂß¼­ # @param tick µ±Ç°Ê±¼ä # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def __Func_ProcessState(tick): #½«Éæ¼°µ½C++ÖÐÁбíɾ³ýµÄ¹¦ÄÜ,ͳһ¸Ä³É -> ¸´ÖÆPyÁбíºó,È»ºó½øÐÐɾ³ýÂß¼­ (ÒòWhileÓм¸Âʽ«µ¼ÖÂËÀËø) mapItem_List = [] mapItemManager = GameWorld.GetMapItemManager() for index in range(mapItemManager.GetMapItemCount()): mapItem = mapItemManager.GetMapItemByIndex(index) mapItem_List.append(mapItem) disappearTime = IpyGameDataPY.GetFuncCfg("MapItemDisappearTime") for curMapItem in mapItem_List: #ÎÞ´ËÎïÆ· if not curMapItem or curMapItem.IsEmpty(): continue #Ö´ÐÐÏûʧÂß¼­ ProcessSingleMapItem(curMapItem, disappearTime, tick) return