From 6c3f31af81acdac6fb446a325601b53e793affa4 Mon Sep 17 00:00:00 2001 From: Christian Date: Mon, 17 Feb 2025 17:16:56 +0100 Subject: [PATCH] Disable drawing if player has AoE to bait and dont need to form any thing (#254) * Disable drawing if player has AoE If the player has an aoe to bait the script dont show any information. player must know his spot * enable log again --- .../P2 Light Rampant JP.cs | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/SplatoonScripts/Duties/Dawntrail/The Futures Rewritten/P2 Light Rampant JP.cs b/SplatoonScripts/Duties/Dawntrail/The Futures Rewritten/P2 Light Rampant JP.cs index 3e031c4e..9edf824a 100644 --- a/SplatoonScripts/Duties/Dawntrail/The Futures Rewritten/P2 Light Rampant JP.cs +++ b/SplatoonScripts/Duties/Dawntrail/The Futures Rewritten/P2 Light Rampant JP.cs @@ -14,6 +14,7 @@ using Splatoon; using Splatoon.SplatoonScripting; using Splatoon.SplatoonScripting.Priority; +using ECommons.DalamudServices; namespace SplatoonScriptsOfficial.Duties.Dawntrail.The_Futures_Rewritten; @@ -39,10 +40,11 @@ public enum State } private readonly HashSet _aoeTargets = new(); - + private bool _PlayerHasAoE; + private State _state = State.None; public override HashSet? ValidTerritories => [1238]; - public override Metadata? Metadata => new(2, "Garume"); + public override Metadata? Metadata => new(3, "Garume, Lusaca"); public Config C => Controller.GetConfig(); @@ -59,13 +61,21 @@ public override void OnReset() { _state = State.None; _aoeTargets.Clear(); + _PlayerHasAoE = false; } public override void OnVFXSpawn(uint target, string vfxPath) { if (_state is (State.Start or State.Split) && vfxPath == "vfx/lockon/eff/target_ae_s7k1.avfx") { - if (target.GetObject() is IPlayerCharacter player) _aoeTargets.Add(player.Name.ToString()); + if (target.GetObject() is IPlayerCharacter player) + { + _aoeTargets.Add(player.Name.ToString()); + + if (player.Name.ToString().Equals(Svc.ClientState.LocalPlayer.Name.ToString())) + _PlayerHasAoE = true; + + } var count = 0; foreach (var aoeTarget in _aoeTargets) @@ -119,7 +129,8 @@ public override void OnStartingCast(uint source, uint castId) public override void OnUpdate() { - if (_state == State.Split) + + if (_state == State.Split && !_PlayerHasAoE) Controller.GetRegisteredElements() .Each(x => x.Value.color = GradientColor.Get(C.BaitColor1, C.BaitColor2).ToUint()); else @@ -204,4 +215,4 @@ public class Config : IEzConfig public int PlayersCount = 2; } -} \ No newline at end of file +}