From ee032c35c49d47daba2dee1580b3abbe59d59bd8 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期一, 01 九月 2025 16:29:46 +0800 Subject: [PATCH] 125 【战斗】战斗系统 战斗npc消失的问题处理 --- Main/System/Battle/Skill/SkillBase.cs | 45 ++++++++++++++++++++++++++++++--------------- 1 files changed, 30 insertions(+), 15 deletions(-) diff --git a/Main/System/Battle/Skill/SkillBase.cs b/Main/System/Battle/Skill/SkillBase.cs index 3b9b52b..a3c580b 100644 --- a/Main/System/Battle/Skill/SkillBase.cs +++ b/Main/System/Battle/Skill/SkillBase.cs @@ -362,19 +362,40 @@ continue; } - // 浼ゅ鍒嗗竷 (涓囧垎姣�) - int[] damageDivide = skillConfig.DamageDivide[_hitIndex]; - - long totalDamage = GeneralDefine.GetFactValue(hurt.HurtHP, hurt.HurtHPEx); - - // 淇濊瘉鎵�鏈夊垎閰嶉」鍔犺捣鏉ョ瓑浜巘otalDamage锛岄伩鍏嶅洜鏁撮櫎瀵艰嚧鐨勮宸� - List<long> damageList = BattleUtility.DivideDamageToList(damageDivide, totalDamage); - - OnHitEachTarget(target, totalDamage, damageList, ref hurt); + OnHitEachTarget(_hitIndex, target, hurt); } HandleDead(); } + + + protected virtual void OnHitEachTarget(int _hitIndex, BattleObject target, HB427_tagSCUseSkill.tagSCUseSkillHurt hurt) + { + // 浼ゅ鍒嗗竷 (涓囧垎姣�) + int[] damageDivide = skillConfig.DamageDivide[_hitIndex]; + + long totalDamage = GeneralDefine.GetFactValue(hurt.HurtHP, hurt.HurtHPEx); + + // 淇濊瘉鎵�鏈夊垎閰嶉」鍔犺捣鏉ョ瓑浜巘otalDamage锛岄伩鍏嶅洜鏁撮櫎瀵艰嚧鐨勮宸� + List<long> damageList = BattleUtility.DivideDamageToList(damageDivide, totalDamage); + // public uint ObjID; + // public uint AttackTypes; // 椋樿绫诲瀷姹囨�伙紝鏀寔澶氱绫诲瀷骞跺瓨锛屽鏃犺闃插尽涓旀毚鍑诲悓鏃惰鏍兼尅锛屼簩杩涘埗鎴栬繍绠楁渶缁堝�硷紱0-澶辫触锛�1-鏅�氾紱2-鍥炶锛�5-鏍兼尅锛�6-鏃犺闃插尽锛�7-鏆村嚮锛�9-闂伩 + // public uint HurtHP; // 椋樿鍊硷紝姹備綑浜块儴鍒� + // public uint HurtHPEx; // 椋樿鍊硷紝鏁撮櫎浜块儴鍒� + // public uint CurHP; // 鏇存柊鍓╀綑琛�閲忥紝姹備綑浜块儴鍒� + // public uint CurHPEx; // 鏇存柊鍓╀綑琛�閲忥紝鏁撮櫎浜块儴鍒� + // public uint SuckHP; // 鏈浼ゅ杞寲鐨勫惛琛�閲� + // public uint BounceHP; // 鏈浼ゅ鍙嶅脊鐨勪激瀹抽噺 + + + // TODO YYL AttackTypes 瑕佽〃鐜版垚浠�涔堟牱鍛紵 鏀寔澶氱绫诲瀷骞跺瓨锛屽鏃犺闃插尽涓旀毚鍑诲悓鏃惰鏍兼尅锛屼簩杩涘埗鎴栬繍绠楁渶缁堝�硷紱0-澶辫触锛�1-鏅�氾紱2-鍥炶锛�5-鏍兼尅锛�6-鏃犺闃插尽锛�7-鏆村嚮锛�9-闂伩 + target.Hurt(damageList, totalDamage, hurt.AttackTypes); + + // TODO YYL 杩欓噷鏄鍋氱粺涓�璁$畻鍚庡啀hurt璺焥uckhp杩樻槸鎬庢牱 + // caster.SuckHp(hurt.SuckHP);// 鍚歌 + // caster.HurtByReflect(hurt.BounceHP);// 鍙嶅脊浼ゅ + } + protected void HandleDead() { @@ -484,12 +505,6 @@ } - - protected virtual void OnHitEachTarget(BattleObject target, long totalDamage, List<long> damageList, ref HB427_tagSCUseSkill.tagSCUseSkillHurt hurt) - { - target.Hurt(damageList, totalDamage, hurt.AttackTypes); - - } protected void CheckAfterDeadhPack() { -- Gitblit v1.8.0