Use ClassicAPI CastSpellNoToggle for the ! anti-toggle prefix

Unify both ! mechanisms (bare !spell gate-injection and bracketed
[cond] !spell dispatch skip) on ClassicAPI's CastSpellNoToggle, which
no-ops auto-repeat (Shoot/Auto Shot/Wand) and toggle auras
(forms/stances/aspects/seals) instead of toggling them off.

- Bare !spell now just sets conditionals.noSpam (no injected gate
  conditional); removed spamConditions and GetSpammableConditional.
- Dispatch: melee Attack still uses AttackTarget (CastSpellNoToggle
  doesn't cover the melee swing). For everything else under !, keep the
  ValidatePlayerBuff anti-refresh skip (CastSpellNoToggle only covers
  true toggle auras, not regular self-buffs like Mark of the Wild),
  otherwise CastSpellNoToggle. This is more reliable for auto-repeat
  than the old CheckChanneled path.

CheckChanneled is retained (still used by the [channeled]/[checkchanneled]
conditionals).
This commit is contained in:
Brues
2026-06-21 02:55:40 -05:00
parent a561d0ed20
commit 9f10dab560
3 changed files with 19 additions and 52 deletions
-5
View File
@@ -216,11 +216,6 @@ CleveRoids.reactiveSpells = {
["Aquatic Form"] = true,
}
CleveRoids.spamConditions = {
[CleveRoids.Localized.Attack] = "checkchanneled",
[CleveRoids.Localized.AutoShot] = "checkchanneled",
[CleveRoids.Localized.Shoot] = "checkchanneled",
}
-- PERFORMANCE: Static lookup for toggled buff abilities (built once, used per-frame)
CleveRoids._toggledBuffAbilities = {