60 Commits

Author SHA1 Message Date
Brues 31c95606d0 Refactor turtle/Nampower checks and libdebuff cleanup
Replace ad-hoc Turtle/Nampower detection with global TURTLE_WOW_VERSION and EventUtil startup flow. Remove legacy IsTurtleWoW and manual PLAYER_ENTERING_WORLD frame; use EventUtil.ContinueOnPlayerLogin. Clean up libdebuff by removing combo-point capture, GetEnhancedDebuffs API, and noisy startup messages; rely on Nampower/AURA_CAST and database fallback for durations. Fix tooltip compare shift handling (cache shift state and pass through). Update xpbar to use TURTLE_WOW_VERSION. Purpose: simplify startup, avoid duplicated logic, and rely on modern APIs for accurate durations.
2026-07-05 23:47:39 -05:00
Brues de7dacf788 xpbar: route rep tracking through ClassicAPI faction APIs
Drop CHAT_MSG_COMBAT_FACTION_CHANGE + SanitizePattern(FACTION_STANDING_
INCREASED) string parsing in favor of FACTION_STANDING_CHANGED, which
ships (factionID, newStanding, repGained) directly — locale-independent,
no chat-string scrape. Track factionID instead of faction name.

Collapse the two for i=1, 99 GetFactionInfo loops (tooltip + bar fill)
into a single GetRepDisplay helper: GetFactionInfoByID for the remembered
faction, C_Reputation.GetWatchedFactionData for the watched one.

Watched-faction-changed detection now compares factionIDs.
2026-06-27 01:09:15 -05:00
Brues f586bd2285 it's back to 113% :( 2026-06-07 02:39:53 -05:00
Brues ca9c305663 octo removed 113% cap 2026-06-04 02:13:02 -05:00
Brues b99f650694 Cap rested xp at 113% on turtle wow 2026-05-27 23:11:44 -05:00
Brues ebbafd0478 refresh gametooltip for rested gains 2026-05-27 23:11:44 -05:00
Brues 710be52f35 phase 3 removing tbc
Drop the now-vestigial expansion plumbing.

- Delete modules/thirdparty-tbc.lua + its xml Include
- Strip 10 tbc-tagged CreateConfig calls in modules/gui.lua
- Drop the expansion arg from CreateConfig() signature + the disabled-
  entry rendering path that depended on it
- Drop the showdisabled GUI toggle + its default
- Simplify pfUI:RegisterModule / pfUI:RegisterSkin to (name, func) only
- Strip the leading version arg ("vanilla:tbc", etc.) from all 114
  Register call sites
- Delete the pfUI.expansion variable
2026-05-25 18:50:53 -05:00
Brues 90fdd8cfc3 typo 2026-05-22 22:50:41 -05:00
Brues 7c752f0264 xpbar: rested gain rate in per-minute instead of per-hour
Per-hour numbers are too coarse to feel actionable while watching a
tent fill — switching to /min so the displayed rate updates in a more
useful range for the actual sampling cadence.
2026-05-22 22:48:04 -05:00
Brues c30dfae7a6 xpbar: track rested-XP gain rate + time to cap
The data frame now subscribes to UPDATE_EXHAUSTION and stores a sliding
5-minute window of (time, exhaustion) samples. The XP tooltip uses the
first/last samples in the window to compute rest gain per hour, and
projects time to reach UnitXPMax * 1.5 at the current rate.

Useful for Turtle WoW's tent mechanic — when you stand under a tent
you accumulate rested XP at an accelerated rate, and now you can see
how long until you cap.

Samples reset on PLAYER_ENTERING_WORLD (zone change can change the
gain rate) and PLAYER_LEVEL_UP (Blizzard rescales exhaustion
proportionally on level-up so prior samples no longer describe the
same gain curve).

The rate/time lines only appear when there are at least 2 samples in
the window and the gain is positive — so they stay hidden when not
actively gaining rested XP.
2026-05-22 22:40:35 -05:00
Brues 67146ef3a4 begin utilizing ClassicAPI 2026-05-16 13:02:38 -05:00
Meow af26bb1844 Adjsted xp bar display again...
- Added tooltip that current display caps at 113% even though it is supposed to cap at 100% by the server. Please report this.
2026-03-27 15:07:26 +01:00
Meow 49fd015d20 turtle-wow change
- XP bar for rested xp has been capped to 100% max  by turtle-wow, not 150% - adjusted the formular to be accurate.
2026-03-27 14:35:48 +01:00
Meow 14a5ccb4fe fixed xp bar to show false rested values. 2026-03-26 12:27:21 +01:00
Meow 34f5c3eb02 Version 6.1.0 - Raid/Party Frame Fixes
Bugfixes:
- Fixed 40-yard range check not working for raid/party frames
- Fixed aggro indicator not displaying properly on raid/party frames
- Improved aggro cache to only cache positive results for instant detection
- Fixed HP/Mana not updating with "Use Raid Frames for group" enabled
- Added SuperWoW nil-check for SpellInfo
- Added missing events: PARTY_MEMBER_ENABLE, PARTY_MEMBER_DISABLE, PLAYER_UPDATE_RESTING

UI Improvements:
- Share/Hoverbind buttons now show warning when module is disabled
2026-01-08 12:25:18 +01:00
Meow 5d0e195d1e performance update
performance update
2026-01-03 12:58:31 +01:00
shagu 1bcb968137 xpbar: add new option to show text on xpbars 2025-04-20 18:00:47 +02:00
Mr_Rosh 02f07ec98d xpbar: add option to select texture 2025-02-04 18:24:40 +01:00
shagu e95a912b6a xpbar: update rested bonus on event 2021-11-09 18:01:43 +01:00
shagu c4d6a33098 xpbar: switch to frame levels instead of strata 2021-08-25 17:46:39 +02:00
shagu 0e6201bade xpbar: add option to set pet xp bar 2020-09-12 17:42:25 +02:00
shagu b903fffbfd compat: replace max level var with existing one 2020-08-16 11:11:06 +02:00
DennisWG 09498bc6cb xpbar: add option to not overlap the xpbars 2020-07-28 18:20:47 +02:00
shagu 8e3d3678a1 xpbar: rewrite module to share more code
* remove duplicate variable initializations
* remove duplicate function assignments
* place all configs to the parent frame
* add option for custom display modes
2020-06-01 11:09:36 +02:00
shagu 27de7a9b49 xpbar: update movables when position was set 2020-04-18 12:57:12 +02:00
shagu 3213b311aa xpbar: set default spacing to 3x border size 2020-04-18 12:50:15 +02:00
shagu d5cc370e9d api: move AlignToPosition into global api 2020-04-18 12:46:14 +02:00
shagu b387c1d3e7 xpbar: do not reset values on config change 2020-04-06 21:08:41 +02:00
shagu c774b6f563 xpbar: add option to change colors 2020-04-06 21:08:15 +02:00
shagu e64e459f12 xpbar: add option to anchor to different frames 2020-03-08 16:43:04 +01:00
shagu 3334c7469f modules: make all modules aware of the new borders 2019-12-18 18:54:09 +01:00
shagu 5b4e92e0e8 xpbar: restore unlocked positions on reload 2019-10-14 22:41:59 +02:00
shagu cb54e164ff xpbar: avoid nil error when reaching maxlevel 2019-10-01 20:07:39 +02:00
shagu 3b3f2279a1 xpbar: rewrite to support dynamic reputation bars 2019-08-31 19:02:56 +02:00
shagu 3625cd1844 xpbar: cache config value on startup 2019-08-04 14:43:53 +02:00
shagu e9237b59b2 core: use concrete string based client checks 2019-06-10 17:06:31 +02:00
shagu 7632f92dd1 core: use new media mechanism for all textures 2019-06-10 13:35:48 +02:00
shagu 545be99fd7 api: only add shadow to specific frames 2019-06-02 20:43:56 +02:00
shagu f2966bbb52 xpbar: add more layout and hide options 2019-04-17 22:03:56 +02:00
shagu 7bc60e723d core: whitelist a bunch of modules for tbc 2019-04-07 14:48:58 +02:00
shagu 95b7acbe8e xpbar: show remaining time to levelup 2018-07-08 00:55:08 +02:00
shagu 99ea8862bb xpbar: add previously added xp to session 2018-02-10 11:19:59 +01:00
Minotic 4d3be932a6 xpbar: lower frame strata 2017-12-17 18:20:34 +01:00
shagu 1b10999ef3 xpar: add average hourly xp to tooltip 2017-12-03 18:39:57 +01:00
shagu 6f9f1017f2 translations: add xpbar resting 2017-08-18 08:32:06 +02:00
shagu d7c3361eae translations: add new strings 2017-08-17 22:25:39 +02:00
shagu 6f7a665ffe api: merge api calls into environment 2017-02-26 20:55:22 +01:00
shagu 1766dd4ba0 api: use C for config 2017-02-26 20:42:08 +01:00
shagu ad4e68d681 api: clean up and documentation 2016-12-24 11:03:47 +01:00
shagu e43b1906bd modules: make xpbar module independent 2016-12-10 16:26:32 +01:00