From 8aa2d957bc4da1810c7d25b4452a24ad1b86a15b Mon Sep 17 00:00:00 2001 From: Andrew Gilewsky Date: Wed, 10 Jul 2024 23:45:19 +0100 Subject: [PATCH] DSR: config to disable automatic anti-kb. --- .../Dawntrail/Extreme/Ex2ZoraalJa/Ex2ZoraalJaStates.cs | 2 +- BossMod/Modules/Endwalker/Ultimate/DSW2/DSW2Config.cs | 3 +++ .../Modules/Endwalker/Ultimate/DSW2/P2SanctityOfTheWard2.cs | 4 +++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/BossMod/Modules/Dawntrail/Extreme/Ex2ZoraalJa/Ex2ZoraalJaStates.cs b/BossMod/Modules/Dawntrail/Extreme/Ex2ZoraalJa/Ex2ZoraalJaStates.cs index 17f0bdfdb..147cf1df6 100644 --- a/BossMod/Modules/Dawntrail/Extreme/Ex2ZoraalJa/Ex2ZoraalJaStates.cs +++ b/BossMod/Modules/Dawntrail/Extreme/Ex2ZoraalJa/Ex2ZoraalJaStates.cs @@ -277,7 +277,7 @@ private void ProjectionOfTurmoil2(uint id, float delay) Cast(id, AID.ProjectionOfTurmoil, delay, 5, "Moving line with stacks") .ActivateOnEnter(); HalfFull(id + 0x100, 16.6f); - HalfFull(id + 0x200, 2.8f); + HalfFull(id + 0x200, 2.9f); HalfFull(id + 0x300, 4.1f); BitterWhirlwind(id + 0x400, 3.9f) .DeactivateOnExit(); diff --git a/BossMod/Modules/Endwalker/Ultimate/DSW2/DSW2Config.cs b/BossMod/Modules/Endwalker/Ultimate/DSW2/DSW2Config.cs index 908453841..1f37abe14 100644 --- a/BossMod/Modules/Endwalker/Ultimate/DSW2/DSW2Config.cs +++ b/BossMod/Modules/Endwalker/Ultimate/DSW2/DSW2Config.cs @@ -15,6 +15,9 @@ public class DSW2Config() : ConfigNode() [PropertyDisplay("P2 Sanctity of the Ward (charges): role responsible for balancing groups (if not set, swap with role partner instead)")] public Role P2SanctitySwapRole; + [PropertyDisplay("P2 Sanctity of the Ward (meteors): automatically use knockback immunity if needed")] + public bool P2Sanctity2AutomaticAntiKB = true; + [PropertyDisplay("P2 Sanctity of the Ward (meteors): pair assignments")] [GroupDetails(["North", "East", "South", "West"])] [GroupPreset("MT/R1 N, OT/R2 S, H1/M1 E, H2/M2 W", [0, 2, 1, 3, 1, 3, 0, 2])] diff --git a/BossMod/Modules/Endwalker/Ultimate/DSW2/P2SanctityOfTheWard2.cs b/BossMod/Modules/Endwalker/Ultimate/DSW2/P2SanctityOfTheWard2.cs index 065a6deec..8ba5d7269 100644 --- a/BossMod/Modules/Endwalker/Ultimate/DSW2/P2SanctityOfTheWard2.cs +++ b/BossMod/Modules/Endwalker/Ultimate/DSW2/P2SanctityOfTheWard2.cs @@ -7,9 +7,11 @@ class P2SanctityOfTheWard2VoidzoneIce(BossModule module) : Components.Persistent class P2SanctityOfTheWard2Knockback(BossModule module) : Components.KnockbackFromCastTarget(module, ActionID.MakeSpell(AID.FaithUnmoving), 16) { + private readonly DSW2Config _config = Service.Config.Get(); + public override void AddAIHints(int slot, Actor actor, PartyRolesConfig.Assignment assignment, AIHints hints) { - if (Casters.Count > 0 && !actor.Position.InCircle(Module.Center, 12)) + if (_config.P2Sanctity2AutomaticAntiKB && Casters.Count > 0 && !actor.Position.InCircle(Module.Center, 12)) { var action = actor.Class.GetClassCategory() is ClassCategory.Healer or ClassCategory.Caster ? ActionID.MakeSpell(ClassShared.AID.Surecast) : ActionID.MakeSpell(ClassShared.AID.ArmsLength); hints.ActionsToExecute.Push(action, actor, ActionQueue.Priority.High);