| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #  | 
| ##@package  | 
| #  | 
| # @todo: ¸ù¾Ý×ÜѪÁ¿»ñÈ¡µÄѪÁ¿»¤¶Ü, ¿É¸½¼Ó±¬Õ¨  | 
| #  | 
| # @author: Alee  | 
| # @date 2018-4-23 ÏÂÎç02:04:06  | 
| # @version 1.0  | 
| #  | 
| # @note:    | 
| #  | 
| #---------------------------------------------------------------------  | 
|   | 
| import GameWorld  | 
| import ChConfig  | 
| import GameObj  | 
| import SkillShell  | 
|   | 
|   | 
|   | 
| def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict):  | 
|     curEffect = curSkill.GetEffect(0)  | 
|     return [int(float(curEffect.GetEffectValue(0))/ChConfig.Def_MaxRateValue*GameObj.GetMaxHP(attacker))]  | 
|   | 
| def OnBuffDisappear(curObj, curSkill, curBuff, curEffect, tick):  | 
|     if curEffect.GetEffectValue(1) == 0:  | 
|         return  | 
|     boomValue = curBuff.GetValue()  | 
|     # Ê£Ó໤¶ÜÖµÓÃÓÚ±¬Õ¨  | 
|     if boomValue == 0:  | 
|         return  | 
|       | 
|     boomValue = int(boomValue*float(curEffect.GetEffectValue(1))/ChConfig.Def_MaxRateValue)  | 
|     #Ч¹ûÖµ µÚÈý¸öֵΪ¼¼ÄÜID  | 
|     boomID = curEffect.GetEffectValue(2)  | 
|     skillData = GameWorld.GetGameData().GetSkillBySkillID(boomID)  | 
|     if not skillData:  | 
|         return  | 
|       | 
|     # ´æ´¢ÆðÀ´ÓÃÓÚÉ˺¦  | 
|     curObj.SetDict(ChConfig.Def_PlayerKey_MoreHurtValue, boomValue)  | 
|       | 
|     SkillShell.Trigger_UseSkill(curObj, None, skillData, tick, curObj.GetPosX(), curObj.GetPosY())  | 
|     curObj.SetDict(ChConfig.Def_PlayerKey_MoreHurtValue, 0)  | 
|   | 
|     return |