#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
#-------------------------------------------------------------------------------  
 | 
#  
 | 
##@package Item_UseItemGiveZhenQi  
 | 
#  
 | 
# @todo: Ê¹ÓÃÎïÆ·¸øÓèÕæÆø  
 | 
# @author jiang  
 | 
# @date 2011-11-14 17:30  
 | 
# @version 1.5  
 | 
#  
 | 
# @change: "2011-12-02 17:00" jiang Ôö¼ÓÕæÆøÌáʾ¸Äµ½PlayerAddZhenQi()Ìáʾ  
 | 
# @change: "2011-12-28 16:30" jiang  ÐÞ¸ÄBug #19208, Ôö¼ÓÕæÆø¸Ä³É¿ÉÒÔÒç³ö  
 | 
# @change: "2012-03-26 15:00" jiang  È¥³ýÂúÕæÆø²»ÄÜʹÓõÄÏÞÖÆ  
 | 
# @change: "2012-06-18 18:00" jiang ÐÞ¸ÄItemCommon.DelItemº¯ÊýµÄ²ÎÊýÓÃÓÚOssʼþ¼Ç¼  
 | 
# @change: "2015-05-20 16:00" hxp Ôö¼ÓÅúÁ¿Ê¹ÓÃÂß¼  
 | 
#  
 | 
#------------------------------------------------------------------------------   
 | 
"""Version = 2015-05-20 16:00"""  
 | 
#------------------------------------------------------------------------------   
 | 
import IPY_GameWorld  
 | 
import ItemCommon  
 | 
import ChConfig  
 | 
import PlayerControl  
 | 
import GameWorld  
 | 
#------------------------------------------------------------------------------   
 | 
  
 | 
##ÅúÁ¿Ê¹ÓÃÎïÆ·  
 | 
# @param curPlayer: Íæ¼ÒʵÀý  
 | 
# @param curRoleItem: ÎïÆ·ÊµÀý  
 | 
# @param tick: Ê±¼ä´Á  
 | 
# @param useCnt: Ê¹ÓøöÊý  
 | 
# @return:   
 | 
def BatchUseItem(curPlayer, curRoleItem, tick, useCnt, exData):  
 | 
    itemID = curRoleItem.GetItemTypeID()  
 | 
    curEff = curRoleItem.GetEffectByIndex(0)  
 | 
    itemZhenQiRivet = curEff.GetEffectValue(0)  # ¸øÓè¹Ì¶¨Öµ  
 | 
      
 | 
    addZhenQi = itemZhenQiRivet  
 | 
    if addZhenQi <= 0:  
 | 
        return  
 | 
      
 | 
    curZhenQi = PlayerControl.GetZhenQi(curPlayer) # µ±Ç°ÕæÆø  
 | 
    #ÕæÆøÖ§³Ö³¬¹ý20ÒÚ£¬Ôݲ»×öÉÏÏÞ¿ØÖÆ  
 | 
    #canAddZhenQi = max(0, ChConfig.Def_UpperLimit_DWord - curZhenQi)  
 | 
    #canUseCnt = canAddZhenQi / addZhenQi  
 | 
    #useCnt = min(useCnt, canUseCnt)  
 | 
      
 | 
    if useCnt <= 0:  
 | 
        return  
 | 
      
 | 
    #¿Û³ýÎïÆ·  
 | 
    ItemCommon.DelItem(curPlayer, curRoleItem, useCnt, True, ChConfig.ItemDel_GiveZhenQi)  
 | 
    totalAddZhenQi = addZhenQi * useCnt  
 | 
    PlayerControl.PlayerAddZhenQi(curPlayer, totalAddZhenQi, True, True, "UseItem", {"ItemID":itemID, "UseCnt":useCnt})  
 | 
    afterZhenQi = PlayerControl.GetZhenQi(curPlayer) # µ±Ç°ÕæÆø  
 | 
    GameWorld.DebugLog("Item_UseItemGiveZhenQi.BatchUseItem addZhenQi=%s(%s*%s), %s to %s"   
 | 
                       % (totalAddZhenQi, addZhenQi, useCnt, curZhenQi, afterZhenQi))  
 | 
    return True, useCnt  
 | 
  
 | 
##ʹÓÃÎïÆ·,¸øÓèÕæÆø  
 | 
# @param curPlayer Íæ¼ÒʵÀý  
 | 
# @param curRoleItem ÎïÆ·ÊµÀý  
 | 
# @param tick Ê±¼ä´Á  
 | 
# @return Ê¹ÓÃÊÇ·ñ³É¹¦  
 | 
def UseItem(curPlayer, curRoleItem, tick):  
 | 
    return BatchUseItem(curPlayer, curRoleItem, tick, 1, 0)  
 |