#!/usr/bin/python  
 | 
# -*- coding: GBK -*-  
 | 
  
 | 
##@package BuffProcess_1300  
 | 
# @todo: ³Ö¼Ì»ØÑª´¥·¢µÄbuffÂ߼ʵÏÖ °´×î´óÉúÃü»ØÑª  
 | 
#  
 | 
# @author Alee  
 | 
# @date 2011-01-18 11:00  
 | 
# @version 1.2  
 | 
#  
 | 
#---------------------------------------------------------------------  
 | 
"""Version = 2013-10-31 14:45"""  
 | 
  
 | 
#µ¼Èë  
 | 
import SkillCommon  
 | 
import GameWorld  
 | 
import ChConfig  
 | 
import GameObj  
 | 
#import PassiveBuffEffMng  
 | 
#import SkillShell  
 | 
#---------------------------------------------------------------------  
 | 
#È«¾Ö±äÁ¿  
 | 
#---------------------------------------------------------------------  
 | 
#Â߼ʵÏÖ  
 | 
## ³ÖÐøÐÔBuff´¦Àí   
 | 
#  @param defender ³ÐÊÜÕß  
 | 
#  @param curBuff µ±Ç°Buff  
 | 
#  @param curEffect BuffЧ¹û  
 | 
#  @param tick µ±Ç°Ê±¼ä  
 | 
#  @return None  
 | 
#  @remarks ³ÖÐøÐÔBuff´¦Àí   
 | 
def ProcessBuff(defender, curBuff, curEffect, processBuffTick, tick):  
 | 
    if curBuff.GetValue1() == 0:  
 | 
        return  
 | 
      
 | 
    curBuffSkillID = curBuff.GetSkill().GetSkillTypeID()  
 | 
    singleAddHP = curBuff.GetValue()  
 | 
      
 | 
    curBuff.SetValue1(max(curBuff.GetValue1() - 1, 0))  
 | 
    SkillCommon.SkillAddHP(defender, curBuffSkillID, singleAddHP)  
 | 
    return  
 | 
  
 | 
  
 | 
# ÏûʧǰÈçÓÐδִÐдÎÊýÔò²¹ÉÏ  
 | 
#  @param defender ³ÐÊÜÕß  
 | 
def OnBuffDisappear(defender, curSkill, curBuff, curEffect, tick):  
 | 
    count = curBuff.GetValue1()  
 | 
    #ÎÞÊ£Óà  
 | 
    if count <= 0:  
 | 
        return  
 | 
      
 | 
    #ÒѾËÀÍö²»´¥·¢  
 | 
    if GameObj.GetHP(defender) <= 0:  
 | 
        return  
 | 
    SkillCommon.SkillAddHP(defender, curSkill.GetSkillTypeID(), curBuff.GetValue()*count)  
 | 
    return  
 | 
  
 | 
  
 | 
  
 | 
##³ÖÐøÖÎÁÆBuff,¸ù¾Ý¹¥»÷Õß×î´óѪÁ¿¼ÆËã  
 | 
# @param attacker ¹¥»÷ÕßʵÀý  
 | 
# @param curSkill ¼¼ÄÜʵÀý  
 | 
# @param curEffect µ±Ç°¼¼ÄÜЧ¹û1  
 | 
# @return ×ÜÖµ  
 | 
def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict):  
 | 
    curEffect = curSkill.GetEffect(0)  
 | 
    # ±»¶¯ÔöÇ¿  
 | 
#    addTime = PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(attacker, None, curSkill, ChConfig.TriggerType_BuffTime)  
 | 
#    buffTick = SkillShell.GetProcessBuffTick(curSkill, attacker)  
 | 
#  
 | 
#    count = int(addTime/buffTick + curEffect.GetEffectValue(2))  
 | 
  
 | 
    count = curEffect.GetEffectValue(2)  
 | 
    return [SkillCommon.GetCureHP(attacker, None, curSkill, ChConfig.Def_Cure_MaxHP),  
 | 
            count]  
 | 
  
 |