From 0ff8e21c92b39adfdf062b40c4e0147213bba70a Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期一, 26 十一月 2018 23:18:29 +0800 Subject: [PATCH] 4923 【后端】【1.3】神兵技能 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_807.py | 33 +++++++-------------------------- 1 files changed, 7 insertions(+), 26 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_807.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_807.py index 212895f..5a26f5d 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_807.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_807.py @@ -3,7 +3,7 @@ # ##@package # -# @todo: 神兵生命转换为血盾 +# @todo: 神兵生命转换为血盾, A值为百分比 # # @author: Alee # @date 2018-4-23 下午02:04:06 @@ -15,34 +15,15 @@ import GameWorld import ChConfig -import GameObj -import SkillShell +import PlayerControl def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict): + attrList = PlayerControl.GetCalcAttrListValue(attacker, ChConfig.Def_CalcAttrFunc_GodWeapon) + + hp = attrList[2].get(ChConfig.TYPE_Calc_AttrMaxHP, 0) + curEffect = curSkill.GetEffect(0) - return [int(float(curEffect.GetEffectValue(0))/ChConfig.Def_MaxRateValue*GameObj.GetMaxHP(attacker))] + return [hp*curEffect.GetEffectValue(0)/ChConfig.Def_MaxRateValue] -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 \ No newline at end of file -- Gitblit v1.8.0