6603 【后端】【2.0】增加新版的sp和被动技能 -重击增加技能固定伤害,特殊技能不受CD影响
3个文件已修改
1个文件已添加
47 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4030.py 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/AttackLogic/AttackCommon.py
@@ -2144,14 +2144,15 @@
    atkSkillPerYinji = PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_AttackAddSkillPerYinji)
    atkSkillPer += atkSkillPerYinji
    
    if isSuperHit and hurtType == ChConfig.Def_HurtType_SuperHit:
    if hurtType == ChConfig.Def_HurtType_SuperHit:
        # 暴击增加技能伤害
        atkSkillPer += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_SuperHitSkillPer)
        atkSkillPer += PassiveBuffEffMng.GetValueByPassiveBuffTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_SuperHitSkillPer)
        
        # buff中暴击减层,无触发技能
        PassiveBuffEffMng.OnPassiveBuffTrigger(atkObj, defObj, curSkill, ChConfig.TriggerType_SuperHitSubLayer, tick)
    elif hurtType == ChConfig.Def_HurtType_ThumpHit:
        atkSkillValue += PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(atkObj, defObj, curSkill, ChConfig.TriggerType_ThumpSkillValue)
    if isLuckyHit:
        # 会心一击时增加会心伤害固定值 
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -4506,7 +4506,8 @@
TriggerType_ThumpHitSuckBloodPer,   # 重击百分比吸血, 85
TriggerType_SuperHitPer,  # 暴击伤害百分比 86
TriggerType_SkillSuccessExpend, # 使用技能成功后不触发技能 处理消耗等问题用 87
) = range(1, 88)
TriggerType_ThumpSkillValue, # 重击增加技能固定值伤害 88
) = range(1, 89)
#不可以佩戴翅膀的地图
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_4030.py
New file
@@ -0,0 +1,27 @@
#!/usr/bin/python
# -*- coding: GBK -*-
#
##@package
#
# @todo: 重击额外增加固定伤害
#
# @author: Alee
# @date 2019-6-20 下午08:40:47
# @version 1.0
#
# @note:
#
#---------------------------------------------------------------------
import ChConfig
import GameWorld
import SkillCommon
import GameObj
# 目标某个状态时触发
def CheckCanHappen(attacker, defender, effect, curSkill):
    return True
def GetValue(attacker, defender, effect):
    return effect.GetEffectValue(0)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -50,6 +50,9 @@
             ChConfig.Def_SkillFuncType_NormalAttack:[1,3],
             }
Def_PassiveSkillValueNoCD = [52000, 57000]      # 特殊处理部分技能增强触发不受CD影响
# --------被动功法设置--------------------------------------------------------------------
#===============================================================================
@@ -321,6 +324,7 @@
             4027:ChConfig.TriggerType_AttackKill,   # նɱ 24
             4028:ChConfig.TriggerType_WillDead,   # 进入濒死状态时触发技能 25
             4029:ChConfig.TriggerType_BuffBoom,   # 中毒后爆炸 26
             4030:ChConfig.TriggerType_ThumpSkillValue, # 重击增加技能固定值伤害 88
             4031:ChConfig.TriggerType_HurtObjAddBuff,   # 在算伤害时群攻1对1加buff,可用于一个伤害多次触发 28
             4032:ChConfig.TriggerType_BeBoomSeed,   # 被动引爆视野内对象的buff种子 29
             4033:ChConfig.TriggerType_AttackOver,  # 攻击(对敌技能)后被动技能被触发 4
@@ -1253,9 +1257,11 @@
            # 只有天赋才可以再次被触发
            continue 
        
        if curSkill.GetCoolDownTime() and SkillCommon.RefreshSkillRemainTime(curSkill, tick):
            #有配置CD的才判断
            continue
        if skillTypeID not in Def_PassiveSkillValueNoCD:
            # 特殊技能不走CD处理
            if curSkill.GetCoolDownTime() and SkillCommon.RefreshSkillRemainTime(curSkill, tick):
                #有配置CD的才判断
                continue
        
        effect = SkillCommon.GetSkillEffectByEffectID(curSkill, effectID)
        if not effect: