6603 【后端】【2.0】增加新版的sp和被动技能 - 修复追神摄魂计算命中个数问题
4个文件已修改
1个文件已添加
57 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_1304.py 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_1304.py 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Attack/BaseAttack.py
@@ -205,6 +205,11 @@
    return callFunc(attacker, defender, skill, tick)
def GetSkillHurtList():
    global g_skillHurtList
    return g_skillHurtList
def GetFirstHurtObj():
    global g_skillHurtList
    if g_skillHurtList.GetHurtCount():
@@ -1591,6 +1596,9 @@
        
        skillHurtLists.append([hurtObj.GetObjID(), hurtObj.GetObjType(), hurtObj.GetAttackType()])
    
    #命中个数记录特殊处理
    PassiveBuffEffMng.GetPassiveSkillValueByTriggerType(attacker, target, curSkill, ChConfig.TriggerType_HitValue)
    # #持续攻击类BUFF 类剑刃风暴是先给自身一个持续性buff,这一次不算伤害不可触发
    if curSkill and ChConfig.Def_SkillType_LstPlsBuffAtk != curSkill.GetSkillType():
        #只对第一目标造成某伤害类型时触发技能, 需先存储 skillHurtLists
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -4481,7 +4481,8 @@
TriggerType_SuperHitPer,  # 暴击伤害百分比 86
TriggerType_SkillSuccessExpend, # 使用技能成功后不触发技能 处理消耗等问题用 87
TriggerType_ThumpSkillValue, # 重击增加技能固定值伤害 88
) = range(1, 89)
TriggerType_HitValue, # 记录命中个数 89
) = range(1, 90)
#不可以佩戴翅膀的地图
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/GameBuffs/Buff_1304.py
@@ -15,7 +15,7 @@
import GameWorld
import ChConfig
import BaseAttack
## buff线性增加属性
@@ -40,5 +40,8 @@
def CalcBuffValue(attacker, defender, curSkill, changeBuffValueDict):
    return [GameWorld.GetGameWorld().GetTick()]
    # 被动1304赋值
    cnt = attacker.GetDictByKey("1304HitCnt")
    attacker.SetDict("1304HitCnt", 0)
    return [cnt]
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuff/PassiveSkill_1304.py
New file
@@ -0,0 +1,37 @@
#!/usr/bin/python
# -*- coding: GBK -*-
#
##@package
#
# @todo: 记录命中个数
#
# @author: Alee
# @date 2019-6-22 下午03:43:33
# @version 1.0
#
# @note:
#
#---------------------------------------------------------------------
import BaseAttack
import ChConfig
import GameWorld
def CheckCanHappen(attacker, defender, effect, curSkill):
    skillHurtList = BaseAttack.GetSkillHurtList()
    cnt = 0
    for i in xrange(skillHurtList.GetHurtCount()):
        hurtObj = skillHurtList.GetHurtAt(i)
        if not hurtObj:
            continue
        if hurtObj.GetAttackType() in [ChConfig.Def_HurtType_Miss, ChConfig.Def_HurtType_Immune]:
            continue
        cnt += 1
    attacker.SetDict("1304HitCnt", cnt)
    GameWorld.DebugLog("1304HitCnt---%s"%cnt)
    return False
def GetValue(attacker, defender, effect):
    return 0
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/PassiveBuffEffMng.py
@@ -290,6 +290,8 @@
def GetTriggerTypeByEffectID(effectID):
    # 临时配置
    tdict = {
             1304:ChConfig.TriggerType_HitValue,    # 命中记录 89
             2102:ChConfig.TriggerType_BeAttackOver,   # 被攻击后触发 20
             2104:ChConfig.TriggerType_LockHP, # 锁血触发技能 63
             2105:ChConfig.TriggerType_BeLuckyHit, # 被会心一击触发技能 64