Commit Graph
213 Commits
Author SHA1 Message Date
Jrc13245 ee71e6dbda fix non pfui user actionbar updates 2025-11-28 22:54:35 -05:00
Jrc13245 dd84ca0f66 fix boss level as level 63 and fix partial block resists 2025-11-28 21:56:55 -05:00
Jrc13245 d59ccc0821 fix immunity system lag 2025-11-28 21:40:05 -05:00
Jrc13245 0d3f026277 prevent parser from splitting out the & character 2025-11-28 18:32:03 -05:00
Jrc13245 6486c87798 fix multi and negated multi conditionals using / and & 2025-11-28 15:06:42 -05:00
Jrc13245 04297598e9 nampower spell damage type tracking savedvariables to correctly assume damage type for immunities. table of non damage spells and their spell schools so that faerie fire isnt mistaken as a fire spell. 2025-11-28 12:31:50 -05:00
Jrc13245 30631bde26 remove login spam and fix immunity auto tracking 2025-11-28 07:44:42 -05:00
Jrc13245 1f4781165f fix channeltime 2025-11-27 21:01:25 -05:00
Jrc13245 5b5d8860c5 new conditional channeltime and bump version 2025-11-27 18:18:54 -05:00
Jrc13245 8764fc1dd3 all multi conditionals will now use / or & 2025-11-27 16:52:11 -05:00
Jrc13245 b188fc85f3 fix some issuues with OR on mybuff, mydebuff, buff, debuff, inrange, outrange, checkchanneled 2025-11-27 16:38:53 -05:00
Jrc13245 ba5830ba26 fix adding npcs to immunities list 2025-11-27 10:26:46 -05:00
Jrc13245 e834df91c3 change all proc windows to 4 seconds 2025-11-27 09:51:41 -05:00
Jrc13245 ff6ec25c06 bleed immunity, fix icons and their tooltips with no available actions, reformat readme 2025-11-27 09:21:41 -05:00
Jrc13245 43cbcbc462 fix enemy blocked attacks triggering revenge 2025-11-26 17:40:58 -05:00
Jrc13245 83d95219f2 usable conditional checking existence of regeant for use 2025-11-26 17:05:37 -05:00
Jrc13245 5e26b776eb fix negated conditionals using multi and fix revenge proc from reactive 2025-11-26 13:32:23 -05:00
Jrc13245 6a4f7a417c fix revenge reactive and majorly improve pfui compatibility for icons and actionbars 2025-11-26 07:48:12 -05:00
Jrc13245 21119c8bd5 fix reactive for overpower and revenge to see as active in any stance. 2025-11-25 16:58:44 -05:00
Jrc13245 139c95ba22 new conditional powertype 2025-11-25 15:10:02 -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 43ef919d79 update readme 2025-11-25 08:20:03 -05:00
Jrc13245 6261785507 memory and cpu usage overhaul 2025-11-25 07:41:04 -05:00
Jrc13245 1ff4da7471 fix nocasting conditional 2025-11-24 22:43:56 -05:00
Jrc13245 9dcc2446b7 new conditional swingtimer and druid set bonus debuff durations and warrior talent debuff durations 2025-11-23 16:16:53 -05:00
Jrc13245 7b4fb6e9d2 prevent rare name index error in languages where there is no upper or lower case 2025-11-20 19:54:42 -05:00
Jrc13245 29dc1504d2 update readme 2025-11-19 18:04:51 -05:00
Jrc13245 f6df0b2b5a fix icon issue and fix carnage talent duration refreshers updating visually for pfui 2025-11-19 17:50:30 -05:00
Jrc13245 274475a312 add carnage talent refreshing rip and rake if using ferocious bite at 5 combo points when debuffs are up 2025-11-18 19:39:07 -05:00
Jrc13245 2353569fc0 fix readme 2025-11-18 17:40:59 -05:00
Jrc13245 1d374ffb31 fix readme 2025-11-18 17:40:41 -05:00
Jrc13245 f59b66a7b6 update rake to use the idol duration change andd addd bash talent duration change 2025-11-18 17:37:38 -05:00
Jrc13245 77be86cf17 improve tracking of combo points and spellcasts across all ways to cast spells 2025-11-18 17:01:43 -05:00
Jrc13245 7fd94e3ed2 Add talent and equipment modifier systems for debuff durations
- Talent modifiers: Taste for Blood, Improved Gouge, Improved Shadow Word: Pain
- Equipment modifiers: Black Morass Idol (Rip -10% duration)
- Layered calculation: (base + combo + talent) × equipment
- Console commands: /cleveroid talents, testtalent, testequip
- Auto-detection via GetTalentInfo() and GetInventoryItemLink()
2025-11-18 15:42:38 -05:00
Jrc13245 21dba94822 Add Judgement of the Crusader debuff durations (ranks 1-6) 2025-11-17 20:45:31 -05:00
Jrc13245andClaude 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
Torio 2f90199a26 Merge pull request #63 from jrc13245/claude/fix-combo-point-tracking-01GZH7rgqnupQ3MwLRbUCjF5
Remove complex logic from CastSpell/UseAction hooks to fix action bars
2025-11-17 17:15:58 -05:00
Claude bdb78b7fda Remove complex logic from CastSpell/UseAction hooks to fix action bars
The CastSpell and UseAction hooks were doing too much work (tooltip
manipulation, spell name detection, combo point tracking) which was
interfering with WoW's action bar icon updates.

Solution:
Made both hooks minimal pass-throughs that just call and return the
original function. Combo point tracking is now handled entirely by:

1. UpdateComboPoints() - runs continuously via OnUpdate, captures
   combo points as they're generated and stores in lastComboPoints

2. SPELLCAST_START event - fires for ALL spell casts regardless of
   source (spellbook, action bar, macro, keybind) and calls
   TrackComboPointCast()

3. TrackComboPointCast() - uses GetComboPoints() first, falls back
   to lastComboPoints if points are already consumed

This approach works for all casting methods:
- Spellbook clicks
- Action bar clicks
- Keybinds
- Macros with /cast
- Macros with conditionals

And doesn't interfere with action bar icon updates (GCD, range
coloring, queue glowing, etc).
2025-11-17 22:14:41 +00:00
Torio 1784128d93 Merge pull request #61 from jrc13245/claude/incomplete-description-01GLZb6eAwLZE2wLkf92bZQj
Claude/incomplete description 01 gl zb6e aw lze2w lkf92b z qj
2025-11-17 16:59:17 -05:00
Claude e7f75ea38d Fix action button glow and state checks to use tooltip fallback
Previously, action button state functions (IsCurrentAction, IsActionInRange,
IsUsableAction, ActionHasRange, GetActionCount, IsConsumableAction) only
checked the active action, not the tooltip action. This caused issues when
using #showtooltip without conditionals, or when no conditionals matched:

- No glow on buttons even when the ability was queued/active
- Incorrect range/usability indicators
- Missing item counts for consumables

Now all these functions use the same priority as GetActionTexture and
GetActionCooldown: check the active action first, then fall back to the
tooltip action. This ensures button states match the displayed icon.

Fixes issues with abilities like Cleave and Heroic Strike not showing glow
when queued, and ensures all action button visuals are consistent.
2025-11-17 21:57:54 +00:00
Claude f74de5ef03 Fix showtooltip icon display by parsing conditionals from spell names
When #showtooltip had an argument with conditionals (e.g., #showtooltip [stance:1] Fireball),
the code was trying to find a spell named "[stance:1] Fireball" which doesn't exist.
This resulted in no texture being found for the tooltip action, causing incorrect icons.

Now the code parses the argument first using GetParsedMsg() to extract just the spell name
before creating the tooltip action info. This allows it to properly find the spell in the
spellbook and retrieve its correct texture/icon.
2025-11-17 21:52:00 +00:00
Torio 62a4b4a5e6 Merge pull request #60 from jrc13245/claude/fix-combo-point-tracking-01GZH7rgqnupQ3MwLRbUCjF5
Claude/fix combo point tracking 01 gzh7rgqnup q3 mw l rb u cj f5
2025-11-17 16:44:13 -05:00
Claude 56de67332c Fix action bar icon behavior by properly returning hook values
The CastSpell and UseAction hooks were breaking action bar icon
updates (GCD display, range coloring, queue glowing) because they
weren't returning the values from the original functions.

Issues fixed:
1. Return values: Both hooks now capture and return all return values
   from the original functions, ensuring the game receives the expected
   data for action bar updates

2. Error protection: Wrapped all tracking code in pcall() to prevent
   any errors from breaking the normal spell cast flow

3. Tooltip interference: UseAction now uses a separate hidden tooltip
   (CleveRoidsComboTooltip) instead of manipulating GameTooltip,
   avoiding interference with the main UI tooltip

Changes to CastSpell hook:
- Use pcall for GetSpellName to safely handle errors
- Capture return values: result1, result2, result3
- Wrap tracking code in pcall for error protection
- Return all captured values

Changes to UseAction hook:
- Wrap entire spell name detection in pcall
- Create separate hidden tooltip for combo point spells
- Capture return values from original UseAction
- Wrap tracking code in pcall for error protection
- Return all captured values

This ensures action bar icons work correctly while still tracking
combo points for finisher spells.
2025-11-17 21:42:52 +00:00
Claude 2276daffdd Fix combo point tracking for spellbook and action bar casts
The CastSpell and UseAction hooks were only confirming existing
tracking, not actually creating it. They also called the original
functions before capturing combo points, so the points were already
consumed.

Changes to CastSpell hook (spellbook casts):
- Get spell name BEFORE calling original CastSpell
- Capture combo points to lastComboPoints if spell is combo scaling
- Call original to cast the spell
- Call TrackComboPointCast to track the combo points used
- Confirm the tracking

Changes to UseAction hook (action bar casts):
- Get spell name from action slot BEFORE calling original UseAction
- Fixed tooltip logic (was checking "not GetActionText" incorrectly)
- Capture combo points to lastComboPoints if spell is combo scaling
- Call original to execute the action
- Call TrackComboPointCast to track the combo points used
- Confirm the tracking

Both hooks now capture combo points at the exact moment before the
spell is cast, ensuring they're available in lastComboPoints for
TrackComboPointCast to use as a fallback.

This fixes tracking for:
- Clicking spells from spellbook (CastSpell)
- Clicking spells on action bars (UseAction)
- Keybinding spells on action bars (UseAction)
2025-11-17 21:34:43 +00:00
Torio 9037adbd76 Merge pull request #59 from jrc13245/claude/fix-combo-point-tracking-01GZH7rgqnupQ3MwLRbUCjF5
Fix combo point tracking to use continuous tracking system
2025-11-17 16:30:17 -05:00
Claude 84a781a5fc Fix combo point tracking to use continuous tracking system
Previously, combo point tracking attempted to capture combo points at
cast time in the hooks, but this approach failed because hooks run
after the spell has already consumed the combo points.

The solution is to rely entirely on the existing UpdateComboPoints()
system, which runs continuously via OnUpdate and PLAYER_COMBO_POINTS
events. This system tracks combo points AS THEY ARE GENERATED on the
target, storing them in lastComboPoints before any spell can consume
them.

Changes:
- Removed manual combo point capture logic from all hooks
  (CastSpellByName_Hook, CastSpell_Hook, DoCast, OnSpellcastStart)
- TrackComboPointCast() now relies solely on the continuous tracking
  system, falling back to lastComboPoints when GetComboPoints()
  returns 0 (because points were already consumed)
- UpdateComboPoints() continues to run on every frame, capturing
  combo points as they appear on the target

This ensures that all casts of combo point finisher spells (Rip,
Rupture, Kidney Shot) are tracked correctly with the actual number
of combo points used, regardless of whether they're cast through
conditionals (e.g., /cast [combo:>0]Rip) or directly (e.g., /cast Rip).
2025-11-17 21:28:41 +00:00
Torio 8d20caa6d8 Merge pull request #58 from jrc13245/claude/fix-combo-point-tracking-01GZH7rgqnupQ3MwLRbUCjF5
Fix combo point tracking for all casts regardless of conditionals
2025-11-17 16:20:31 -05:00
Claude 6f968f8539 Fix combo point tracking for all casts regardless of conditionals
Previously, combo point tracking only worked reliably when spells were
cast with conditionals (e.g., /cast [combo:>0]Rip) but not for direct
casts (e.g., /cast Rip). This was because combo points are consumed
immediately when a spell is cast, so by the time the tracking code ran,
GetComboPoints() would return 0.

Changes:
- Updated TrackComboPointCast() to fall back to lastComboPoints when
  GetComboPoints() returns 0, ensuring the correct combo point count
  is used even if the points have already been consumed
- Modified all spell cast hooks (CastSpellByName_Hook, CastSpell_Hook,
  DoCast integration, OnSpellcastStart) to capture the current combo
  points into lastComboPoints BEFORE the spell is cast
- Added debug messages to track when combo points are captured and
  when fallback values are used

This ensures that all casts of combo point finisher spells (Rip,
Rupture, Kidney Shot) are tracked correctly with the actual number
of combo points used, regardless of whether they're cast through
conditionals or directly.
2025-11-17 21:17:58 +00:00
Torio 7fd4671e07 Merge pull request #55 from jrc13245/claude/fix-combo-points-tracking-01GyyUFStiWewydgChXunzKg
Fix combo points tracking for Vanilla WoW
2025-11-17 15:42:47 -05:00
Claude 42188b609b Fix combo points tracking for Vanilla WoW
The GetComboPoints() function was using TBC/WotLK syntax with two
parameters ("player", "target"), which is incorrect for Vanilla WoW 1.12.

In Vanilla WoW, GetComboPoints() takes no parameters and returns the
combo points on the current target.

This fixes the issue where macros were not tracking combo points correctly,
especially for users without pfui or other addon dependencies.

Fixes combo point tracking for Rupture, Rip, and Kidney Shot spells.
2025-11-17 20:41:34 +00:00