| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #  | 
| ##@package  | 
| #  | 
| # @todo: ÓÉ·þÎñ¶ËÖ÷µ¼É˺¦µÄ³ÖÐøÐÔ¼¼ÄÜ, Ï×¼À  | 
| #  | 
| # @author: Alee  | 
| # @date 2019-4-27 ÏÂÎç03:13:54  | 
| # @version 1.0  | 
| #  | 
| # @note:   | 
| #  | 
| #---------------------------------------------------------------------  | 
| #µ¼Èë  | 
| import GameWorld  | 
| import SkillCommon  | 
| import BaseAttack  | 
| import ChConfig  | 
| import PassiveBuffEffMng  | 
| import SkillShell  | 
| import GameObj  | 
| import IPY_GameWorld  | 
| import AttackCommon  | 
|   | 
| def ProcessBuff(tagObj, curBuff, curEffect, processBuffTick, tick):  | 
|     Attack(tagObj, curBuff, curEffect, tick)  | 
|       | 
| #¼ä¸ô¹¥»÷£¬buffvalueµÚÒ»¸öֵΪ¹¥»÷´ÎÊý  | 
| def Attack(tagObj, curBuff, curEffect, tick):  | 
|     if curBuff.GetValue() == 0:  | 
|         return  | 
|       | 
|     curSkill = curBuff.GetSkill()  | 
|       | 
|     curBuff.SetValue(max(curBuff.GetValue() - 1, 0))  | 
|       | 
|     lostHP = curBuff.GetValue1()  | 
|     BaseAttack.AreaSkillAttackLostHP(tagObj, None, tagObj.GetPosX(), tagObj.GetPosY(),   | 
|                                      curSkill, lostHP, tick, isExSkill=True)  | 
|       | 
|   | 
| #buffvalueµÚÒ»¸öֵΪ¹¥»÷´ÎÊý£¬ µÚ¶þ¸öֵΪµôѪÍò·ÖÂÊ  | 
| def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict):  | 
|     curEffect = curSkill.GetEffect(0)  | 
|     return [curEffect.GetEffectValue(0), GameObj.GetHP(attacker)*curEffect.GetEffectValue(1)/ChConfig.Def_MaxRateValue]  | 
|           | 
|   | 
| ## Ìí¼ÓBUFFºóµÄÂß¼  | 
| #  @param None  | 
| #  @return None  | 
| def DoAddBuffOver(curObj, addBuff, curEffect, tick, buffOwner):  | 
|     Attack(curObj, addBuff, curEffect, tick)   #Á¢¼´Ö´ÐÐÒ»´Î¹¥»÷  | 
|     if not AttackCommon.GetIsDead(curObj) and GameObj.GetHP(curObj) != 0:  | 
|         addBuff.SetProcessInterval(tick)  | 
|     return  | 
|           | 
|   | 
|   | 
|   | 
|   | 
|          |