少年修仙传客户端代码仓库
client_Lhy
2019-06-22 7346fdf58ba740788c1f20c2cc82d75f77ba6db2
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
2个文件已添加
2个文件已修改
142 ■■■■■ 已修改文件
Core/NetworkPackage/ClientPack/ClientToMapServer/CB4_Fight/CB40D_tagCMYinji.cs 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToMapServer/CB4_Fight/CB40D_tagCMYinji.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/HeroBehaviour.cs 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/Skill/AttackHandler.cs 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToMapServer/CB4_Fight/CB40D_tagCMYinji.cs
New file
@@ -0,0 +1,20 @@
// B4 0D 战斗印记 #tagCMYinji
public class CB40D_tagCMYinji : GameNetPackBasic
{
    public byte Count;
    public byte Type;    // 0 加,1减
    public CB40D_tagCMYinji()
    {
        combineCmd = (ushort)0x03FE;
        _cmd = (ushort)0xB40D;
    }
    public override void WriteToBytes()
    {
        WriteBytes(Count, NetDataType.BYTE);
        WriteBytes(Type, NetDataType.BYTE);
    }
}
Core/NetworkPackage/ClientPack/ClientToMapServer/CB4_Fight/CB40D_tagCMYinji.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: ad79c40cfec9a9f4281f96a1d17947aa
timeCreated: 1561174277
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Fight/Actor/HeroBehaviour.cs
@@ -905,6 +905,8 @@
            }
        }
        HandleExpertSkillWhenCast(skill.id);
        if (skill.hitClientBattleTargetList.Count > 0)
        {
            GActorFight _target = null;
@@ -1198,18 +1200,57 @@
        return true;
    }
    private void HandleExpertSkillWhenCast(int skillID)
    {
        int _expertSkillId = 0;
        if (tsModel.TryGetExpertSkill(skillID, out _expertSkillId))
        {
            var _skillInfo = SkillHelper.Instance.Get(_expertSkillId);
            SkillHelper.EffectValue _effectValue;
            if (_skillInfo.config.SkillType == (int)E_SkillType.Passive
             || _skillInfo.config.SkillType == (int)E_SkillType.PassiveControlBuff)
            {
                if (_skillInfo.effectValue.TryGetValue(4085, out _effectValue))
                {
                    var _b40d = new CB40D_tagCMYinji();
                    _b40d.Count = (byte)_effectValue.value1;
                    _b40d.Type = 0;
                    GameNetSystem.Instance.SendInfo(_b40d);
                }
                if (_skillInfo.effectValue.TryGetValue(4092, out _effectValue))
                {
                    var _b40d = new CB40D_tagCMYinji();
                    _b40d.Count = (byte)_effectValue.value1;
                    _b40d.Type = 1;
                    GameNetSystem.Instance.SendInfo(_b40d);
                }
            }
            else if (_skillInfo.config.SkillType == (int)E_SkillType.PassiveGainBuff)
            {
                if (_skillInfo.effectValue.TryGetValue(4091, out _effectValue))
                {
                    var _b40d = new CB40D_tagCMYinji();
                    _b40d.Count = (byte)_effectValue.value1;
                    _b40d.Type = 0;
                    GameNetSystem.Instance.SendInfo(_b40d);
                }
            }
        }
    }
    private void HandleExpertSkill(int skillID, uint aSid, uint tSid)
    {
        // if (!ClientSceneManager.Instance.IsClientFightMode)
        // {
        //     return;
        // }
        // 增加一些buff效果
        int _expertSkillId = 0;
        if (tsModel.TryGetExpertSkill(skillID, out _expertSkillId))
        {
            var _skillInfo = SkillHelper.Instance.Get(_expertSkillId);
            if (_skillInfo.config.SkillType != (int)E_SkillType.PassiveSustainedReduction/* 非被动减益buff */)
            {
                return;
            }
            SkillHelper.EffectValue _effectValue;
            // 不满足概率
@@ -1221,7 +1262,10 @@
                }
            }
            StatusMgr.Instance.AddClientBuff(tSid, _expertSkillId, aSid, 0, _skillInfo.config.LastTime6);
            if (_skillInfo.config.SkillType == (int)E_SkillType.PassiveSustainedReduction)
            {
                StatusMgr.Instance.AddClientBuff(tSid, _expertSkillId, aSid, 0, _skillInfo.config.LastTime6);
            }
        }
    }
}
Fight/Actor/Skill/AttackHandler.cs
@@ -1,4 +1,5 @@
using System.Collections.Generic;
using Snxxz.UI;
using UnityEngine;
public static class AttackHandler
@@ -7,6 +8,16 @@
    /// 攻击者服务器id, 被击者服务器id, 攻击类型, 伤害
    /// </summary>
    public static UnityEngine.Events.UnityAction<uint, uint, byte, uint> OnAttackTarget;
    private static TreasureSkillModel m_tsModel;
    private static TreasureSkillModel TsSkillModel
    {
        get
        {
            return m_tsModel ?? (m_tsModel = ModelCenter.Instance.GetModel<TreasureSkillModel>());
        }
    }
    public static void HandlerAttackTarget(GActorFight attacker,
                                           GActorFight target,
@@ -354,6 +365,18 @@
                                       ref uint hurtValue,
                                       ref byte attackType)
    {
        SkillHelper.SkillInfo _exceptSkill = null;
        if (attacker is GA_Hero)
        {
            int _exceptSkillId = 0;
            if (TsSkillModel.TryGetExpertSkill(skill.skillInfo.config.SkillID, out _exceptSkillId))
            {
                _exceptSkill = SkillHelper.Instance.Get(_exceptSkillId);
            }
        }
        int _hitRate = 1;
        int _missRate = 0;
@@ -520,7 +543,7 @@
            if (attacker.ServerInstID == PlayerDatas.Instance.PlayerId)
            {
                _isZhongJi = IsZhongji(target);
                _isZhongJi = IsZhongji(skill.id, target);
            }
        }
@@ -868,6 +891,14 @@
        {
            attackType = (byte)HurtAttackType.Normal;
        }
        if (_exceptSkill != null && _exceptSkill.effectValue.ContainsKey(4092))
        {
            if (PlayerDatas.Instance.baseData.yinjiCount > 0)
            {
                attackType = (byte)HurtAttackType.Yinji;
            }
        }
    }
    private static bool IsMiss(int hit, int miss)
@@ -875,7 +906,7 @@
        return hit * 1f / (hit + miss) - Random.Range(0f, 1f) < 0;
    }
    private static bool IsZhongji(GActorFight target)
    private static bool IsZhongji(int skillId, GActorFight target)
    {
        var _hero = PlayerDatas.Instance.hero;
        if (_hero == null
@@ -884,7 +915,21 @@
            return false;
        }
        SkillHelper.EffectValue _effectValue;
        SkillHelper.SkillInfo _skillInfo;
        int _rate = 0;
        int _exceptSkillId = 0;
        if (TsSkillModel.TryGetExpertSkill(skillId, out _exceptSkillId))
        {
            var _esSkillInfo = SkillHelper.Instance.Get(_exceptSkillId);
            if (_esSkillInfo.effectValue.TryGetValue(4081, out _effectValue))
            {
                _rate += _effectValue.value1;
            }
        }
        var _dict = StatusMgr.Instance.ZhongJiDict;
        foreach (var _info in _dict.Values)
        {
@@ -900,9 +945,6 @@
                _rate += _info.rate;
            }
        }
        SkillHelper.EffectValue _effectValue;
        SkillHelper.SkillInfo _skillInfo;
        if (_hero.SkillMgr.TryGetPassiveEffectValue(4081, out _effectValue, out _skillInfo))
        {
            if (_effectValue.value2 == 1)
@@ -962,6 +1004,7 @@
    {
        SkillHelper.EffectValue _effectValue;
        SkillHelper.SkillInfo _skillInfo;
        #region 伤害增加
        if (skillInfo.effectValue.TryGetValue(1062, out _effectValue))
@@ -1074,6 +1117,7 @@
                    _needCount = PlayerDatas.Instance.baseData.yinjiCount > _needCount ?
                                 _needCount : PlayerDatas.Instance.baseData.yinjiCount;
                    _aAtkSkillPer += _per * _needCount;
                    Debug.LogFormat("11111111111111111111");
                }
            }