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