| | |
| | | # @param isEnhanceSkill 是否为附加技能
|
| | | # @return True 攻击成功 None 不可攻击
|
| | | # @remarks 通过调用 Obj_Attack_Obj.GetTagRelation 获取返回值
|
| | | def Attack(attacker, defender, useSkill, tick, skillPercent=1, skillEnhance=0, attackTime=1, isEnhanceSkill=False):
|
| | | def Attack(attacker, defender, useSkill, tick, skillPercent=10000, skillEnhance=0, attackTime=1, isEnhanceSkill=False):
|
| | | global g_skillHurtList
|
| | |
|
| | | if attacker.GetGameObjType() == IPY_GameWorld.gotNPC:
|
| | |
| | | dist = GameWorld.GetDist(tagObj.GetPosX(), tagObj.GetPosY(),
|
| | | defender.GetPosX(), defender.GetPosY())
|
| | |
|
| | | skillPer = (skillPercent - dist * changePer) / float(ChConfig.Def_MaxRateValue)
|
| | | skillPer = (skillPercent - dist * changePer)
|
| | |
|
| | | #GameWorld.Log("skillPer :%s"%skillPer)
|
| | | #执行群攻 并取得被攻击对象列表
|
| | |
| | | if not hurtEffect:
|
| | |
|
| | | continue
|
| | | hurtPer = hurtEffect.GetEffectValue(0)*1.0/ChConfig.Def_MaxRateValue # 单层伤害
|
| | | hurtPer = hurtEffect.GetEffectValue(0) # 单层伤害
|
| | |
|
| | | # 伤害乘以层
|
| | | skillPercent = hurtPer * max(buff.GetLayer(), 1)
|