diff --git a/OshimaModules/Effects/PassiveEffects/长期监视.cs b/OshimaModules/Effects/PassiveEffects/长期监视.cs index 1195d5a..3fa8b5b 100644 --- a/OshimaModules/Effects/PassiveEffects/长期监视.cs +++ b/OshimaModules/Effects/PassiveEffects/长期监视.cs @@ -76,6 +76,8 @@ namespace Oshima.FunGame.OshimaModules.Effects.PassiveEffects }; e.CopiedSkill.Values[nameof(时雨标记)] = 1; e.CopiedSkill.CurrentCD = 0; + e.CopiedSkill.FreeCostEP = true; + e.CopiedSkill.FreeCostMP = true; e.CopiedSkill.Enable = true; e.CopiedSkill.IsInEffect = false; e.OnEffectGained(Source); diff --git a/OshimaModules/Skills/QuDuoduo/弱者猎手.cs b/OshimaModules/Skills/QuDuoduo/弱者猎手.cs index fa3ad01..59a44f7 100644 --- a/OshimaModules/Skills/QuDuoduo/弱者猎手.cs +++ b/OshimaModules/Skills/QuDuoduo/弱者猎手.cs @@ -1,4 +1,5 @@ using Milimoe.FunGame.Core.Entity; +using Milimoe.FunGame.Core.Interface.Entity; using Milimoe.FunGame.Core.Library.Constant; namespace Oshima.FunGame.OshimaModules.Skills @@ -38,22 +39,20 @@ namespace Oshima.FunGame.OshimaModules.Skills return 0; } - public override void AlterSelectListBeforeAction(Character character, List enemys, List teammates, List skills, Dictionary continuousKilling, Dictionary earnedMoney) + public override void AlterSelectListBeforeSelection(Character character, ISkill skill, List enemys, List teammates) { 猎手标记.Clear(); - IEnumerable list = [.. enemys.Where(e => e.HP > 0).OrderBy(e => e.HP / e.MaxHP)]; - if (list.Any()) + AddHalfOfMe([.. enemys.Where(e => e.HP > 0).OrderBy(e => e.HP / e.MaxHP)]); + if (猎手标记.Count > 0) { - Character first = list.First(); + WriteLine($"[ {character} ] 的弱者猎手标记了以下角色:[ {string.Join(" ] / [ ", 猎手标记)} ] !"); if (IsCharacterInAIControlling(character)) { enemys.Clear(); - enemys.Add(first); + int count = skill.RealCanSelectTargetCount(enemys, teammates); + enemys.AddRange(猎手标记.Take(count)); + WriteLine($"[ {character} ] 发动了弱者猎手![ {string.Join(" ] / [ ", enemys)} ] 被盯上了!"); } - 猎手标记.Add(first); - WriteLine($"[ {character} ] 发动了弱者猎手![ {first} ] 被盯上了!"); - AddHalfOfMe(enemys); - if (猎手标记.Count > 0) WriteLine($"[ {character} ] 的弱者猎手标记了以下角色:[ {string.Join(" ] / [ ", 猎手标记)} ] !"); } } diff --git a/OshimaModules/Skills/ShiYu/放监.cs b/OshimaModules/Skills/ShiYu/放监.cs index deb1b00..957c225 100644 --- a/OshimaModules/Skills/ShiYu/放监.cs +++ b/OshimaModules/Skills/ShiYu/放监.cs @@ -52,6 +52,8 @@ namespace Oshima.FunGame.OshimaModules.Skills }; e.CopiedSkill.Values[nameof(时雨标记)] = 1; e.CopiedSkill.CurrentCD = 0; + e.CopiedSkill.FreeCostEP = true; + e.CopiedSkill.FreeCostMP = true; e.CopiedSkill.Enable = true; e.CopiedSkill.IsInEffect = false; e.OnEffectGained(Skill.Character);