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