From 19c124fd2eb4bffbe197db03952fd58ee402be26 Mon Sep 17 00:00:00 2001 From: CarnifexOptimus <156172553+CarnifexOptimus@users.noreply.github.com> Date: Sat, 22 Feb 2025 20:33:57 +0100 Subject: [PATCH] code analyzer fixes --- BossMod/Components/BaitAway.cs | 2 +- .../Savage/M03SBruteBomber/Lariat.cs | 2 +- .../Dawntrail/Ultimate/FRU/P2DiamondDust.cs | 2 +- .../Ultimate/FRU/P4DarklitDragonsong.cs | 2 +- .../C01ASS/C013Shadowcaster/InfernWave.cs | 2 +- .../Extreme/Ex6Golbez/AzdajasShadow.cs | 2 +- .../P10SPandaemonium/PandaemoniacMeltdown.cs | 4 ++-- .../Savage/P12S1Athena/SuperchainTheory.cs | 2 +- .../Savage/P12S2PallasAthena/Gaiaochos.cs | 2 +- .../P12S2PallasAthena/PalladianGrasp.cs | 2 +- .../Savage/P3SPhoinix/StormsOfAsphodelos.cs | 6 ++--- .../P8S2Hephaistos/EndOfDaysTethered.cs | 2 +- .../Ultimate/DSW2/P6HallowedWings.cs | 2 +- .../Dungeon/D09GrandCosmos/D092LeannanSith.cs | 22 +++++++++---------- 14 files changed, 26 insertions(+), 28 deletions(-) diff --git a/BossMod/Components/BaitAway.cs b/BossMod/Components/BaitAway.cs index eba66edacb..3080a3ebf7 100644 --- a/BossMod/Components/BaitAway.cs +++ b/BossMod/Components/BaitAway.cs @@ -376,7 +376,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) if (ActiveBaits.Count == 0) return; base.AddHints(slot, actor, hints); - if (ActiveBaitsOn(actor).Any(b => PlayersClippedBy(b).Any())) + if (ActiveBaitsOn(actor).Any(b => PlayersClippedBy(b).Count != 0)) hints.Add(BaitAwayHint); } } diff --git a/BossMod/Modules/Dawntrail/Savage/M03SBruteBomber/Lariat.cs b/BossMod/Modules/Dawntrail/Savage/M03SBruteBomber/Lariat.cs index 0643f5569d..897ae0895c 100644 --- a/BossMod/Modules/Dawntrail/Savage/M03SBruteBomber/Lariat.cs +++ b/BossMod/Modules/Dawntrail/Savage/M03SBruteBomber/Lariat.cs @@ -32,7 +32,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) } else { - hints.Add("Spread!", clipped.Any()); + hints.Add("Spread!", clipped.Count != 0); } } } diff --git a/BossMod/Modules/Dawntrail/Ultimate/FRU/P2DiamondDust.cs b/BossMod/Modules/Dawntrail/Ultimate/FRU/P2DiamondDust.cs index 40fc0c946e..642818ee54 100644 --- a/BossMod/Modules/Dawntrail/Ultimate/FRU/P2DiamondDust.cs +++ b/BossMod/Modules/Dawntrail/Ultimate/FRU/P2DiamondDust.cs @@ -89,7 +89,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) { if (baitIndex < 0) hints.Add("Stay closer to bait!"); - else if (PlayersClippedBy(CurrentBaits[baitIndex]).Any()) + else if (PlayersClippedBy(CurrentBaits[baitIndex]).Count != 0) hints.Add("Bait cone away from raid!"); } diff --git a/BossMod/Modules/Dawntrail/Ultimate/FRU/P4DarklitDragonsong.cs b/BossMod/Modules/Dawntrail/Ultimate/FRU/P4DarklitDragonsong.cs index 6329f20ad9..bbf4daee71 100644 --- a/BossMod/Modules/Dawntrail/Ultimate/FRU/P4DarklitDragonsong.cs +++ b/BossMod/Modules/Dawntrail/Ultimate/FRU/P4DarklitDragonsong.cs @@ -173,7 +173,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) { if (baitIndex < 0) hints.Add("Stay closer to bait!"); - else if (PlayersClippedBy(CurrentBaits[baitIndex]).Any()) + else if (PlayersClippedBy(CurrentBaits[baitIndex]).Count != 0) hints.Add("Bait cone away from raid!"); } diff --git a/BossMod/Modules/Endwalker/Criterion/C01ASS/C013Shadowcaster/InfernWave.cs b/BossMod/Modules/Endwalker/Criterion/C01ASS/C013Shadowcaster/InfernWave.cs index 855b1e0d68..199f31161b 100644 --- a/BossMod/Modules/Endwalker/Criterion/C01ASS/C013Shadowcaster/InfernWave.cs +++ b/BossMod/Modules/Endwalker/Criterion/C01ASS/C013Shadowcaster/InfernWave.cs @@ -50,7 +50,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) if (t.target == actor) { ++numBaits; - clipping |= Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, b.Source.Position, t.dir).Any(); + clipping |= Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, b.Source.Position, t.dir).Count != 0; } else { diff --git a/BossMod/Modules/Endwalker/Extreme/Ex6Golbez/AzdajasShadow.cs b/BossMod/Modules/Endwalker/Extreme/Ex6Golbez/AzdajasShadow.cs index 791b16cd96..61c2391b55 100644 --- a/BossMod/Modules/Endwalker/Extreme/Ex6Golbez/AzdajasShadow.cs +++ b/BossMod/Modules/Endwalker/Extreme/Ex6Golbez/AzdajasShadow.cs @@ -45,7 +45,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) { if (_playerStacks[slot] >= 2) hints.Add("Pass aggro!"); - if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Any()) + if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Count != 0) hints.Add("GTFO from raid!"); } else if (CurrentBaits.Count > 0) diff --git a/BossMod/Modules/Endwalker/Savage/P10SPandaemonium/PandaemoniacMeltdown.cs b/BossMod/Modules/Endwalker/Savage/P10SPandaemonium/PandaemoniacMeltdown.cs index d728834374..53051719e6 100644 --- a/BossMod/Modules/Endwalker/Savage/P10SPandaemonium/PandaemoniacMeltdown.cs +++ b/BossMod/Modules/Endwalker/Savage/P10SPandaemonium/PandaemoniacMeltdown.cs @@ -14,12 +14,12 @@ public override void AddHints(int slot, Actor actor, TextHints hints) var isSpread = _spreadTargets.Contains(actor); if (_spreadTargets.Any(t => t != actor && _shapeSpread.Check(actor.Position, Module.PrimaryActor.Position, Angle.FromDirection(t.Position - Module.PrimaryActor.Position)))) hints.Add("GTFO from other spreads!"); - if (isSpread && Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shapeSpread, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Any()) + if (isSpread && Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shapeSpread, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Count != 0) hints.Add("Aim spread away from raid!"); if (_stackTarget == actor) { - if (_spreadTargets.InShape(_shapeStack, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Any()) + if (_spreadTargets.InShape(_shapeStack, Module.PrimaryActor.Position, Angle.FromDirection(actor.Position - Module.PrimaryActor.Position)).Count != 0) hints.Add("Aim stack away from spreads!"); } else if (_stackTarget != null) diff --git a/BossMod/Modules/Endwalker/Savage/P12S1Athena/SuperchainTheory.cs b/BossMod/Modules/Endwalker/Savage/P12S1Athena/SuperchainTheory.cs index 97f362713a..6c27da045a 100644 --- a/BossMod/Modules/Endwalker/Savage/P12S1Athena/SuperchainTheory.cs +++ b/BossMod/Modules/Endwalker/Savage/P12S1Athena/SuperchainTheory.cs @@ -66,7 +66,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) hints.Add("GTFO from aoe!"); break; case Shape.Spread: - hints.Add("Spread!", Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shapeSpread, c.Origin.Position, Angle.FromDirection(actor.Position - c.Origin.Position)).Any()); + hints.Add("Spread!", Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shapeSpread, c.Origin.Position, Angle.FromDirection(actor.Position - c.Origin.Position)).Count != 0); break; case Shape.Pairs: var actorIsSupport = actor.Class.IsSupport(); diff --git a/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/Gaiaochos.cs b/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/Gaiaochos.cs index a986f0788f..c88e46a8f0 100644 --- a/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/Gaiaochos.cs +++ b/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/Gaiaochos.cs @@ -91,7 +91,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) if (_vulnerable[slot]) { var source = _tethers.Find(t => t.target == actor).source; - var numHit = source != null ? Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, source.Position, Angle.FromDirection(actor.Position - source.Position)).Count() : 0; + var numHit = source != null ? Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, source.Position, Angle.FromDirection(actor.Position - source.Position)).Count : 0; if (numHit == 0) hints.Add("Hide behind partner!"); else if (numHit > 1) diff --git a/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/PalladianGrasp.cs b/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/PalladianGrasp.cs index c09737af7e..3eda7514d6 100644 --- a/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/PalladianGrasp.cs +++ b/BossMod/Modules/Endwalker/Savage/P12S2PallasAthena/PalladianGrasp.cs @@ -18,7 +18,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) { if (actor.InstanceID == target.InstanceID) { - if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, Origin(target), default).Any()) + if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, Origin(target), default).Count != 0) hints.Add("Bait away from raid!"); } else diff --git a/BossMod/Modules/Endwalker/Savage/P3SPhoinix/StormsOfAsphodelos.cs b/BossMod/Modules/Endwalker/Savage/P3SPhoinix/StormsOfAsphodelos.cs index 9a87b5c02a..dd7d76103a 100644 --- a/BossMod/Modules/Endwalker/Savage/P3SPhoinix/StormsOfAsphodelos.cs +++ b/BossMod/Modules/Endwalker/Savage/P3SPhoinix/StormsOfAsphodelos.cs @@ -128,8 +128,6 @@ public override void DrawArenaForeground(int pcSlot, Actor pc) } } - private IEnumerable<(int, Actor)> FindPlayersInWinds(Actor origin, Actor target) - { - return Raid.WithSlot(false, true, true).InShape(_windsAOE, origin.Position, Angle.FromDirection(target.Position - origin.Position)); - } + private List<(int, Actor)> FindPlayersInWinds(Actor origin, Actor target) + => Raid.WithSlot(false, true, true).InShape(_windsAOE, origin.Position, Angle.FromDirection(target.Position - origin.Position)); } diff --git a/BossMod/Modules/Endwalker/Savage/P8S2Hephaistos/EndOfDaysTethered.cs b/BossMod/Modules/Endwalker/Savage/P8S2Hephaistos/EndOfDaysTethered.cs index fe52d86fbd..a486707260 100644 --- a/BossMod/Modules/Endwalker/Savage/P8S2Hephaistos/EndOfDaysTethered.cs +++ b/BossMod/Modules/Endwalker/Savage/P8S2Hephaistos/EndOfDaysTethered.cs @@ -14,7 +14,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) if (tetheredCaster == null) return; // non-tethered players shouldn't need to worry about this mechanic - if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, tetheredCaster).Any()) + if (Raid.WithoutSlot(false, true, true).Exclude(actor).InShape(_shape, tetheredCaster).Count != 0) hints.Add("Bait away from raid!"); if (_tethers.Any(t => t.target != actor && _shape.Check(actor.Position, t.source))) hints.Add("Move away from other baits!"); diff --git a/BossMod/Modules/Endwalker/Ultimate/DSW2/P6HallowedWings.cs b/BossMod/Modules/Endwalker/Ultimate/DSW2/P6HallowedWings.cs index eb469e7541..a8430005e5 100644 --- a/BossMod/Modules/Endwalker/Ultimate/DSW2/P6HallowedWings.cs +++ b/BossMod/Modules/Endwalker/Ultimate/DSW2/P6HallowedWings.cs @@ -77,7 +77,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) { if (shouldBait) { - if (ActiveBaitsOn(actor).Any(b => PlayersClippedBy(b).Any())) + if (ActiveBaitsOn(actor).Any(b => PlayersClippedBy(b).Count != 0)) hints.Add("Bait away from raid!"); } else diff --git a/BossMod/Modules/Shadowbringers/Dungeon/D09GrandCosmos/D092LeannanSith.cs b/BossMod/Modules/Shadowbringers/Dungeon/D09GrandCosmos/D092LeannanSith.cs index d4ab8742d2..9a7059b079 100644 --- a/BossMod/Modules/Shadowbringers/Dungeon/D09GrandCosmos/D092LeannanSith.cs +++ b/BossMod/Modules/Shadowbringers/Dungeon/D09GrandCosmos/D092LeannanSith.cs @@ -66,13 +66,13 @@ public override IEnumerable ActiveAOEs(int slot, Actor actor) public override void OnStatusGain(Actor actor, ActorStatus status) { - if ((SID)status.ID == SID.Transporting) + if (status.ID == (uint)SID.Transporting) transporting.Set(Raid.FindSlot(actor.InstanceID)); } public override void OnStatusLose(Actor actor, ActorStatus status) { - if ((SID)status.ID == SID.Transporting) + if (status.ID == (uint)SID.Transporting) transporting[Raid.FindSlot(actor.InstanceID)] = default; } @@ -98,17 +98,17 @@ private static Square[] GenerateRotatedTiles(float angle) public override void OnCastStarted(Actor caster, ActorCastInfo spell) { - if ((AID)spell.Action.ID == AID.DirectSeeding) + if (spell.Action.ID == (uint)AID.DirectSeeding) ++NumCasts; - else if ((AID)spell.Action.ID == AID.IrefulWind) + else if (spell.Action.ID == (uint)AID.IrefulWind) { - var knockbackDirection = new Angle(MathF.Round(spell.Rotation.Deg / 90) * 90) * Angle.DegToRad; + var knockbackDirection = new Angle(MathF.Round(spell.Rotation.Deg / 90f) * 90f) * Angle.DegToRad; var offset = 10 * knockbackDirection.ToDirection(); var tileList = tiles.ToList(); var newTiles = new List(10); for (var i = 0; i < tileList.Count; ++i) tileList[i] = new(tileList[i].Center - offset, tileList[i].HalfSize); - foreach (var t in tileList.Where(x => (caster.Position - x.Center).LengthSq() > 625)) + foreach (var t in tileList.Where(x => (caster.Position - x.Center).LengthSq() > 625f)) newTiles.Add(new(t.Center + offset, t.HalfSize)); tileList.AddRange(newTiles); tiles = [.. tileList]; @@ -133,18 +133,18 @@ public override void AddAIHints(int slot, Actor actor, PartyRolesConfig.Assignme transportingCheckStartTimes.Remove(actor); } - private IEnumerable GetClippedSeeds(AOEInstance shape) + private List GetClippedSeeds(AOEInstance shape) => Module.Enemies(D092LeananSith.Seeds).Where(x => x.IsTargetable).InShape(shape.Shape, shape.Origin, default); private void HandleNonTransportingActor(Actor actor, AIHints hints, IEnumerable clippedSeeds, Actor closestSeed) { var forbidden = new List>(4); foreach (var seed in clippedSeeds) - forbidden.Add(ShapeDistance.InvertedCircle(seed.Position, 3)); + forbidden.Add(ShapeDistance.InvertedCircle(seed.Position, 3f)); var distance = (actor.Position - closestSeed.Position).LengthSq(); - if (forbidden.Count > 0 && distance > 9) + if (forbidden.Count > 0 && distance > 9f) hints.AddForbiddenZone(ShapeDistance.Intersection(forbidden)); - else if (distance < 9) + else if (distance < 9f) hints.InteractWithTarget = closestSeed; } @@ -172,7 +172,7 @@ public override void AddHints(int slot, Actor actor, TextHints hints) else if (!trans) { var aoes = ActiveAOEs(slot, actor).FirstOrDefault(); - if (aoes.Shape != null && GetClippedSeeds(aoes).Any()) + if (aoes.Shape != null && GetClippedSeeds(aoes).Count != 0) hints.Add("Pick up seeds in vulnerable squares!"); } }