| #!/usr/bin/python | 
| # -*- coding: GBK -*- | 
|   | 
| ##@package BuffProcess_1307 | 
| # @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, defender, curSkill, ChConfig.Def_Cure_TagMaxHP), | 
|             count] |