少年修仙传客户端代码仓库
client_Hale
2019-06-24 4d10ea9eb3ffdfbb2cf9614f417e27a9ad96fe22
382 修正重击概率计算
1个文件已修改
54 ■■■■ 已修改文件
Fight/Actor/Skill/AttackHandler.cs 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/Skill/AttackHandler.cs
@@ -623,37 +623,12 @@
            }
        }
        if (StatusMgr.Instance.TryGetSkillEffectValue(attacker.ServerInstID, 4526, out _effectValue))
        {
            bool _vaild = true;
            if (_effectValue.value2 == 1)
            {
                if (attacker.SelectTarget == null
                 || attacker.SelectTarget.ServerInstID != target.ServerInstID)
                {
                    _vaild = false;
                }
            }
            if (_effectValue.value3 == 1)
            {
                if (skill.skillInfo.config.FuncType != (int)E_SkillFuncType.NormalAttack
                 && skill.skillInfo.config.FuncType != (int)E_SkillFuncType.FaBaoActiveSkill)
                {
                    _vaild = false;
                }
            }
            if (_vaild)
            {
                _aZhuXianHitRate += _effectValue.value1;
            }
        }
        #endregion
        _isMiss = IsMiss(_hitRate, _missRate);
        _isCrit = IsCrit(_aSuperHitRate);
        _isLucky = IsLucky(_aLuckyHitRate);
        _isZhuxianHit = IsZhuXianHit(_aZhuXianHitRate);
        _isZhuxianHit = false;//IsZhuXianHit(_aZhuXianHitRate);
        if (_isZhongJi)
        {
            _isCrit = true;
@@ -956,6 +931,33 @@
            }
        }
        var _skill = _hero.SkillMgr.Get(skillId);
        if (StatusMgr.Instance.TryGetSkillEffectValue(_hero.ServerInstID, 4526, out _effectValue))
        {
            bool _vaild = true;
            if (_effectValue.value2 == 1)
            {
                if (_hero.SelectTarget == null
                 || _hero.SelectTarget.ServerInstID != target.ServerInstID)
                {
                    _vaild = false;
                }
            }
            if (_effectValue.value3 == 1)
            {
                if (_skill.skillInfo.config.FuncType != (int)E_SkillFuncType.NormalAttack
                 && _skill.skillInfo.config.FuncType != (int)E_SkillFuncType.FaBaoActiveSkill)
                {
                    _vaild = false;
                }
            }
            if (_vaild)
            {
                _rate += _effectValue.value1;
            }
        }
#if UNITY_EDITOR
        var _random = Random.Range(0, 10000);
        var _result = _random < _rate;