45 Commits

Author SHA1 Message Date
Brues ae09b23afd Resolve item sets via ClassicAPI; drop Reliquary dependency
Item-set membership and set info now read ItemSet.dbc directly through
ClassicAPI instead of the nampower/Reliquary glue, so set features no
longer require the Reliquary DLL to be installed.

- ClassicAPI.lua: add GetItemSetIDByID and GetItemSetInfo wrappers.
- Utility.lua: repoint ResolveSetItems, CountEquippedSetItemsBySetId,
  GetEquippedItemSetInfo, and GetEquippedSetPieceCount at the ClassicAPI
  accessors. Set-name matching now uses the DBC name (localized; identical
  to the old enUS path on English clients).
- NampowerAPI.lua: remove the now-unused GetItemSet/GetItemSetId/
  GetItemSetItems/GetItemSetBonuses, the dead GetSpellEffectRadius (no
  callers, only radius source was Reliquary), and the orphaned RQ_SafeCall.
- Init.lua: drop hasReliquary detection and its startup feature line.
- Conditionals.lua: update the [set:] comment (no longer Reliquary-gated).
2026-06-21 14:29:28 -05:00
Brues a8bf7fbc0f Identify equipped weapon type by item subclass, not localized name
HasWeaponEquipped matched the localized GetItemInfo subtype string, which
required a hand-maintained translation of all 13 weapon/shield subtypes per
locale plus brittle "^Fist"/last-word string parsing.

Use the locale-independent class/subclass IDs from C_Item.GetItemInfoInstant
instead:
- Init.lua: WeaponTypeNames entries now carry numeric class + subClass set
  (Axes/Swords/Maces span their 1H+2H subclasses; Shields are armor class 4).
- Conditionals.lua: HasWeaponEquipped resolves the slot's itemID via
  ClassicAPI GetInventoryItemID, then compares classID/subClassID -- no link
  parsing, no string munging.
- Localization.lua: drop the now-unused weapon-subtype strings from every
  locale block (112 lines).
2026-06-21 14:16:56 -05:00
Brues 9f10dab560 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).
2026-06-21 02:55:40 -05:00
Brues a561d0ed20 Make cursor a [cursor] modifier instead of an @cursor token
Per design preference, drop the @ and the ParseMsg special-casing:
[cursor] is now a normal modifier keyword (added to ignoreKeywords,
mirroring [mouseuse]) rather than a pseudo unit token. The cast/use
dispatch still routes through ClassicAPI's CastAtCursor / UseAtCursor
(checked via conditionals.cursor). Reverts the @cursor ParseMsg branch.
2026-06-21 02:36:09 -05:00
Jrc13245 fbbbb1fcce updates for unified tracking 2026-04-01 16:11:47 -04:00
Jrc13245 719021ff65 Add set conditional, rmarkorder, Reliquary DBC integration, and fix immunity tracking false positives 2026-03-27 16:01:34 -04:00
Jrc13245 cb5ce8f824 warn when pfui macrotweak is enabled 2026-03-24 07:22:11 -04:00
Jrc13245 cc87fac66f fix table error 2026-03-19 13:49:09 -04:00
Jrc13245 137e08a209 fix target overflowframe and possible immunity system fix 2026-03-17 18:25:20 -04:00
Jrc13245 348c621c5d remove cleartarget conditional, update stopattack 2026-03-07 11:00:29 -05:00
Jrc13245 0de2747175 update stopattack and cleartarget 2026-03-06 21:16:38 -05:00
Jrc13245 aca7b2af3b retarget conditional, fix defer frame to use polling approach 2026-03-06 20:36:24 -05:00
Jrc13245 52b831c2c2 stopattack and cleartarget conditionals 2026-03-06 20:14:08 -05:00
Jrc13245 17f28dcdfd feature mouseuse and attempt to fix stopattack 2026-03-06 19:43:36 -05:00
Jrc13245 82b2ab889f remove superwow requirement by using nampower, update nampower support to 3_1_0 2026-03-02 19:55:53 -05:00
Jrc13245 9811d9c894 update for nampower 2_41_0 and update readme 2026-02-22 20:00:21 -05:00
Jrc13245 ec43a636d6 update for pfui buff tracking and nampower buff tracking fallback 2026-02-17 19:19:07 -05:00
Jrc13245 37afbd047c update pfui compatibility 2026-02-16 21:32:37 -05:00
Jrc13245 f5e3b862be fix ! prefix with explicit conditionals and Judgement of Light debuff detection 2026-02-16 15:57:41 -05:00
Jrc13245 dae56dbb16 slashcommand whitelist 2026-02-14 10:38:03 -05:00
Jrc13245 ee2de33001 update nampower support to 2_27_2 and pfUI 7_6+ 2026-02-04 16:23:34 -05:00
Jrc13245 f0e2f6f5d9 update immunity system to include acknowledging reflection and invulnerability spells, fix firstaction and nofirstaction slashcommands 2026-01-15 17:11:54 -05:00
Jrc13245 7acfa22e72 add some more memory optimizations 2026-01-10 13:06:45 -05:00
Jrc13245 64c0d9949d re add trinket and ring slashcommands and implement cursive support 2026-01-02 23:37:27 -05:00
Jrc13245 003d230e52 revert multi target tracker 2026-01-02 23:16:57 -05:00
Jrc13245 fe6982ddf6 add equip11 equip12 equip13 and equip14 commands for trinket swapping and ring swapping as theres two choice of slots 2026-01-02 18:45:47 -05:00
Jrc13245 62371a4bc5 fully update immunities system and force clear for version usage 2025-12-29 16:20:47 -05:00
Jrc13245 5b6d8268e0 add pcall to more nampower functions 2025-12-28 11:41:45 -05:00
Jrc13245 370167b3a7 update for nampower errors 2025-12-27 14:38:24 -05:00
Jrc13245 145ed92f77 multiscan targeting based on pepopos cursive 2025-12-26 14:57:54 -05:00
Jrc13245 da23987449 fix nampower errors 2025-12-24 15:05:51 -05:00
Jrc13245 d8b4a097b3 reduce garbage creation and fix channel spell range checks 2025-12-20 13:46:06 -05:00
Jrc13245 f3791c4562 further fixes for debuffs above 16 slots and fixes for item usage 2025-12-19 20:32:52 -05:00
Jrc13245 8a97fa849c fix stopmacro usability broken due to removal of nampower handling 2025-12-15 08:34:57 -05:00
Jrc13245 04f4eacac8 nested macro showtooltip support, nampower queue casting integration, relic slot optimizations, performance updates 2025-12-04 18:10:30 -05:00
Jrc13245 30ed4e2bf9 improve targeting function and further improve equipment mid combat lag. 2025-12-03 08:22:46 -05:00
Jrc13245 442eeb9cbc fix lag of casting and channeling conditionals. 2025-12-02 15:24:48 -05:00
Jrc13245 964df2133b fix toggle spells icon swaps like prowl and shadowmeld and fix debuff conditionals correctly filtering by caster for shared and individual debuffs 2025-11-29 21:54:59 -05:00
Jrc13245 a33f3f21db clarify actual multi and noable multi usage, add AND operator for multi, and fix swintimer to be more intuitive. 2025-11-25 14:23:54 -05:00
Jrc13245 c5a57af024 Fix combo point tracking and queue glow for instant finishers
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 20:28:22 -05:00
Jrc13245 c8017c5485 implement UnitXP functions and update nampower and superwow functions 2025-11-08 17:38:35 -05:00
Jrc13245 c86875849f swimming conditional for druid only 2025-10-26 14:53:42 -04:00
Jrc13245 4c9c6fff60 new pet conditional 2025-10-08 20:46:03 -04:00
Plokertonne 22ff5c430f update hunter reactive spells
remove mongoose bite as now non conditional
add Baited Shot for Beast Mastery tree
add Lacerate for Survival tree
2025-08-19 13:36:12 +03:00
Jrc13245 fb359993b2 Initial Commit 2025-08-18 16:15:25 -04:00