| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #  | 
| # @todo: ´ò³ö·ÀÓùÕßѪÁ¿µÄX%¸½¼ÓYÖµ, ·ÀÓùÕßÎªÍæ¼Ò£¬µ¥Ìå¹¥»÷  | 
| #  | 
| # @author: Alee  | 
| # @date 2018-2-1 ÏÂÎç02:51:53  | 
| # @version 1.0  | 
| #  | 
| # @note:   | 
| #  | 
| #------------------------------------------------------------------------------   | 
| import ChConfig  | 
| import BaseAttack  | 
| import GameObj  | 
| import SkillCommon  | 
| import IPY_GameWorld  | 
| #------------------------------------------------------------------------------   | 
|   | 
|   | 
|   | 
| def UseSkill(attacker, defender, curSkill, tagRoundPosX, tagRoundPosY, isEnhanceSkill, tick):  | 
|     if not defender:  | 
|         return  | 
|     if defender.GetGameObjType() != IPY_GameWorld.gotPlayer:  | 
|         return  | 
|     skillEffect = curSkill.GetEffect(0)  | 
|     skillPer = skillEffect.GetEffectValue(0) / float(ChConfig.Def_MaxRateValue)  | 
|     skillEnhance = skillEffect.GetEffectValue(1)  | 
|       | 
|     defenderMaxHp = GameObj.GetHP(defender)  | 
|     hurtEnhance = defenderMaxHp*skillPer + skillEnhance  | 
|     hurtEnhance = min(hurtEnhance, defenderMaxHp)  | 
|   | 
|     return SkillCommon.SkillLostHP(defender, curSkill.GetSkillTypeID(), attacker, int(hurtEnhance), tick, isDoAttackResult=False)  |