From fca88016f288716e474ccd77adfe171ec2a3fcdb Mon Sep 17 00:00:00 2001 From: Bluewhale1337 <295648290+Bluewhale1337@users.noreply.github.com> Date: Thu, 5 Nov 2026 22:33:46 +0100 Subject: [PATCH] refactor: remove Spirit of Zanza from Divine Spirit aura tracking and bump version to 1.7.7 --- HealBotBlue.toc | 2 +- HealBot_Controller_Aura.lua | 4 ++-- HealBot_Localization.de.lua | 3 +-- HealBot_Localization.en.lua | 3 +-- HealBot_Localization.fr.lua | 3 +-- HealBot_Localization.kr.lua | 3 +-- README.md | 5 +++++ 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/HealBotBlue.toc b/HealBotBlue.toc index 16457b5..6e3c938 100644 --- a/HealBotBlue.toc +++ b/HealBotBlue.toc @@ -1,6 +1,6 @@ ## Interface: 11200 ## Title: HealBotBlue -## Version: 1.7.6 +## Version: 1.7.7 ## Author: Bluewhale ## Notes: Raidframe replacement for healing, decursing, resource tracking and buffing with optional support for SuperWow, ClassicAPI, UnitXP_SP3 and Nampower. ## SavedVariablesPerCharacter: HealBot_Config diff --git a/HealBot_Controller_Aura.lua b/HealBot_Controller_Aura.lua index b77099c..e9cffe6 100644 --- a/HealBot_Controller_Aura.lua +++ b/HealBot_Controller_Aura.lua @@ -101,8 +101,8 @@ function HealBot_CheckBuffs(unit) [HEALBOT_POWER_WORD_FORTITUDE] = { HEALBOT_PRAYER_OF_FORTITUDE }, [HEALBOT_PRAYER_OF_FORTITUDE] = { HEALBOT_POWER_WORD_FORTITUDE }, -- Priest Spirit - [HEALBOT_DIVINE_SPIRIT] = { HEALBOT_PRAYER_OF_SPIRIT, HEALBOT_SPIRIT_OF_ZANZA, "Spirit of Zanza" }, - [HEALBOT_PRAYER_OF_SPIRIT] = { HEALBOT_DIVINE_SPIRIT, HEALBOT_SPIRIT_OF_ZANZA, "Spirit of Zanza" }, + [HEALBOT_DIVINE_SPIRIT] = { HEALBOT_PRAYER_OF_SPIRIT }, + [HEALBOT_PRAYER_OF_SPIRIT] = { HEALBOT_DIVINE_SPIRIT }, -- Priest Shadow Protection [HEALBOT_SHADOW_PROTECTION] = { HEALBOT_PRAYER_OF_SHADOW_PROTECTION }, [HEALBOT_PRAYER_OF_SHADOW_PROTECTION] = { HEALBOT_SHADOW_PROTECTION }, diff --git a/HealBot_Localization.de.lua b/HealBot_Localization.de.lua index e425fc3..0de6089 100644 --- a/HealBot_Localization.de.lua +++ b/HealBot_Localization.de.lua @@ -79,8 +79,7 @@ HEALBOT_REJUVENATION = "Verj\195\188ngung"; HEALBOT_PRAYER_OF_HEALING = "Gebet der Heilung"; HEALBOT_CHAIN_HEAL = "Kettenheilung"; -HEALBOT_POWER_WORD_FORTITUDE = "Machtwort: Seelenst\195\164rke"; -HEALBOT_SPIRIT_OF_ZANZA = "Geist von Zanza"; +HEALBOT_POWER_WORD_FORTITUDE = "Machtwort: Seelenst\195\164rke"; HEALBOT_MARK_OF_THE_WILD = "Mal der Wildnis"; HEALBOT_BLESSING_OF_SALVATION = "Segen der Rettung"; diff --git a/HealBot_Localization.en.lua b/HealBot_Localization.en.lua index 00ef681..4a381b1 100644 --- a/HealBot_Localization.en.lua +++ b/HealBot_Localization.en.lua @@ -82,8 +82,7 @@ HEALBOT_BLESSING_OF_LIGHT = "Blessing of Light"; HEALBOT_BLESSING_OF_SANCTUARY = "Blessing of Sanctuary"; HEALBOT_DIVINE_SPIRIT = "Divine Spirit"; HEALBOT_PRAYER_OF_FORTITUDE = "Prayer of Fortitude"; -HEALBOT_PRAYER_OF_SPIRIT = "Prayer of Spirit"; -HEALBOT_SPIRIT_OF_ZANZA = "Spirit of Zanza"; +HEALBOT_PRAYER_OF_SPIRIT = "Prayer of Spirit"; HEALBOT_SHADOW_PROTECTION = "Shadow Protection"; HEALBOT_PRAYER_OF_SHADOW_PROTECTION = "Prayer of Shadow Protection"; HEALBOT_ARCANE_INTELLECT = "Arcane Intellect"; diff --git a/HealBot_Localization.fr.lua b/HealBot_Localization.fr.lua index b5f1641..cdae9e0 100644 --- a/HealBot_Localization.fr.lua +++ b/HealBot_Localization.fr.lua @@ -79,8 +79,7 @@ HEALBOT_REJUVENATION = "R\195\169cup\195\169ration"; HEALBOT_PRAYER_OF_HEALING = "Pri\195\168re de soins"; HEALBOT_CHAIN_HEAL = "Salve de gu\195\169rison"; -HEALBOT_POWER_WORD_FORTITUDE = "Mot de pouvoir : Robustesse"; -HEALBOT_SPIRIT_OF_ZANZA = "Esprit de Zanza"; +HEALBOT_POWER_WORD_FORTITUDE = "Mot de pouvoir : Robustesse"; HEALBOT_MARK_OF_THE_WILD = "Marque du fauve"; HEALBOT_BLESSING_OF_SALVATION = "B\195\169n\195\169diction de salut"; diff --git a/HealBot_Localization.kr.lua b/HealBot_Localization.kr.lua index 8ffba79..c14d184 100644 --- a/HealBot_Localization.kr.lua +++ b/HealBot_Localization.kr.lua @@ -61,8 +61,7 @@ if (GetLocale() == "koKR") then HEALBOT_PRAYER_OF_HEALING = "치유의 기원"; HEALBOT_CHAIN_HEAL = "연쇄 치유"; -HEALBOT_POWER_WORD_FORTITUDE = "신의 권능: 인내"; -HEALBOT_SPIRIT_OF_ZANZA = "잔자의 기백"; +HEALBOT_POWER_WORD_FORTITUDE = "신의 권능: 인내"; HEALBOT_INNER_FIRE = "내면의 열정"; HEALBOT_FEAR_WARD = "공포의 결계"; HEALBOT_ENLIGHTEN = "Enlighten"; diff --git a/README.md b/README.md index 1beaca0..858e623 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,11 @@ Default installation path: `C:\Program Files\World of Warcraft\Interface\AddOns\ ### Change Log +**v1.7.7** +* **Feature - HoT Timer Display Modes & Positioning:** Added configurable HoT timer list position dropdown (`Below`, `Above`, `Left`, `Right`) relative to raid frames. Added `Icon Overlay` mode rendering countdown timers directly on health bar HoT icons, and a `Both` mode allowing simultaneous timer list and on-bar icon countdown numbers. Excluded pets from HoT timer lists and overlays. Optimized expiration lookups with O(1) texture-to-spell mappings. +* **Refactor & Feature - Unified Aura & HoT Tracking:** Unified bar icons and HoT timers into a master dictionary (`HealBot_TrackedAuras`) in `HealBot_Data.lua`. Added Weakened Soul, Fear Ward, Abolish Disease, and Abolish Poison to active timer bars with localized client support and debuff-aware pruning. +* **Bug Fix - HoT Tracking Premature Deletion & GUID Resolution:** Resolved issue where synchronous aura scans on spell cast prematurely purged active HoTs before server buff packets arrived. Fixed HoT timer list showing raw GUID strings instead of names by ensuring GUID caches populate immediately on `PLAYER_ENTERING_WORLD` (even when solo) and adding multi-tier name resolution fallbacks. Fixed unit bar icon countdown numbers not rendering by adding explicit overlay frame show triggers and normalized texture lookup fallbacks. + **v1.7.6** * **Feature - All-Class Support & Raid Frame Replacement:** Removed legacy restriction that disabled HealBot event listeners and UI frames for classes without native healing spells. HealBot now initializes and functions as a full party/raid frame replacement for all classes (Warrior, Mage, Rogue, Hunter, Warlock). * **Targeting & Binding Defaults:** Added default `Left` click `"Target"` binding for non-healer classes, recognized `"target"` in spell resolution, and prevented non-healer buttons from disabling on full-health allies.