mirror of
https://github.com/Bluewhale1337/HealBotBlue.git
synced 2026-09-11 09:50:21 +00:00
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 6a6a9e3283 | |||
| d021441b32 | |||
| 99997b711a | |||
| 496013ae9c | |||
| f7443fcdf0 | |||
| a0d435eb70 | |||
| 048970d1b7 | |||
| d5dec0f1f0 |
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
## Interface: 11200
|
## Interface: 11200
|
||||||
## Title: HealBotBlue
|
## Title: HealBotBlue
|
||||||
## Version: 1.6.2
|
## Version: 1.6.5
|
||||||
## Author: Bluewhale
|
## Author: Bluewhale
|
||||||
## Notes: Adds panel with skinable bars for healing and decursive
|
## Notes: Adds panel with skinable bars for healing and decursive
|
||||||
## SavedVariablesPerCharacter: HealBot_Config
|
## SavedVariablesPerCharacter: HealBot_Config
|
||||||
|
|||||||
@@ -123,6 +123,9 @@ end
|
|||||||
|
|
||||||
function HealBot_SplitString(str, delimiter)
|
function HealBot_SplitString(str, delimiter)
|
||||||
local result = {}
|
local result = {}
|
||||||
|
if not delimiter or delimiter == "" then
|
||||||
|
return {str}
|
||||||
|
end
|
||||||
local start_pos = 1
|
local start_pos = 1
|
||||||
while true do
|
while true do
|
||||||
local end_pos = string.find(str, delimiter, start_pos, true)
|
local end_pos = string.find(str, delimiter, start_pos, true)
|
||||||
|
|||||||
+54
-14
@@ -18,6 +18,20 @@
|
|||||||
<OnClick>HealBot_Action_HealUnit_OnClick(this,arg1);</OnClick>
|
<OnClick>HealBot_Action_HealUnit_OnClick(this,arg1);</OnClick>
|
||||||
</Scripts>
|
</Scripts>
|
||||||
<Frames>
|
<Frames>
|
||||||
|
<StatusBar name="$parentBar2" inherits="HealBot_StatusBar">
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPLEFT" relativePoint="TOPLEFT">
|
||||||
|
<Offset>
|
||||||
|
<AbsDimension x="0" y="0"/>
|
||||||
|
</Offset>
|
||||||
|
</Anchor>
|
||||||
|
<Anchor point="TOPRIGHT" relativePoint="TOPRIGHT">
|
||||||
|
<Offset>
|
||||||
|
<AbsDimension x="0" y="0"/>
|
||||||
|
</Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</StatusBar>
|
||||||
<StatusBar name="$parentBar" inherits="HealBot_StatusBar">
|
<StatusBar name="$parentBar" inherits="HealBot_StatusBar">
|
||||||
<Anchors>
|
<Anchors>
|
||||||
<Anchor point="TOPLEFT" relativePoint="TOPLEFT">
|
<Anchor point="TOPLEFT" relativePoint="TOPLEFT">
|
||||||
@@ -73,23 +87,49 @@
|
|||||||
</Anchor>
|
</Anchor>
|
||||||
</Anchors>
|
</Anchors>
|
||||||
</Texture>
|
</Texture>
|
||||||
|
<Texture name="$parentIcon6" hidden="true">
|
||||||
|
<Size><AbsDimension x="12" y="12"/></Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="LEFT" relativeTo="$parentIcon5" relativePoint="RIGHT">
|
||||||
|
<Offset><AbsDimension x="1" y="0"/></Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</Texture>
|
||||||
|
<Texture name="$parentIcon7" hidden="true">
|
||||||
|
<Size><AbsDimension x="12" y="12"/></Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="LEFT" relativeTo="$parentIcon6" relativePoint="RIGHT">
|
||||||
|
<Offset><AbsDimension x="1" y="0"/></Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</Texture>
|
||||||
|
<Texture name="$parentIcon8" hidden="true">
|
||||||
|
<Size><AbsDimension x="12" y="12"/></Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="LEFT" relativeTo="$parentIcon7" relativePoint="RIGHT">
|
||||||
|
<Offset><AbsDimension x="1" y="0"/></Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</Texture>
|
||||||
|
<Texture name="$parentIcon9" hidden="true">
|
||||||
|
<Size><AbsDimension x="12" y="12"/></Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="LEFT" relativeTo="$parentIcon8" relativePoint="RIGHT">
|
||||||
|
<Offset><AbsDimension x="1" y="0"/></Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</Texture>
|
||||||
|
<Texture name="$parentIcon10" hidden="true">
|
||||||
|
<Size><AbsDimension x="12" y="12"/></Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="LEFT" relativeTo="$parentIcon9" relativePoint="RIGHT">
|
||||||
|
<Offset><AbsDimension x="1" y="0"/></Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
</Texture>
|
||||||
</Layer>
|
</Layer>
|
||||||
</Layers>
|
</Layers>
|
||||||
</StatusBar>
|
</StatusBar>
|
||||||
<StatusBar name="$parentBar2" inherits="HealBot_StatusBar">
|
|
||||||
<Anchors>
|
|
||||||
<Anchor point="TOPLEFT" relativePoint="TOPLEFT">
|
|
||||||
<Offset>
|
|
||||||
<AbsDimension x="0" y="0"/>
|
|
||||||
</Offset>
|
|
||||||
</Anchor>
|
|
||||||
<Anchor point="TOPRIGHT" relativePoint="TOPRIGHT">
|
|
||||||
<Offset>
|
|
||||||
<AbsDimension x="0" y="0"/>
|
|
||||||
</Offset>
|
|
||||||
</Anchor>
|
|
||||||
</Anchors>
|
|
||||||
</StatusBar>
|
|
||||||
<StatusBar name="$parentBar3" inherits="HealBot_StatusBar" hidden="true">
|
<StatusBar name="$parentBar3" inherits="HealBot_StatusBar" hidden="true">
|
||||||
<Anchors>
|
<Anchors>
|
||||||
<Anchor point="TOPLEFT" relativeTo="$parentBar" relativePoint="BOTTOMLEFT">
|
<Anchor point="TOPLEFT" relativeTo="$parentBar" relativePoint="BOTTOMLEFT">
|
||||||
|
|||||||
@@ -160,19 +160,20 @@ function HealBot_OnEvent_UnitAura(this, unit)
|
|||||||
if not HealBot_UnitIcons[unit] then
|
if not HealBot_UnitIcons[unit] then
|
||||||
HealBot_UnitIcons[unit] = {}
|
HealBot_UnitIcons[unit] = {}
|
||||||
end
|
end
|
||||||
for j = 1, 5 do
|
for j = 1, 10 do
|
||||||
HealBot_UnitIcons[unit][j] = nil
|
HealBot_UnitIcons[unit][j] = nil
|
||||||
end
|
end
|
||||||
local iconCount = 0
|
local iconCount = 0
|
||||||
local i = 1;
|
local i = 1;
|
||||||
|
HealBot_UnitDebuff[unit] = nil;
|
||||||
while true do
|
while true do
|
||||||
local debuff, tmp, debuff_type = UnitDebuff(unit, i, 1)
|
local debuff, tmp, debuff_type = UnitDebuff(unit, i, 1)
|
||||||
if debuff then
|
if debuff then
|
||||||
if iconCount < 5 then
|
if iconCount < 10 then
|
||||||
iconCount = iconCount + 1
|
iconCount = iconCount + 1
|
||||||
HealBot_UnitIcons[unit][iconCount] = debuff
|
HealBot_UnitIcons[unit][iconCount] = debuff
|
||||||
end
|
end
|
||||||
if HealBot_CDCInc[UnitClass(unit)] == 1 and HealBot_DebuffWatch[debuff_type] then
|
if HealBot_CDCInc[UnitClass(unit)] == 1 and debuff_type and HealBot_DebuffWatch[debuff_type] then
|
||||||
HealBot_UnitDebuff[unit] = debuff_type
|
HealBot_UnitDebuff[unit] = debuff_type
|
||||||
DebuffType = debuff_type;
|
DebuffType = debuff_type;
|
||||||
if HealBot_DebuffPriority[debuff_type] then
|
if HealBot_DebuffPriority[debuff_type] then
|
||||||
@@ -181,7 +182,6 @@ function HealBot_OnEvent_UnitAura(this, unit)
|
|||||||
end
|
end
|
||||||
i = i + 1;
|
i = i + 1;
|
||||||
else
|
else
|
||||||
if i == 1 then HealBot_UnitDebuff[unit] = nil; end
|
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -190,7 +190,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
|
|||||||
while true do
|
while true do
|
||||||
local buff = UnitBuff(unit, b)
|
local buff = UnitBuff(unit, b)
|
||||||
if not buff then break end
|
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
|
iconCount = iconCount + 1
|
||||||
HealBot_UnitIcons[unit][iconCount] = buff
|
HealBot_UnitIcons[unit][iconCount] = buff
|
||||||
end
|
end
|
||||||
@@ -201,7 +201,7 @@ function HealBot_OnEvent_UnitAura(this, unit)
|
|||||||
while true do
|
while true do
|
||||||
local debuff = UnitDebuff(unit, d)
|
local debuff = UnitDebuff(unit, d)
|
||||||
if not debuff then break end
|
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
|
iconCount = iconCount + 1
|
||||||
HealBot_UnitIcons[unit][iconCount] = debuff
|
HealBot_UnitIcons[unit][iconCount] = debuff
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
-- Manages WoW Frame events and periodic updates, routing to respective services
|
-- Manages WoW Frame events and periodic updates, routing to respective services
|
||||||
|
|
||||||
HealBot_View_DirtyUnits = {}
|
HealBot_View_DirtyUnits = {}
|
||||||
|
HealBot_View_DirtyPower = {}
|
||||||
local HealBot_Timer1, HealsIn_Timer = 0, 0;
|
local HealBot_Timer1, HealsIn_Timer = 0, 0;
|
||||||
HealBot_LastModState = ""
|
HealBot_LastModState = ""
|
||||||
|
|
||||||
@@ -20,7 +21,7 @@ function HealBot_OnLoad(this)
|
|||||||
HealBot_View_DirtyUnits[unitID] = true
|
HealBot_View_DirtyUnits[unitID] = true
|
||||||
end)
|
end)
|
||||||
HealBot_Model:RegisterObserver("UNIT_POWER_CHANGED", function(unitID)
|
HealBot_Model:RegisterObserver("UNIT_POWER_CHANGED", function(unitID)
|
||||||
HealBot_View_DirtyUnits[unitID] = true
|
HealBot_View_DirtyPower[unitID] = true
|
||||||
end)
|
end)
|
||||||
HealBot_Model:RegisterObserver("UNIT_AURA_CHANGED", function(unitID)
|
HealBot_Model:RegisterObserver("UNIT_AURA_CHANGED", function(unitID)
|
||||||
HealBot_View_DirtyUnits[unitID] = true
|
HealBot_View_DirtyUnits[unitID] = true
|
||||||
@@ -78,9 +79,17 @@ function HealBot_OnUpdate(this, arg1)
|
|||||||
while unitID do
|
while unitID do
|
||||||
HealBot_Action_RefreshButtons(unitID)
|
HealBot_Action_RefreshButtons(unitID)
|
||||||
HealBot_View_DirtyUnits[unitID] = nil
|
HealBot_View_DirtyUnits[unitID] = nil
|
||||||
|
HealBot_View_DirtyPower[unitID] = nil -- Skip fast path if doing full refresh
|
||||||
unitID, _ = next(HealBot_View_DirtyUnits)
|
unitID, _ = next(HealBot_View_DirtyUnits)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
local powerID, _ = next(HealBot_View_DirtyPower)
|
||||||
|
while powerID do
|
||||||
|
HealBot_Action_RefreshPower(powerID)
|
||||||
|
HealBot_View_DirtyPower[powerID] = nil
|
||||||
|
powerID, _ = next(HealBot_View_DirtyPower)
|
||||||
|
end
|
||||||
|
|
||||||
if HealBot_EquipChangeTimer > 0 then
|
if HealBot_EquipChangeTimer > 0 then
|
||||||
HealBot_EquipChangeTimer = HealBot_EquipChangeTimer - arg1
|
HealBot_EquipChangeTimer = HealBot_EquipChangeTimer - arg1
|
||||||
if HealBot_EquipChangeTimer <= 0 then
|
if HealBot_EquipChangeTimer <= 0 then
|
||||||
|
|||||||
+2
-13
@@ -246,6 +246,7 @@ HealBot_ConfigDefaults = {
|
|||||||
bpadding = {[HEALBOT_SKINS_STD] = 10, ["HealBot Party"] = 10, ["HealBot Raid"] = 10, ["Alteric Valley"] = 10, ["Modern Flat"] = 10},
|
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},
|
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},
|
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,
|
ShowTooltip = 1,
|
||||||
ShowManaBars = 0,
|
ShowManaBars = 0,
|
||||||
ManaBarsHealersOnly = 0,
|
ManaBarsHealersOnly = 0,
|
||||||
@@ -274,18 +275,6 @@ HEALBOT_ADDON_ID="HealBot_Heals"
|
|||||||
|
|
||||||
HealBot_AbortButton=1;
|
HealBot_AbortButton=1;
|
||||||
|
|
||||||
HealBot_Groups = {
|
|
||||||
["ITEMS"] = {
|
|
||||||
HEALBOT_BANDAGES,
|
|
||||||
HEALBOT_HEALING_POTIONS,
|
|
||||||
HEALBOT_HEALTHSTONES,
|
|
||||||
},
|
|
||||||
["PALADIN"] = {
|
|
||||||
HEALBOT_HOLY_LIGHT,
|
|
||||||
HEALBOT_FLASH_OF_LIGHT,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
HealBot_Spells = {
|
HealBot_Spells = {
|
||||||
-- Cast = secs until effect starts
|
-- Cast = secs until effect starts
|
||||||
-- Channel = secs until caster available
|
-- Channel = secs until caster available
|
||||||
@@ -584,7 +573,7 @@ HealBot_Action_TooltipUnit=nil;
|
|||||||
HealBot_Ressing = {};
|
HealBot_Ressing = {};
|
||||||
HealBot_IamRessing = false;
|
HealBot_IamRessing = false;
|
||||||
|
|
||||||
-- Table Recycling Pool (Puppeteer-inspired)
|
-- Table Recycling Pool
|
||||||
local tablePool = {}
|
local tablePool = {}
|
||||||
function HealBot_GetTable()
|
function HealBot_GetTable()
|
||||||
local t = table.remove(tablePool)
|
local t = table.remove(tablePool)
|
||||||
|
|||||||
@@ -301,6 +301,9 @@ function HealBot_Options_SetSkins()
|
|||||||
HealBot_Options_BarAlphaInHeal:SetValue(HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin]);
|
HealBot_Options_BarAlphaInHeal:SetValue(HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin]);
|
||||||
HealBot_Options_BarTextureS:SetValue(HealBot_Config.btexture[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_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_BarWidthS:SetValue(HealBot_Config.bwidth[HealBot_Config.Current_Skin])
|
||||||
HealBot_Options_BarNumColsS:SetValue(HealBot_Config.numcols[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)
|
HealBot_Options_BarMaxRowsS:SetValue((HealBot_Config.bmaxrows and HealBot_Config.bmaxrows[HealBot_Config.Current_Skin]) or 0)
|
||||||
|
|||||||
@@ -44,6 +44,11 @@ function HealBot_Options_FontHeight_OnValueChanged(this)
|
|||||||
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
|
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
|
||||||
HealBot_Action_ResetSkin()
|
HealBot_Action_ResetSkin()
|
||||||
end
|
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)
|
function HealBot_Options_AbortBarSize_OnValueChanged(this)
|
||||||
HealBot_Config.abortsize[HealBot_Config.Current_Skin] = this:GetValue();
|
HealBot_Config.abortsize[HealBot_Config.Current_Skin] = this:GetValue();
|
||||||
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
|
getglobal(this:GetName().."Text"):SetText(this.text .. ": " .. this:GetValue());
|
||||||
|
|||||||
@@ -360,6 +360,22 @@
|
|||||||
<OnValueChanged>HealBot_Options_FontHeight_OnValueChanged(this)</OnValueChanged>
|
<OnValueChanged>HealBot_Options_FontHeight_OnValueChanged(this)</OnValueChanged>
|
||||||
</Scripts>
|
</Scripts>
|
||||||
</Slider>
|
</Slider>
|
||||||
|
<Slider name="HealBot_Options_IconSizeS" inherits="HealBot_Options_SliderTemplate">
|
||||||
|
<Size>
|
||||||
|
<AbsDimension x="123" y="17" />
|
||||||
|
</Size>
|
||||||
|
<Anchors>
|
||||||
|
<Anchor point="TOPLEFT" relativeTo="HealBot_Options_FontHeight" relativePoint="TOPRIGHT">
|
||||||
|
<Offset>
|
||||||
|
<AbsDimension x="10" y="0" />
|
||||||
|
</Offset>
|
||||||
|
</Anchor>
|
||||||
|
</Anchors>
|
||||||
|
<Scripts>
|
||||||
|
<OnLoad>HealBot_Options_val_OnLoad(this,"Icon size",5,30)</OnLoad>
|
||||||
|
<OnValueChanged>HealBot_Options_IconSizeS_OnValueChanged(this)</OnValueChanged>
|
||||||
|
</Scripts>
|
||||||
|
</Slider>
|
||||||
|
|
||||||
<Slider name="HealBot_Options_BorderThicknessS" inherits="HealBot_Options_SliderTemplate">
|
<Slider name="HealBot_Options_BorderThicknessS" inherits="HealBot_Options_SliderTemplate">
|
||||||
<Size>
|
<Size>
|
||||||
|
|||||||
+31
-18
@@ -27,24 +27,19 @@ end
|
|||||||
|
|
||||||
function HealBot_HealthColor(unit, hlth, maxhlth)
|
function HealBot_HealthColor(unit, hlth, maxhlth)
|
||||||
if HealBot_UnitDebuff[unit] then
|
if HealBot_UnitDebuff[unit] then
|
||||||
local debuff, tmp, debuff_type = UnitDebuff(unit, 1, 1)
|
local debuff_type = HealBot_UnitDebuff[unit]
|
||||||
if not debuff then
|
local dr = HealBot_Config.CDCBarColour[debuff_type].R
|
||||||
HealBot_UnitDebuff[unit] = nil;
|
local dg = HealBot_Config.CDCBarColour[debuff_type].G
|
||||||
HealBot_UnitDebuff[unit .. "_debuff_texture"] = nil
|
local db = HealBot_Config.CDCBarColour[debuff_type].B
|
||||||
else
|
if HealBot_Config.btexture[HealBot_Config.Current_Skin] == 10 then
|
||||||
local dr = HealBot_Config.CDCBarColour[debuff_type].R
|
dr = dr * 4
|
||||||
local dg = HealBot_Config.CDCBarColour[debuff_type].G
|
dg = dg * 4
|
||||||
local db = HealBot_Config.CDCBarColour[debuff_type].B
|
db = db * 4
|
||||||
if HealBot_Config.btexture[HealBot_Config.Current_Skin] == 10 then
|
if dr > 1 then dr = 1 end
|
||||||
dr = dr * 4
|
if dg > 1 then dg = 1 end
|
||||||
dg = dg * 4
|
if db > 1 then db = 1 end
|
||||||
db = db * 4
|
|
||||||
if dr > 1 then dr = 1 end
|
|
||||||
if dg > 1 then dg = 1 end
|
|
||||||
if db > 1 then db = 1 end
|
|
||||||
end
|
|
||||||
return dr, dg, db, HealBot_Config.Barcola[HealBot_Config.Current_Skin];
|
|
||||||
end
|
end
|
||||||
|
return dr, dg, db, HealBot_Config.Barcola[HealBot_Config.Current_Skin];
|
||||||
end
|
end
|
||||||
|
|
||||||
local text = UnitName(unit);
|
local text = UnitName(unit);
|
||||||
@@ -251,11 +246,14 @@ function HealBot_Action_EnableButton(button)
|
|||||||
bar.txt:SetFont(fontName, fontHeight, "")
|
bar.txt:SetFont(fontName, fontHeight, "")
|
||||||
end
|
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)
|
local icon = getglobal(button:GetName() .. "BarIcon" .. i)
|
||||||
if icon then
|
if icon then
|
||||||
if HealBot_UnitIcons and HealBot_UnitIcons[unit] and HealBot_UnitIcons[unit][i] then
|
if HealBot_UnitIcons and HealBot_UnitIcons[unit] and HealBot_UnitIcons[unit][i] then
|
||||||
icon:SetTexture(HealBot_UnitIcons[unit][i])
|
icon:SetTexture(HealBot_UnitIcons[unit][i])
|
||||||
|
icon:SetWidth(iconSize)
|
||||||
|
icon:SetHeight(iconSize)
|
||||||
icon:Show()
|
icon:Show()
|
||||||
else
|
else
|
||||||
icon:Hide()
|
icon:Hide()
|
||||||
@@ -305,6 +303,21 @@ function HealBot_Action_RefreshButtons(unit)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function HealBot_Action_RefreshPower(unit)
|
||||||
|
if not unit or not HealBot_Action_UnitButtons[unit] then return end
|
||||||
|
local state = HealBot_Model.units[unit]
|
||||||
|
if not state then return end
|
||||||
|
|
||||||
|
for index, button in pairs(HealBot_Action_UnitButtons[unit]) do
|
||||||
|
if not button.bar3 then button.bar3 = getglobal(button:GetName() .. "Bar3") end
|
||||||
|
local bar3 = button.bar3
|
||||||
|
if bar3 and bar3:IsVisible() then
|
||||||
|
bar3:SetMinMaxValues(0, state.maxMana)
|
||||||
|
bar3:SetValue(state.mana)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
function HealBot_Action_PositionButton(button, OsetX, OsetY, bwidth, bheight, checked, header)
|
function HealBot_Action_PositionButton(button, OsetX, OsetY, bwidth, bheight, checked, header)
|
||||||
local brspace = HealBot_Config.brspace[HealBot_Config.Current_Skin] or 3;
|
local brspace = HealBot_Config.brspace[HealBot_Config.Current_Skin] or 3;
|
||||||
if header then
|
if header then
|
||||||
|
|||||||
@@ -49,6 +49,20 @@ Default installation path: `C:\Program Files\World of Warcraft\Interface\AddOns\
|
|||||||
|
|
||||||
### Change Log
|
### Change Log
|
||||||
|
|
||||||
|
**v1.6.5**
|
||||||
|
* **Performance Update - Mana Tracking** - Added a fast-path redraw pipeline for unit power changes. This massive optimization prevents full frame redraws when players naturally regenerate or consume mana, resolving severe FPS drops in 40-man raids while tracking mana.
|
||||||
|
|
||||||
|
**v1.6.4**
|
||||||
|
* **Bug Fix - UI Opacity** - Fixed a rendering layering bug where incoming heals drew on top of actual health, causing the semi-transparent incoming heal bar to wash out the solid health bar.
|
||||||
|
* **Bug Fix - CDC Colors** - Fixed health bar debuff coloring (CDC) by stopping `HealBot_HealthColor` from incorrectly querying debuffs directly, relying instead on cached debuff types.
|
||||||
|
|
||||||
|
|
||||||
|
**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**
|
**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.
|
* **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).
|
* **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).
|
||||||
|
|||||||
Reference in New Issue
Block a user