129 【战斗】战斗系统-服务端(孟获技能;增加效果7005-必命中;)
2个文件已修改
9 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChConfig.py
@@ -4082,6 +4082,7 @@
SkillEff_HurtShare = 7002 # 均摊伤害
SkillEff_ChangeTag = 7003 # 修改技能目标
SkillEff_RandRicochetCnt = 7004 # 随机弹射次数(A~B随机,包含AB)
SkillEff_MustHit = 7005 # 技能必命中
(
TriggerType_BeSuperHit, # 被暴击触发技能 1
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/TurnSkill.py
@@ -1349,14 +1349,16 @@
    angerOverflow = 0 # 怒气溢出值
    
    mustHit = False # 是否必命中
    if isAngerSkill:
    if not isTurnNormalSkill: # 仅普攻判断是否闪避
        mustHit = True
    if isAngerSkill:
        curXP = atkObj.GetXP()
        angerOverflow = max(atkObj.GetXP() - IpyGameDataPY.GetFuncCfg("AngerXP", 2), 0)
        GameWorld.DebugLog("XP必命中! curXP=%s,angerOverflow=%s" % (curXP, angerOverflow))
        GameWorld.DebugLog("怒技攻击! curXP=%s,angerOverflow=%s" % (curXP, angerOverflow))
        
    #命中公式 攻击方类型不同,公式不同
    if isTurnNormalSkill and not mustHit and not defObj.IsInControlledHard():
    if not mustHit and not curSkill.GetEffectByID(ChConfig.SkillEff_MustHit) and not defObj.IsInControlledHard():
        aMissRateDef = atkObj.GetBatAttrValue(ChConfig.AttrID_MissRateDef) #atkObj.GetHit() # 抗闪避率 - 命中
        dMissRate = defObj.GetBatAttrValue(ChConfig.AttrID_MissRate) # 闪避率
        missNum = curSkill.GetTagMissNum(defID)