#!/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)
|