| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #  | 
| ##@package   | 
| #  | 
| # @todo:  ´ËbuffΪ´¥·¢¼¼ÄÜ£¬È¡Ö÷Êͷż¼ÄܼÆËãÉ˺¦£¬ÔÚ´¥·¢¼¼ÄÜÏûʧʱ¸øÉ˺¦  | 
| #  | 
| # @author: Alee  | 
| # @date 2018-4-4 ÏÂÎç03:19:49  | 
| # @version 1.0  | 
| #  | 
| # @note:   | 
| #  | 
| #---------------------------------------------------------------------  | 
|   | 
|   | 
| import IPY_GameWorld  | 
| import GameWorld  | 
| import SkillShell  | 
| import ChConfig  | 
| import AttackCommon  | 
| import SkillCommon  | 
| import GameObj  | 
|   | 
| def OnBuffDisappear(curObj, curSkill, curBuff, curEffect, tick):  | 
|       | 
|     if GameObj.GetHP(curObj) <= 0:  | 
|         return  | 
|     SkillCommon.SkillLostHP(curObj, curBuff.GetBuffID(), SkillCommon.GetBuffOwner(curBuff),   | 
|                             curBuff.GetValue(), tick, curBuff.GetValue1())  | 
|     return  | 
|   | 
|   | 
| # ´ËbuffΪ´¥·¢¼¼ÄÜ£¬È¡Ö÷Êͷż¼ÄܼÆËãÉ˺¦£¬ÔÚ´¥·¢¼¼ÄÜÏûʧʱ¸øÉ˺¦  | 
| def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict):  | 
|     useSkillData = attacker.GetUseSkill()   # »ñÈ¡ÊͷŵÄÖ÷¼¼ÄÜ  | 
|     curEffect = curSkill.GetEffect(0)  | 
|     skillPer = curEffect.GetEffectValue(0)/float(ChConfig.Def_MaxRateValue)  | 
|       | 
|     hurtValue, hurtType = AttackCommon.CalcHurtHP(attacker, defender, useSkillData,   | 
|                             0, skillPer, GameWorld.GetGameWorld().GetTick(),   | 
|                             ChConfig.Def_Skill_HappenState_HitOn)  | 
|       | 
|     return [hurtValue, hurtType]  |