diff --git a/HealBotBlue.toc b/HealBotBlue.toc
index 39b405a..53c95ec 100644
--- a/HealBotBlue.toc
+++ b/HealBotBlue.toc
@@ -1,6 +1,6 @@
## Interface: 11200
## Title: HealBotBlue
-## Version: 1.6.2
+## Version: 1.6.3
## Author: Bluewhale
## Notes: Adds panel with skinable bars for healing and decursive
## SavedVariablesPerCharacter: HealBot_Config
diff --git a/HealBot_Action.lua b/HealBot_Action.lua
index 24ddda0..ddcc0f6 100644
--- a/HealBot_Action.lua
+++ b/HealBot_Action.lua
@@ -123,6 +123,9 @@ end
function HealBot_SplitString(str, delimiter)
local result = {}
+ if not delimiter or delimiter == "" then
+ return {str}
+ end
local start_pos = 1
while true do
local end_pos = string.find(str, delimiter, start_pos, true)
diff --git a/HealBot_Action.xml b/HealBot_Action.xml
index 8cfd040..9a82842 100644
--- a/HealBot_Action.xml
+++ b/HealBot_Action.xml
@@ -73,6 +73,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/HealBot_Controller_Aura.lua b/HealBot_Controller_Aura.lua
index 29f9d75..7b85427 100644
--- a/HealBot_Controller_Aura.lua
+++ b/HealBot_Controller_Aura.lua
@@ -160,7 +160,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
if not HealBot_UnitIcons[unit] then
HealBot_UnitIcons[unit] = {}
end
- for j = 1, 5 do
+ for j = 1, 10 do
HealBot_UnitIcons[unit][j] = nil
end
local iconCount = 0
@@ -168,7 +168,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
while true do
local debuff, tmp, debuff_type = UnitDebuff(unit, i, 1)
if debuff then
- if iconCount < 5 then
+ if iconCount < 10 then
iconCount = iconCount + 1
HealBot_UnitIcons[unit][iconCount] = debuff
end
@@ -190,7 +190,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
while true do
local buff = UnitBuff(unit, b)
if not buff then break end
- if HealBot_TrackedHoTs[buff] and iconCount < 5 then
+ if HealBot_TrackedHoTs[buff] and iconCount < 10 then
iconCount = iconCount + 1
HealBot_UnitIcons[unit][iconCount] = buff
end
@@ -201,7 +201,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
while true do
local debuff = UnitDebuff(unit, d)
if not debuff then break end
- if HealBot_TrackedHoTs[debuff] and iconCount < 5 then
+ if HealBot_TrackedHoTs[debuff] and iconCount < 10 then
iconCount = iconCount + 1
HealBot_UnitIcons[unit][iconCount] = debuff
end
diff --git a/HealBot_Data.lua b/HealBot_Data.lua
index 86d1b4c..387e68a 100644
--- a/HealBot_Data.lua
+++ b/HealBot_Data.lua
@@ -246,6 +246,7 @@ HealBot_ConfigDefaults = {
bpadding = {[HEALBOT_SKINS_STD] = 10, ["HealBot Party"] = 10, ["HealBot Raid"] = 10, ["Alteric Valley"] = 10, ["Modern Flat"] = 10},
bboffset = {[HEALBOT_SKINS_STD] = 16, ["HealBot Party"] = 16, ["HealBot Raid"] = 16, ["Alteric Valley"] = 16, ["Modern Flat"] = 3},
bfontoutline = {[HEALBOT_SKINS_STD] = 0, ["HealBot Party"] = 0, ["HealBot Raid"] = 0, ["Alteric Valley"] = 0, ["Modern Flat"] = 1},
+ biconsize = {[HEALBOT_SKINS_STD] = 12, ["HealBot Party"] = 12, ["HealBot Raid"] = 12, ["Alteric Valley"] = 12, ["Modern Flat"] = 12},
ShowTooltip = 1,
ShowManaBars = 0,
ManaBarsHealersOnly = 0,
@@ -274,18 +275,6 @@ HEALBOT_ADDON_ID="HealBot_Heals"
HealBot_AbortButton=1;
-HealBot_Groups = {
- ["ITEMS"] = {
- HEALBOT_BANDAGES,
- HEALBOT_HEALING_POTIONS,
- HEALBOT_HEALTHSTONES,
- },
- ["PALADIN"] = {
- HEALBOT_HOLY_LIGHT,
- HEALBOT_FLASH_OF_LIGHT,
- },
-}
-
HealBot_Spells = {
-- Cast = secs until effect starts
-- Channel = secs until caster available
@@ -584,7 +573,7 @@ HealBot_Action_TooltipUnit=nil;
HealBot_Ressing = {};
HealBot_IamRessing = false;
--- Table Recycling Pool (Puppeteer-inspired)
+-- Table Recycling Pool
local tablePool = {}
function HealBot_GetTable()
local t = table.remove(tablePool)
diff --git a/HealBot_Options.lua b/HealBot_Options.lua
index 7c49722..553aab7 100644
--- a/HealBot_Options.lua
+++ b/HealBot_Options.lua
@@ -301,6 +301,9 @@ function HealBot_Options_SetSkins()
HealBot_Options_BarAlphaInHeal:SetValue(HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin]);
HealBot_Options_BarTextureS:SetValue(HealBot_Config.btexture[HealBot_Config.Current_Skin])
HealBot_Options_BarHeightS:SetValue(HealBot_Config.bheight[HealBot_Config.Current_Skin])
+ HealBot_Options_AbortBarSize:SetValue(HealBot_Config.abortsize[HealBot_Config.Current_Skin])
+ HealBot_Options_FontHeight:SetValue(HealBot_Config.btextheight[HealBot_Config.Current_Skin])
+ HealBot_Options_IconSizeS:SetValue(HealBot_Config.biconsize[HealBot_Config.Current_Skin] or 12)
HealBot_Options_BarWidthS:SetValue(HealBot_Config.bwidth[HealBot_Config.Current_Skin])
HealBot_Options_BarNumColsS:SetValue(HealBot_Config.numcols[HealBot_Config.Current_Skin])
HealBot_Options_BarMaxRowsS:SetValue((HealBot_Config.bmaxrows and HealBot_Config.bmaxrows[HealBot_Config.Current_Skin]) or 0)
diff --git a/HealBot_Options_General.lua b/HealBot_Options_General.lua
index 1bb5a40..89eb156 100644
--- a/HealBot_Options_General.lua
+++ b/HealBot_Options_General.lua
@@ -44,6 +44,11 @@ function HealBot_Options_FontHeight_OnValueChanged(this)
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
HealBot_Action_ResetSkin()
end
+function HealBot_Options_IconSizeS_OnValueChanged(this)
+ HealBot_Config.biconsize[HealBot_Config.Current_Skin] = this:GetValue();
+ getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
+ HealBot_Action_ResetSkin()
+end
function HealBot_Options_AbortBarSize_OnValueChanged(this)
HealBot_Config.abortsize[HealBot_Config.Current_Skin] = this:GetValue();
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
diff --git a/HealBot_Options_Skins.xml b/HealBot_Options_Skins.xml
index fb8abf9..a85fb30 100644
--- a/HealBot_Options_Skins.xml
+++ b/HealBot_Options_Skins.xml
@@ -360,6 +360,22 @@
HealBot_Options_FontHeight_OnValueChanged(this)
+
+
+
+
+
+
+
+
+
+
+
+
+ HealBot_Options_val_OnLoad(this,"Icon size",5,30)
+ HealBot_Options_IconSizeS_OnValueChanged(this)
+
+
diff --git a/HealBot_View_Layout.lua b/HealBot_View_Layout.lua
index 76c56e7..2af7eef 100644
--- a/HealBot_View_Layout.lua
+++ b/HealBot_View_Layout.lua
@@ -251,11 +251,14 @@ function HealBot_Action_EnableButton(button)
bar.txt:SetFont(fontName, fontHeight, "")
end
- for i = 1, 5 do
+ local iconSize = HealBot_Config.biconsize[HealBot_Config.Current_Skin] or 12
+ for i = 1, 10 do
local icon = getglobal(button:GetName() .. "BarIcon" .. i)
if icon then
if HealBot_UnitIcons and HealBot_UnitIcons[unit] and HealBot_UnitIcons[unit][i] then
icon:SetTexture(HealBot_UnitIcons[unit][i])
+ icon:SetWidth(iconSize)
+ icon:SetHeight(iconSize)
icon:Show()
else
icon:Hide()
diff --git a/README.md b/README.md
index 9220c21..be92b99 100644
--- a/README.md
+++ b/README.md
@@ -49,6 +49,12 @@ Default installation path: `C:\Program Files\World of Warcraft\Interface\AddOns\
### Change Log
+**v1.6.3**
+* **Hotfix string splitter** - added falback for string splitter if the the string is empty or nil.
+* **UI Update - Icon Limit** - Increased maximum tracked buffs/debuffs per unit from 5 to 10.
+* **UI Update - Customizable icon size** - Added an option to change size of HoT icons (default to 12px).
+* **Cleanup** - Removed dead code `HealBot_Groups` table.
+
**v1.6.2**
* **Hotfix - raid and party frames** - if getNumRaidMembers() > 0 wrapper around extra bars stopped from displaying all frames blocked from displaying Extras\Raid.
* **UI Update - Raid & Pets Split** - Split the "Raid / Extra" toggle into separate "Raid" and "Pets" toggles. Simplified the raid bars filter dropdown to core options (All, Melee, Ranged, Heals, Custom).