using Milimoe.FunGame.Core.Entity; using Milimoe.FunGame.Core.Library.Constant; namespace Oshima.FunGame.OshimaModules.Effects.SkillEffects { public class 强驱散特效 : Effect { public override long Id => Skill.Id; public override string Name => Skill.Name; public override string Description => $"强驱散{(Skill.CanSelectTargetCount > 1 ? $"至多 {Skill.CanSelectTargetCount} 个" : "")}目标。"; public override DispelType DispelType => DispelType.Strong; public 强驱散特效(Skill skill) : base(skill) { GamingQueue = skill.GamingQueue; } public override void OnSkillCasted(Character caster, List targets, Dictionary others) { Dictionary isTeammateDictionary = GamingQueue?.GetIsTeammateDictionary(caster, targets) ?? []; foreach (Character target in targets) { WriteLine($"[ {caster} ] 强驱散了 [ {target} ] !"); bool isEnemy = true; if (isTeammateDictionary.TryGetValue(target, out bool value)) { isEnemy = !value; } Dispel(caster, target, isEnemy); } } } }