docs: add function-level documentation comments across various source files to improve the readability of codebase

This commit is contained in:
Bluewhale1337
2026-08-24 12:42:23 +02:00
parent d09e49d26a
commit 6d977f6963
24 changed files with 335 additions and 27 deletions
+16
View File
@@ -15,6 +15,7 @@ HealBot_Delay_RecalcParty=0;
-- Debugging and Error functions moved to HealBot_Controller_Comms.lua -- Debugging and Error functions moved to HealBot_Controller_Comms.lua
-- HealBot_TogglePanel: Toggles visibility of a frame panel.
function HealBot_TogglePanel(panel) function HealBot_TogglePanel(panel)
if (not panel) then return end if (not panel) then return end
if ( panel:IsVisible() ) then if ( panel:IsVisible() ) then
@@ -24,6 +25,7 @@ function HealBot_TogglePanel(panel)
end end
end end
-- HealBot_StartMoving: Initiates frame dragging when unlocked.
function HealBot_StartMoving(frame) function HealBot_StartMoving(frame)
if ( not frame.isMoving ) and ( frame.isLocked ~= 1 ) then if ( not frame.isMoving ) and ( frame.isLocked ~= 1 ) then
frame:StartMoving(); frame:StartMoving();
@@ -31,6 +33,7 @@ function HealBot_StartMoving(frame)
end end
end end
-- HealBot_StopMoving: Stops frame dragging.
function HealBot_StopMoving(frame) function HealBot_StopMoving(frame)
if ( frame.isMoving ) then if ( frame.isMoving ) then
frame:StopMovingOrSizing(); frame:StopMovingOrSizing();
@@ -47,6 +50,7 @@ function HealBot_StopMoving(frame)
end end
-- HealBot_SlashCmd: Handles '/hb' or '/healbot' chat commands.
function HealBot_SlashCmd(cmd) function HealBot_SlashCmd(cmd)
if (cmd=="") then if (cmd=="") then
HealBot_TogglePanel(HealBot_Action); HealBot_TogglePanel(HealBot_Action);
@@ -103,6 +107,7 @@ end
-- HealBot_SendAddonMessage moved to HealBot_Controller_Comms.lua -- HealBot_SendAddonMessage moved to HealBot_Controller_Comms.lua
-- HealBot_TargetName: Retrieves the name of the current target, ignoring enemies.
function HealBot_TargetName() function HealBot_TargetName()
if UnitIsEnemy("target","player") then return nil end if UnitIsEnemy("target","player") then return nil end
-- if not UnitPlayerControlled("target") then return nil end -- if not UnitPlayerControlled("target") then return nil end
@@ -136,14 +141,17 @@ end
-- HealBot_PackBagSlot: Combines bag and slot into a single ID.
function HealBot_PackBagSlot(bag,slot) function HealBot_PackBagSlot(bag,slot)
return bag*100+slot; return bag*100+slot;
end end
-- HealBot_UnpackBagSlot: Extracts bag and slot from a combined ID.
function HealBot_UnpackBagSlot(bagslot) function HealBot_UnpackBagSlot(bagslot)
return math.floor(bagslot/100),math.mod(bagslot,100); return math.floor(bagslot/100),math.mod(bagslot,100);
end end
-- HealBot_GetItemName: Gets item name from bag slot link.
function HealBot_GetItemName(bag,slot) function HealBot_GetItemName(bag,slot)
local link = GetContainerItemLink(bag,slot); local link = GetContainerItemLink(bag,slot);
if not link then return nil end; if not link then return nil end;
@@ -152,6 +160,7 @@ function HealBot_GetItemName(bag,slot)
return item,count; return item,count;
end end
-- HealBot_GetBagSlot: Finds bag slot ID for an item name.
function HealBot_GetBagSlot(item) function HealBot_GetBagSlot(item)
local BagSlot,BestCount; local BagSlot,BestCount;
for bag=0,NUM_BAG_FRAMES do for bag=0,NUM_BAG_FRAMES do
@@ -168,6 +177,7 @@ function HealBot_GetBagSlot(item)
return BagSlot; return BagSlot;
end end
-- HealBot_UseItem: Uses an item from inventory.
function HealBot_UseItem(item) function HealBot_UseItem(item)
local bagslot = HealBot_GetBagSlot(item); local bagslot = HealBot_GetBagSlot(item);
if not bagslot then return end; if not bagslot then return end;
@@ -178,6 +188,7 @@ end
-- Spell parsing and casting functions moved to HealBot_Controller_Spells.lua -- Spell parsing and casting functions moved to HealBot_Controller_Spells.lua
-- HealBot_UnitClass: Returns English class string for a unit.
function HealBot_UnitClass(unit) function HealBot_UnitClass(unit)
local playerClass, englishClass = UnitClass(unit); local playerClass, englishClass = UnitClass(unit);
return englishClass; return englishClass;
@@ -197,6 +208,7 @@ end
-- SpiBonus and GetBonus functions moved to HealBot_Controller_Spells.lua -- SpiBonus and GetBonus functions moved to HealBot_Controller_Spells.lua
-- HealBot_FindUnitID: Finds a unit token for a given player name.
function HealBot_FindUnitID(unitname) function HealBot_FindUnitID(unitname)
local text; local text;
for _,unit in ipairs(HealBot_Action_HealGroup) do for _,unit in ipairs(HealBot_Action_HealGroup) do
@@ -219,6 +231,7 @@ function HealBot_FindUnitID(unitname)
return nil; return nil;
end end
-- HealBot_PlaySound: Plays an audio alert based on ID.
function HealBot_PlaySound(id) function HealBot_PlaySound(id)
if id==1 then if id==1 then
PlaySoundFile("Sound\\Doodad\\BellTollTribal.wav"); PlaySoundFile("Sound\\Doodad\\BellTollTribal.wav");
@@ -231,6 +244,7 @@ end
-- HealBot_InitSpells moved to HealBot_Controller_Spells.lua -- HealBot_InitSpells moved to HealBot_Controller_Spells.lua
-- HealBot_InitData: Registers options and basic setup on variables loaded.
function HealBot_InitData() function HealBot_InitData()
HealBot_Skins = HealBot_Config.Skins; HealBot_Skins = HealBot_Config.Skins;
if(CT_RegisterMod) then if(CT_RegisterMod) then
@@ -246,6 +260,7 @@ function HealBot_InitData()
HealBot_Options_Debuff_Reset() HealBot_Options_Debuff_Reset()
end end
-- HealBot_ToggleOptions: Toggles the main options menu.
function HealBot_ToggleOptions() function HealBot_ToggleOptions()
HealBot_TogglePanel(HealBot_Options) HealBot_TogglePanel(HealBot_Options)
end end
@@ -262,6 +277,7 @@ end
do do
local pass = function() end local pass = function() end
local orig = UseAction local orig = UseAction
-- UseAction: Intercepts standard clicks for mouseover support.
function UseAction(slot, checkCursor, onSelf) function UseAction(slot, checkCursor, onSelf)
if HealBot_Config.ActionMouseover == 1 then if HealBot_Config.ActionMouseover == 1 then
local mouseover = HealBot_Action_TooltipUnit local mouseover = HealBot_Action_TooltipUnit
+33
View File
@@ -1,9 +1,11 @@
-- Status bar layout functions and tables moved to HealBot_View_Layout.lua -- Status bar layout functions and tables moved to HealBot_View_Layout.lua
-- HealBot_AlwaysHeal: Returns true if healthy units should be shown.
function HealBot_AlwaysHeal() function HealBot_AlwaysHeal()
return HealBot_Config.EnableHealthy==1 return HealBot_Config.EnableHealthy==1
end end
-- HealBot_MayHeal: Checks if unit is eligible for healing UI.
function HealBot_MayHeal(unit) function HealBot_MayHeal(unit)
if not UnitName(unit) or not HealBot_Heals[unit] then return false end if not UnitName(unit) or not HealBot_Heals[unit] then return false end
if unit ~= 'target' then return true end if unit ~= 'target' then return true end
@@ -11,6 +13,7 @@ function HealBot_MayHeal(unit)
return true; return true;
end end
-- HealBot_ShouldHeal: Checks if unit needs immediate healing.
function HealBot_ShouldHeal(unit) function HealBot_ShouldHeal(unit)
if HealBot_UnitDebuff[unit] and not UnitIsDeadOrGhost(unit) then if HealBot_UnitDebuff[unit] and not UnitIsDeadOrGhost(unit) then
if HealBot_Range_Check(unit, 30)==1 then if HealBot_Range_Check(unit, 30)==1 then
@@ -21,22 +24,26 @@ function HealBot_ShouldHeal(unit)
and (UnitHealth(unit)<UnitHealthMax(unit)*HealBot_Config.AlertLevel or HealBot_AlwaysHeal()); and (UnitHealth(unit)<UnitHealthMax(unit)*HealBot_Config.AlertLevel or HealBot_AlwaysHeal());
end end
-- HealBot_Action_ShouldHealSome: Alias for checking if any unit needs healing.
function HealBot_Action_ShouldHealSome() function HealBot_Action_ShouldHealSome()
for index, button in pairs(HealBot_Action_HealButtons) do for index, button in pairs(HealBot_Action_HealButtons) do
if (HealBot_ShouldHeal(button.unit)) then return button.unit; end if (HealBot_ShouldHeal(button.unit)) then return button.unit; end
end end
end end
-- HealBot_MustHeal: Internal utility: HealBot_MustHeal
function HealBot_MustHeal(unit) function HealBot_MustHeal(unit)
return HealBot_ShouldHeal(unit) and UnitHealth(unit)<UnitHealthMax(unit)*HealBot_Config.AlertLevel return HealBot_ShouldHeal(unit) and UnitHealth(unit)<UnitHealthMax(unit)*HealBot_Config.AlertLevel
end end
-- HealBot_Action_MustHealSome: Checks if emergency healing is required.
function HealBot_Action_MustHealSome() function HealBot_Action_MustHealSome()
for index, button in pairs(HealBot_Action_HealButtons) do for index, button in pairs(HealBot_Action_HealButtons) do
if (HealBot_MustHeal(button.unit)) then return button.unit; end if (HealBot_MustHeal(button.unit)) then return button.unit; end
end end
end end
-- HealBot_GetRezSpellForClass: Internal utility: HealBot_GetRezSpellForClass
function HealBot_GetRezSpellForClass() function HealBot_GetRezSpellForClass()
local _, class = UnitClass("player"); local _, class = UnitClass("player");
if class == "PRIEST" then return HEALBOT_RESURRECTION; if class == "PRIEST" then return HEALBOT_RESURRECTION;
@@ -47,6 +54,7 @@ function HealBot_GetRezSpellForClass()
return nil; return nil;
end end
-- HealBot_CanHeal: Internal utility: HealBot_CanHeal
function HealBot_CanHeal(unit) function HealBot_CanHeal(unit)
if UnitIsDeadOrGhost(unit) then if UnitIsDeadOrGhost(unit) then
local rezSpell = HealBot_GetRezSpellForClass(); local rezSpell = HealBot_GetRezSpellForClass();
@@ -76,6 +84,7 @@ end
-- Refresh and reset functions moved to HealBot_View_Layout.lua -- Refresh and reset functions moved to HealBot_View_Layout.lua
-- HealBot_Action_SpellPattern: Resolves spell string based on click modifiers.
function HealBot_Action_SpellPattern(button) function HealBot_Action_SpellPattern(button)
local combos = HealBot_Config.KeyCombo[UnitClass("player")] local combos = HealBot_Config.KeyCombo[UnitClass("player")]
if not combos then return nil end if not combos then return nil end
@@ -86,6 +95,7 @@ function HealBot_Action_SpellPattern(button)
return combos[press] return combos[press]
end end
-- HealBot_Decode_Button: Decodes click action to spell pattern.
function HealBot_Decode_Button(button) function HealBot_Decode_Button(button)
if button=="RightButton" then if button=="RightButton" then
button="Right"; button="Right";
@@ -105,14 +115,17 @@ end
-- Widget_OnFoo functions -- Widget_OnFoo functions
-------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------
-- HealBot_Action_HealUnit_OnLoad: Internal utility: HealBot_Action_HealUnit_OnLoad
function HealBot_Action_HealUnit_OnLoad(this) function HealBot_Action_HealUnit_OnLoad(this)
this:RegisterForClicks("LeftButtonUp", "RightButtonUp", "MiddleButtonUp", "Button4Up", "Button5Up"); this:RegisterForClicks("LeftButtonUp", "RightButtonUp", "MiddleButtonUp", "Button4Up", "Button5Up");
end end
-- HealBot_Action_HealUnit_OnEnter: Internal utility: HealBot_Action_HealUnit_OnEnter
function HealBot_Action_HealUnit_OnEnter(this) function HealBot_Action_HealUnit_OnEnter(this)
HealBot_Action_ShowTooltip(this); HealBot_Action_ShowTooltip(this);
end end
-- HealBot_Action_HealUnit_OnLeave: Internal utility: HealBot_Action_HealUnit_OnLeave
function HealBot_Action_HealUnit_OnLeave(this) function HealBot_Action_HealUnit_OnLeave(this)
HealBot_Action_HideTooltip(this); HealBot_Action_HideTooltip(this);
end end
@@ -121,6 +134,7 @@ end
-- Puppeteer Utility Ports for Macro and Item Execution -- Puppeteer Utility Ports for Macro and Item Execution
-------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------
-- HealBot_SplitString: Internal utility: HealBot_SplitString
function HealBot_SplitString(str, delimiter) function HealBot_SplitString(str, delimiter)
local result = {} local result = {}
if not delimiter or delimiter == "" then if not delimiter or delimiter == "" then
@@ -139,6 +153,7 @@ function HealBot_SplitString(str, delimiter)
return result return result
end end
-- HealBot_RunMacroText: Internal utility: HealBot_RunMacroText
function HealBot_RunMacroText(body) function HealBot_RunMacroText(body)
local commands = HealBot_SplitString(body, "\n") local commands = HealBot_SplitString(body, "\n")
for i = 1, table.getn(commands) do for i = 1, table.getn(commands) do
@@ -147,12 +162,14 @@ function HealBot_RunMacroText(body)
end end
end end
-- HealBot_RunMacro: Internal utility: HealBot_RunMacro
function HealBot_RunMacro(name) function HealBot_RunMacro(name)
if GetMacroIndexByName(name) == 0 then return end if GetMacroIndexByName(name) == 0 then return end
local _, _, body = GetMacroInfo(GetMacroIndexByName(name)) local _, _, body = GetMacroInfo(GetMacroIndexByName(name))
HealBot_RunMacroText(body) HealBot_RunMacroText(body)
end end
-- HealBot_GetBagSlotInfo: Internal utility: HealBot_GetBagSlotInfo
function HealBot_GetBagSlotInfo(bag, slot) function HealBot_GetBagSlotInfo(bag, slot)
local link = GetContainerItemLink(bag, slot) local link = GetContainerItemLink(bag, slot)
if not link then return end if not link then return end
@@ -161,6 +178,7 @@ function HealBot_GetBagSlotInfo(bag, slot)
return name, count return name, count
end end
-- HealBot_FindBagSlot: Internal utility: HealBot_FindBagSlot
function HealBot_FindBagSlot(itemName) function HealBot_FindBagSlot(itemName)
local bestBag, bestSlot, lowestStackSize local bestBag, bestSlot, lowestStackSize
for bag = 0, NUM_BAG_FRAMES do for bag = 0, NUM_BAG_FRAMES do
@@ -178,6 +196,7 @@ function HealBot_FindBagSlot(itemName)
return bestBag, bestSlot return bestBag, bestSlot
end end
-- HealBot_UseItem: Uses an item from inventory.
function HealBot_UseItem(itemName) function HealBot_UseItem(itemName)
local bag, slot = HealBot_FindBagSlot(itemName) local bag, slot = HealBot_FindBagSlot(itemName)
if not bag then return false end if not bag then return false end
@@ -185,6 +204,7 @@ function HealBot_UseItem(itemName)
return true return true
end end
-- HealBot_Action_HealUnit_OnClick: Click event handler.
function HealBot_Action_HealUnit_OnClick(this,button) function HealBot_Action_HealUnit_OnClick(this,button)
local decode_button = HealBot_Decode_Button(button); local decode_button = HealBot_Decode_Button(button);
local pattern = HealBot_Action_SpellPattern(decode_button); local pattern = HealBot_Action_SpellPattern(decode_button);
@@ -270,6 +290,7 @@ function HealBot_Action_HealUnit_OnClick(this,button)
HealBot_HealUnit(this.unit, pattern); HealBot_HealUnit(this.unit, pattern);
end end
-- HealBot_Action_HealUnitCheck_OnClick: Click event handler.
function HealBot_Action_HealUnitCheck_OnClick(this) function HealBot_Action_HealUnitCheck_OnClick(this)
if not this.unit then return end if not this.unit then return end
if this:GetChecked() then if this:GetChecked() then
@@ -285,20 +306,24 @@ function HealBot_Action_HealUnitCheck_OnClick(this)
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Action_OptionsButton_OnClick: Click event handler.
function HealBot_Action_OptionsButton_OnClick(this) function HealBot_Action_OptionsButton_OnClick(this)
HealBot_TogglePanel(HealBot_Options); HealBot_TogglePanel(HealBot_Options);
end end
-- HealBot_Action_AbortButton_OnClick: Click event handler.
function HealBot_Action_AbortButton_OnClick(this) function HealBot_Action_AbortButton_OnClick(this)
SpellStopCasting(); SpellStopCasting();
end end
local HealBot_CT_RA_UpdateMTs_Old; local HealBot_CT_RA_UpdateMTs_Old;
-- HealBot_CT_RA_UpdateMTs: Internal utility: HealBot_CT_RA_UpdateMTs
function HealBot_CT_RA_UpdateMTs() function HealBot_CT_RA_UpdateMTs()
local value = HealBot_CT_RA_UpdateMTs_Old(); local value = HealBot_CT_RA_UpdateMTs_Old();
return value; return value;
end end
-- HealBot_CT_RaidAssist_DEAD: Internal utility: HealBot_CT_RaidAssist_DEAD
function HealBot_CT_RaidAssist_DEAD() function HealBot_CT_RaidAssist_DEAD()
-- if (type(CT_RA_MemberFrame_OnClick)=="function") then -- if (type(CT_RA_MemberFrame_OnClick)=="function") then
-- HealBot_CT_RA_CustomOnClickFunction_Old = CT_RA_CustomOnClickFunction; -- HealBot_CT_RA_CustomOnClickFunction_Old = CT_RA_CustomOnClickFunction;
@@ -314,10 +339,12 @@ end
-- Frame_OnFoo functions -- Frame_OnFoo functions
-------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------
-- HealBot_Action_OnLoad: Internal utility: HealBot_Action_OnLoad
function HealBot_Action_OnLoad(this) function HealBot_Action_OnLoad(this)
-- HealBot_CT_RaidAssist(); -- HealBot_CT_RaidAssist();
end end
-- HealBot_Action_OnShow: Show event handler.
function HealBot_Action_OnShow(this) function HealBot_Action_OnShow(this)
if HealBot_Config.PanelSounds==1 then if HealBot_Config.PanelSounds==1 then
PlaySound("igAbilityOpen"); PlaySound("igAbilityOpen");
@@ -358,6 +385,7 @@ function HealBot_Action_OnShow(this)
HealBot_Config.backcola[HealBot_Config.Current_Skin]); HealBot_Config.backcola[HealBot_Config.Current_Skin]);
end end
-- HealBot_Action_OnHide: Hide event handler.
function HealBot_Action_OnHide(this) function HealBot_Action_OnHide(this)
HealBot_StopMoving(this); HealBot_StopMoving(this);
if not this.ProgrammaticHide then if not this.ProgrammaticHide then
@@ -365,6 +393,7 @@ function HealBot_Action_OnHide(this)
end end
end end
-- HealBot_Action_OnMouseDown: Internal utility: HealBot_Action_OnMouseDown
function HealBot_Action_OnMouseDown(this,button) function HealBot_Action_OnMouseDown(this,button)
if button~="RightButton" then if button~="RightButton" then
if HealBot_Config.ActionLocked==0 then if HealBot_Config.ActionLocked==0 then
@@ -373,6 +402,7 @@ function HealBot_Action_OnMouseDown(this,button)
end end
end end
-- HealBot_Action_OnMouseUp: Internal utility: HealBot_Action_OnMouseUp
function HealBot_Action_OnMouseUp(this,button) function HealBot_Action_OnMouseUp(this,button)
if button~="RightButton" then if button~="RightButton" then
HealBot_StopMoving(this); HealBot_StopMoving(this);
@@ -381,16 +411,19 @@ function HealBot_Action_OnMouseUp(this,button)
end end
end end
-- HealBot_Action_OnClick: Handles click events on heal buttons.
function HealBot_Action_OnClick(this,button) function HealBot_Action_OnClick(this,button)
-- HealBot_Action_AddDebug("OnClick("..button..")"); -- HealBot_Action_AddDebug("OnClick("..button..")");
end end
-- HealBot_Action_OnDragStart: Internal utility: HealBot_Action_OnDragStart
function HealBot_Action_OnDragStart(this,button) function HealBot_Action_OnDragStart(this,button)
if HealBot_Config.ActionLocked==0 then if HealBot_Config.ActionLocked==0 then
HealBot_StartMoving(this); HealBot_StartMoving(this);
end end
end end
-- HealBot_Action_OnDragStop: Internal utility: HealBot_Action_OnDragStop
function HealBot_Action_OnDragStop(this) function HealBot_Action_OnDragStop(this)
HealBot_StopMoving(this); HealBot_StopMoving(this);
end end
+10
View File
@@ -50,6 +50,7 @@ HealBot_BonusScanner = {
}; };
} }
-- HealBot_BonusScanner:GetBonus: Internal utility: HealBot_BonusScanner:GetBonus
function HealBot_BonusScanner:GetBonus() function HealBot_BonusScanner:GetBonus()
if(HealBot_BonusScanner.bonuses) then if(HealBot_BonusScanner.bonuses) then
return HealBot_BonusScanner.bonuses; return HealBot_BonusScanner.bonuses;
@@ -58,6 +59,7 @@ function HealBot_BonusScanner:GetBonus()
end end
-- HealBot_BonusScanner_Update: Internal utility: HealBot_BonusScanner_Update
function HealBot_BonusScanner_Update() function HealBot_BonusScanner_Update()
if (HealBot_BonusScanner.IsUpdating) then if (HealBot_BonusScanner.IsUpdating) then
@@ -69,6 +71,7 @@ function HealBot_BonusScanner_Update()
HealBot_BonusScanner.IsUpdating = false; HealBot_BonusScanner.IsUpdating = false;
end end
-- HealBot_BonusScanner:ScanEquipment: Internal utility: HealBot_BonusScanner:ScanEquipment
function HealBot_BonusScanner:ScanEquipment() function HealBot_BonusScanner:ScanEquipment()
local slotid, slotname, hasItem, i; local slotid, slotname, hasItem, i;
@@ -90,6 +93,7 @@ function HealBot_BonusScanner:ScanEquipment()
HealBot_BonusScanner.bonuses = HealBot_BonusScanner.temp.bonuses; HealBot_BonusScanner.bonuses = HealBot_BonusScanner.temp.bonuses;
end end
-- HealBot_BonusScanner:ScanTooltip: Internal utility: HealBot_BonusScanner:ScanTooltip
function HealBot_BonusScanner:ScanTooltip() function HealBot_BonusScanner:ScanTooltip()
local tmpTxt, line; local tmpTxt, line;
local lines = HealBot_BonusTooltip:NumLines(); local lines = HealBot_BonusTooltip:NumLines();
@@ -103,6 +107,7 @@ function HealBot_BonusScanner:ScanTooltip()
end end
end end
-- HealBot_BonusScanner:AddValue: Internal utility: HealBot_BonusScanner:AddValue
function HealBot_BonusScanner:AddValue(effect, value) function HealBot_BonusScanner:AddValue(effect, value)
local i,e; local i,e;
if(type(effect) == "string") then if(type(effect) == "string") then
@@ -126,6 +131,7 @@ function HealBot_BonusScanner:AddValue(effect, value)
end end
end; end;
-- HealBot_BonusScanner:ScanLine: Internal utility: HealBot_BonusScanner:ScanLine
function HealBot_BonusScanner:ScanLine(line) function HealBot_BonusScanner:ScanLine(line)
local tmpStr, found; local tmpStr, found;
if(string.sub(line,0,string.len(HEALBOT_BONUSSCANNER_PREFIX_EQUIP)) == HEALBOT_BONUSSCANNER_PREFIX_EQUIP) then if(string.sub(line,0,string.len(HEALBOT_BONUSSCANNER_PREFIX_EQUIP)) == HEALBOT_BONUSSCANNER_PREFIX_EQUIP) then
@@ -150,6 +156,7 @@ function HealBot_BonusScanner:ScanLine(line)
end end
end; end;
-- HealBot_BonusScanner:CheckPassive: Internal utility: HealBot_BonusScanner:CheckPassive
function HealBot_BonusScanner:CheckPassive(line) function HealBot_BonusScanner:CheckPassive(line)
local i, p, value, found; local i, p, value, found;
@@ -166,6 +173,7 @@ function HealBot_BonusScanner:CheckPassive(line)
end end
end end
-- HealBot_BonusScanner:CheckGeneric: Internal utility: HealBot_BonusScanner:CheckGeneric
function HealBot_BonusScanner:CheckGeneric(line) function HealBot_BonusScanner:CheckGeneric(line)
local value, token, pos, tmpStr, found; local value, token, pos, tmpStr, found;
found = false; found = false;
@@ -199,6 +207,7 @@ function HealBot_BonusScanner:CheckGeneric(line)
return found; return found;
end end
-- HealBot_BonusScanner:CheckToken: Internal utility: HealBot_BonusScanner:CheckToken
function HealBot_BonusScanner:CheckToken(token, value) function HealBot_BonusScanner:CheckToken(token, value)
local i, p, s1, s2; local i, p, s1, s2;
@@ -209,6 +218,7 @@ function HealBot_BonusScanner:CheckToken(token, value)
return false; return false;
end end
-- HealBot_BonusScanner:CheckOther: Internal utility: HealBot_BonusScanner:CheckOther
function HealBot_BonusScanner:CheckOther(line) function HealBot_BonusScanner:CheckOther(line)
local i, p, value, start, found; local i, p, value, start, found;
+4
View File
@@ -4,6 +4,7 @@
HealBot_MissingBuffs = {} HealBot_MissingBuffs = {}
local StaticHasBuff = {} local StaticHasBuff = {}
-- HealBot_UnitAffected: Checks if a specific buff/debuff exists on a unit.
function HealBot_UnitAffected(unit, effect) function HealBot_UnitAffected(unit, effect)
if not effect then return nil; end if not effect then return nil; end
local i = 1 local i = 1
@@ -31,6 +32,7 @@ function HealBot_UnitAffected(unit, effect)
return nil; return nil;
end end
-- HealBot_CheckShamanWeaponBuff: Checks for Shaman weapon enchants via API.
function HealBot_CheckShamanWeaponBuff(spellName) function HealBot_CheckShamanWeaponBuff(spellName)
local hasMainHandEnchant, _, _, hasOffHandEnchant = GetWeaponEnchantInfo() local hasMainHandEnchant, _, _, hasOffHandEnchant = GetWeaponEnchantInfo()
if not (hasMainHandEnchant or hasOffHandEnchant) then return false end if not (hasMainHandEnchant or hasOffHandEnchant) then return false end
@@ -64,6 +66,7 @@ function HealBot_CheckShamanWeaponBuff(spellName)
return false return false
end end
-- HealBot_CheckBuffs: Scans unit for missing tracked buffs.
function HealBot_CheckBuffs(unit) function HealBot_CheckBuffs(unit)
if HealBot_Config.BuffWatch ~= 1 then if HealBot_Config.BuffWatch ~= 1 then
HealBot_MissingBuffs[unit] = nil HealBot_MissingBuffs[unit] = nil
@@ -157,6 +160,7 @@ local HealBot_TrackedHoTs = {
local HealBot_DebuffTypeMap = nil local HealBot_DebuffTypeMap = nil
-- HealBot_OnEvent_UnitAura: Updates debuff lists and icon textures on aura change.
function HealBot_OnEvent_UnitAura(this, unit) function HealBot_OnEvent_UnitAura(this, unit)
if not HealBot_DebuffTypeMap then if not HealBot_DebuffTypeMap then
HealBot_DebuffTypeMap = { HealBot_DebuffTypeMap = {
+7
View File
@@ -1,6 +1,7 @@
-- HealBot_Controller_Comms.lua -- HealBot_Controller_Comms.lua
-- Handles network sync (addon messaging), errors, and chat debugging -- Handles network sync (addon messaging), errors, and chat debugging
-- HealBot_Get_DebugChan: Internal utility: HealBot_Get_DebugChan
function HealBot_Get_DebugChan() function HealBot_Get_DebugChan()
local index = GetChannelName("HBmsg"); local index = GetChannelName("HBmsg");
if (index > 0) then if (index > 0) then
@@ -10,6 +11,7 @@ function HealBot_Get_DebugChan()
end end
end end
-- HealBot_AddChat: Prints standard messages to default chat frame.
function HealBot_AddChat(msg) function HealBot_AddChat(msg)
local chanid = HealBot_Get_DebugChan(); local chanid = HealBot_Get_DebugChan();
if chanid and HealBot_SpamCnt < 3 then if chanid and HealBot_SpamCnt < 3 then
@@ -28,6 +30,7 @@ function HealBot_AddChat(msg)
end end
end end
-- HealBot_AddDebug: Prints debug messages to internal chat channel.
function HealBot_AddDebug(msg) function HealBot_AddDebug(msg)
local chanid = HealBot_Get_DebugChan(); local chanid = HealBot_Get_DebugChan();
if chanid and HealBot_SpamCnt < 3 then if chanid and HealBot_SpamCnt < 3 then
@@ -44,6 +47,7 @@ function HealBot_AddDebug(msg)
end end
end end
-- HealBot_Report_Error: Formats and prints error logs.
function HealBot_Report_Error(msg) function HealBot_Report_Error(msg)
if HealBot_ErrorCnt < 28 then if HealBot_ErrorCnt < 28 then
HealBot_ErrorCnt = HealBot_ErrorCnt + 1; HealBot_ErrorCnt = HealBot_ErrorCnt + 1;
@@ -52,11 +56,13 @@ function HealBot_Report_Error(msg)
end end
end end
-- HealBot_AddError: Displays error text in the UI frame.
function HealBot_AddError(msg) function HealBot_AddError(msg)
UIErrorsFrame:AddMessage(msg, 1.0, 1.0, 1.0, 1.0, UIERRORS_HOLD_TIME); UIErrorsFrame:AddMessage(msg, 1.0, 1.0, 1.0, 1.0, UIERRORS_HOLD_TIME);
HealBot_AddDebug(msg); HealBot_AddDebug(msg);
end end
-- HealBot_SendAddonMessage: Broadcasts data to party/raid channels.
function HealBot_SendAddonMessage(prefix, text) function HealBot_SendAddonMessage(prefix, text)
if GetNumRaidMembers() > 0 then if GetNumRaidMembers() > 0 then
SendAddonMessage(prefix, text, "RAID") SendAddonMessage(prefix, text, "RAID")
@@ -65,6 +71,7 @@ function HealBot_SendAddonMessage(prefix, text)
end end
end end
-- HealBot_OnEvent_AddonMsg: Parses incoming heal data from other clients.
function HealBot_OnEvent_AddonMsg(this, addon_id, inc_msg, dist_target, sender_id) function HealBot_OnEvent_AddonMsg(this, addon_id, inc_msg, dist_target, sender_id)
if addon_id == HEALBOT_ADDON_ID then if addon_id == HEALBOT_ADDON_ID then
local tmpTest, unitname, heal_val local tmpTest, unitname, heal_val
+22
View File
@@ -6,6 +6,7 @@ HealBot_View_DirtyPower = {}
local HealBot_Timer1, HealsIn_Timer = 0, 0; local HealBot_Timer1, HealsIn_Timer = 0, 0;
HealBot_LastModState = "" HealBot_LastModState = ""
-- HealBot_OnLoad: Registers core events and observers on addon load.
function HealBot_OnLoad(this) function HealBot_OnLoad(this)
this:RegisterEvent("VARIABLES_LOADED"); this:RegisterEvent("VARIABLES_LOADED");
@@ -36,10 +37,12 @@ function HealBot_OnLoad(this)
end) end)
end end
-- HealBot_RegisterThis: Internal utility: HealBot_RegisterThis
function HealBot_RegisterThis(this) function HealBot_RegisterThis(this)
-- Deprecated / not used -- Deprecated / not used
end end
-- HealBot_OnUpdate: Main loop: processes dirty queues and timers.
function HealBot_OnUpdate(this, arg1) function HealBot_OnUpdate(this, arg1)
if HealBot_Action_TooltipUnit and HealBot_Tooltip:IsVisible() then if HealBot_Action_TooltipUnit and HealBot_Tooltip:IsVisible() then
local s = IsShiftKeyDown() and true or false local s = IsShiftKeyDown() and true or false
@@ -243,6 +246,7 @@ local HealBot_EventHandlers = {
["UPDATE_SHAPESHIFT_FORMS"] = function(this) HealBot_UpdateShapeshiftForm() end ["UPDATE_SHAPESHIFT_FORMS"] = function(this) HealBot_UpdateShapeshiftForm() end
} }
-- HealBot_OnEvent: Event dispatcher for WoW UI events.
function HealBot_OnEvent(this, event, arg1, arg2, arg3, arg4) function HealBot_OnEvent(this, event, arg1, arg2, arg3, arg4)
local handler = HealBot_EventHandlers[event] local handler = HealBot_EventHandlers[event]
if handler then if handler then
@@ -252,6 +256,7 @@ function HealBot_OnEvent(this, event, arg1, arg2, arg3, arg4)
end end
end end
-- HealBot_OnEvent_VariablesLoaded: Applies config defaults and initializes state.
function HealBot_OnEvent_VariablesLoaded(this) function HealBot_OnEvent_VariablesLoaded(this)
local class = HealBot_UnitClass("player") local class = HealBot_UnitClass("player")
@@ -335,6 +340,7 @@ function HealBot_OnEvent_VariablesLoaded(this)
end end
end end
-- HealBot_OnEvent_UnitHealth: Internal utility: HealBot_OnEvent_UnitHealth
function HealBot_OnEvent_UnitHealth(this, unit) function HealBot_OnEvent_UnitHealth(this, unit)
if (not HealBot_Heals[unit]) then return end if (not HealBot_Heals[unit]) then return end
HealBot_CheckCasting(unit); HealBot_CheckCasting(unit);
@@ -343,16 +349,19 @@ function HealBot_OnEvent_UnitHealth(this, unit)
end end
end end
-- HealBot_OnEvent_UnitMana: Internal utility: HealBot_OnEvent_UnitMana
function HealBot_OnEvent_UnitMana(this, unit) function HealBot_OnEvent_UnitMana(this, unit)
if (unit ~= "player") then return end if (unit ~= "player") then return end
HealBot_RecalcHeals(); HealBot_RecalcHeals();
end end
-- HealBot_OnEvent_ZoneChanged: Internal utility: HealBot_OnEvent_ZoneChanged
function HealBot_OnEvent_ZoneChanged(this) function HealBot_OnEvent_ZoneChanged(this)
HealBot_ResetRangeScale(); HealBot_ResetRangeScale();
HealBot_Delay_RecalcParty = 1; HealBot_Delay_RecalcParty = 1;
end end
-- HealBot_OnEvent_PlayerRegenDisabled: Internal utility: HealBot_OnEvent_PlayerRegenDisabled
function HealBot_OnEvent_PlayerRegenDisabled(this) function HealBot_OnEvent_PlayerRegenDisabled(this)
-- Removed HealBot_RecalcParty(); -- Removed HealBot_RecalcParty();
if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then
@@ -388,11 +397,13 @@ function HealBot_OnEvent_PlayerRegenDisabled(this)
-- HealBot_RecalcHeals(); -- HealBot_RecalcHeals();
end end
-- HealBot_OnEvent_PlayerRegenEnabled: Internal utility: HealBot_OnEvent_PlayerRegenEnabled
function HealBot_OnEvent_PlayerRegenEnabled(this) function HealBot_OnEvent_PlayerRegenEnabled(this)
HealBot_IsFighting = false; HealBot_IsFighting = false;
HealBot_Delay_RecalcParty = 1; HealBot_Delay_RecalcParty = 1;
end end
-- HealBot_OnEvent_PlayerTargetChanged: Internal utility: HealBot_OnEvent_PlayerTargetChanged
function HealBot_OnEvent_PlayerTargetChanged(this) function HealBot_OnEvent_PlayerTargetChanged(this)
if HealBot_Action_UnitButtons and HealBot_Action_UnitButtons["target"] then if HealBot_Action_UnitButtons and HealBot_Action_UnitButtons["target"] then
HealBot_View_DirtyUnits["target"] = true HealBot_View_DirtyUnits["target"] = true
@@ -400,6 +411,7 @@ function HealBot_OnEvent_PlayerTargetChanged(this)
end end
end end
-- HealBot_OnEvent_PartyMembersChanged: Internal utility: HealBot_OnEvent_PartyMembersChanged
function HealBot_OnEvent_PartyMembersChanged(this) function HealBot_OnEvent_PartyMembersChanged(this)
HealBot_Model:PreserveStateByGUID() HealBot_Model:PreserveStateByGUID()
HealBot_Integrations_PruneNampower() HealBot_Integrations_PruneNampower()
@@ -409,10 +421,12 @@ function HealBot_OnEvent_PartyMembersChanged(this)
HealBot_Delay_RecalcParty = 1; HealBot_Delay_RecalcParty = 1;
end end
-- HealBot_OnEvent_PartyMemberDisable: Internal utility: HealBot_OnEvent_PartyMemberDisable
function HealBot_OnEvent_PartyMemberDisable(this, unit) function HealBot_OnEvent_PartyMemberDisable(this, unit)
HealBot_RecalcHeals(); HealBot_RecalcHeals();
end end
-- HealBot_OnEvent_SystemMsg: Internal utility: HealBot_OnEvent_SystemMsg
function HealBot_OnEvent_SystemMsg(this, msg) function HealBot_OnEvent_SystemMsg(this, msg)
if type(msg) == "string" then if type(msg) == "string" then
local tmpTest, tmpTest, deserter = string.find(msg, HEALBOT_HASLEFTRAID); local tmpTest, tmpTest, deserter = string.find(msg, HEALBOT_HASLEFTRAID);
@@ -439,30 +453,36 @@ function HealBot_OnEvent_SystemMsg(this, msg)
end end
end end
-- HealBot_OnEvent_PartyMemberEnable: Internal utility: HealBot_OnEvent_PartyMemberEnable
function HealBot_OnEvent_PartyMemberEnable(this, unit) function HealBot_OnEvent_PartyMemberEnable(this, unit)
HealBot_RecalcHeals(); HealBot_RecalcHeals();
end end
-- HealBot_OnEvent_PlayerEquipmentChanged: Internal utility: HealBot_OnEvent_PlayerEquipmentChanged
function HealBot_OnEvent_PlayerEquipmentChanged(this) function HealBot_OnEvent_PlayerEquipmentChanged(this)
HealBot_EquipChangeTimer = 1; HealBot_EquipChangeTimer = 1;
end end
-- HealBot_OnEvent_PlayerEquipmentChanged2: Internal utility: HealBot_OnEvent_PlayerEquipmentChanged2
function HealBot_OnEvent_PlayerEquipmentChanged2(this, unit) function HealBot_OnEvent_PlayerEquipmentChanged2(this, unit)
if unit == "player" then if unit == "player" then
HealBot_EquipChangeTimer = 1; HealBot_EquipChangeTimer = 1;
end end
end end
-- HealBot_OnEvent_SpellsChanged: Internal utility: HealBot_OnEvent_SpellsChanged
function HealBot_OnEvent_SpellsChanged(this, arg1) function HealBot_OnEvent_SpellsChanged(this, arg1)
if arg1 then return; end if arg1 then return; end
HealBot_AddDebug("HB: SpellsChanged"); HealBot_AddDebug("HB: SpellsChanged");
HealBot_SpellsInitFlag = 2; HealBot_SpellsInitFlag = 2;
end end
-- HealBot_OnEvent_TalentsChanged: Internal utility: HealBot_OnEvent_TalentsChanged
function HealBot_OnEvent_TalentsChanged(this, arg1) function HealBot_OnEvent_TalentsChanged(this, arg1)
HealBot_AddDebug("HB: TalentsChanged"); HealBot_AddDebug("HB: TalentsChanged");
end end
-- HealBot_OnEvent_PlayerEnteringWorld: Internal utility: HealBot_OnEvent_PlayerEnteringWorld
function HealBot_OnEvent_PlayerEnteringWorld(this) function HealBot_OnEvent_PlayerEnteringWorld(this)
HealBot_IsFighting = false; HealBot_IsFighting = false;
-- Re-apply the refresh hook late in case another addon overrode it during load -- Re-apply the refresh hook late in case another addon overrode it during load
@@ -471,6 +491,7 @@ function HealBot_OnEvent_PlayerEnteringWorld(this)
end end
end end
-- HealBot_OnEvent_SpellcastStart: Internal utility: HealBot_OnEvent_SpellcastStart
function HealBot_OnEvent_SpellcastStart(this, spell, duration) function HealBot_OnEvent_SpellcastStart(this, spell, duration)
HealBot_IsCasting = true; HealBot_IsCasting = true;
HealBot_RecalcHeals(); HealBot_RecalcHeals();
@@ -483,6 +504,7 @@ function HealBot_OnEvent_SpellcastStart(this, spell, duration)
end end
end end
-- HealBot_OnEvent_SpellcastStop: Internal utility: HealBot_OnEvent_SpellcastStop
function HealBot_OnEvent_SpellcastStop(this, eventName) function HealBot_OnEvent_SpellcastStop(this, eventName)
HealBot_IsCasting = false; HealBot_IsCasting = false;
if eventName == "SPELLCAST_FAILED" then if eventName == "SPELLCAST_FAILED" then
+2
View File
@@ -3,10 +3,12 @@
local _scale = 0 local _scale = 0
-- HealBot_ResetRangeScale: Resets map range scaling on zone change.
function HealBot_ResetRangeScale() function HealBot_ResetRangeScale()
_scale = 0 _scale = 0
end end
-- HealBot_Range_Check: Checks if unit is in range via map distance or API.
function HealBot_Range_Check(unit, range) function HealBot_Range_Check(unit, range)
local return_val = 0; local return_val = 0;
if not range then if not range then
+28
View File
@@ -18,6 +18,7 @@ local HealBot_Health60 = {
["WARRIOR"] = 5000, ["WARRIOR"] = 5000,
} }
-- HealBot_GetSpellName: Internal utility: HealBot_GetSpellName
function HealBot_GetSpellName(id) function HealBot_GetSpellName(id)
if (not id) then if (not id) then
return nil; return nil;
@@ -32,6 +33,7 @@ function HealBot_GetSpellName(id)
return spellName .. " (" .. subSpellName .. ")"; return spellName .. " (" .. subSpellName .. ")";
end end
-- HealBot_GetSpellId: Internal utility: HealBot_GetSpellId
function HealBot_GetSpellId(spell) function HealBot_GetSpellId(spell)
local id, idd = 1, 0; local id, idd = 1, 0;
while true do while true do
@@ -55,6 +57,7 @@ function HealBot_GetSpellId(spell)
end end
end end
-- HealBot_CastSpellByName: Internal utility: HealBot_CastSpellByName
function HealBot_CastSpellByName(spell) function HealBot_CastSpellByName(spell)
if (HealBot_Spells[spell] and HealBot_Spells[spell].BagSlot) then if (HealBot_Spells[spell] and HealBot_Spells[spell].BagSlot) then
HealBot_UseItem(spell); HealBot_UseItem(spell);
@@ -74,6 +77,7 @@ function HealBot_CastSpellByName(spell)
CastSpell(id, BOOKTYPE_SPELL); CastSpell(id, BOOKTYPE_SPELL);
end end
-- HealBot_AnnounceCast: Internal utility: HealBot_AnnounceCast
function HealBot_AnnounceCast(spell, target) function HealBot_AnnounceCast(spell, target)
if not spell or not target then return end if not spell or not target then return end
@@ -127,6 +131,7 @@ function HealBot_AnnounceCast(spell, target)
end end
end end
-- HealBot_Process_HealValue: Internal utility: HealBot_Process_HealValue
function HealBot_Process_HealValue(spell, target) function HealBot_Process_HealValue(spell, target)
if HealBot_Spells[spell] and HealBot_Spells[spell].CastTime > 1 then if HealBot_Spells[spell] and HealBot_Spells[spell].CastTime > 1 then
HealBot_HealValue = HealBot_Spells[spell].HealsDur; HealBot_HealValue = HealBot_Spells[spell].HealsDur;
@@ -163,6 +168,7 @@ function HealBot_Process_HealValue(spell, target)
end end
end end
-- HealBot_StartCasting: Initiates spell cast and broadcasts incoming heal.
function HealBot_StartCasting(spell, target, ttype) function HealBot_StartCasting(spell, target, ttype)
HealBot_CastFailed = false; HealBot_CastFailed = false;
HealBot_CastSpellByName(spell); HealBot_CastSpellByName(spell);
@@ -188,6 +194,7 @@ function HealBot_StartCasting(spell, target, ttype)
end end
end end
-- HealBot_StopCasting: Internal utility: HealBot_StopCasting
function HealBot_StopCasting() function HealBot_StopCasting()
if HealBot_CastingTarget then if HealBot_CastingTarget then
if HealBot_HealValue > 0 then if HealBot_HealValue > 0 then
@@ -221,6 +228,7 @@ function HealBot_StopCasting()
bar.txt:SetTextColor(sr, sg, sb, sa); bar.txt:SetTextColor(sr, sg, sb, sa);
end end
-- HealBot_UnitHealth: Internal utility: HealBot_UnitHealth
function HealBot_UnitHealth(unit) function HealBot_UnitHealth(unit)
local Current, Desired = UnitHealth(unit), UnitHealthMax(unit); local Current, Desired = UnitHealth(unit), UnitHealthMax(unit);
if unit == 'target' and Desired == 100 then if unit == 'target' and Desired == 100 then
@@ -235,6 +243,7 @@ function HealBot_UnitHealth(unit)
return Current, Desired; return Current, Desired;
end end
-- HealBot_CheckCasting: Internal utility: HealBot_CheckCasting
function HealBot_CheckCasting(unit) function HealBot_CheckCasting(unit)
if not HealBot_CastingSpell or HealBot_AlwaysHeal() then return nil end if not HealBot_CastingSpell or HealBot_AlwaysHeal() then return nil end
if not HealBot_Spells[HealBot_CastingSpell] then return nil end if not HealBot_Spells[HealBot_CastingSpell] then return nil end
@@ -281,6 +290,7 @@ function HealBot_CheckCasting(unit)
end end
end end
-- HealBot_CastSpellOnFriend: Target-safe wrapper for casting spells on allies.
function HealBot_CastSpellOnFriend(spell, target) function HealBot_CastSpellOnFriend(spell, target)
if (not spell or not target or not UnitName(target)) then if (not spell or not target or not UnitName(target)) then
return; return;
@@ -308,6 +318,7 @@ function HealBot_CastSpellOnFriend(spell, target)
HealBot_TargetRestoreTimer = 0; HealBot_TargetRestoreTimer = 0;
end end
-- HealBot_SetItemDefaults: Internal utility: HealBot_SetItemDefaults
function HealBot_SetItemDefaults(spell) function HealBot_SetItemDefaults(spell)
if not HealBot_Spells[spell].Target then if not HealBot_Spells[spell].Target then
HealBot_Spells[spell].Target = {"player", "party", "pet"}; HealBot_Spells[spell].Target = {"player", "party", "pet"};
@@ -340,6 +351,7 @@ function HealBot_SetItemDefaults(spell)
end end
end end
-- HealBot_SetSpellDefaults: Internal utility: HealBot_SetSpellDefaults
function HealBot_SetSpellDefaults(spell) function HealBot_SetSpellDefaults(spell)
local baseHeal = HealBot_Spells[spell].HealsCast or 0 local baseHeal = HealBot_Spells[spell].HealsCast or 0
local extHeal = HealBot_Spells[spell].HealsExt or 0 local extHeal = HealBot_Spells[spell].HealsExt or 0
@@ -383,6 +395,7 @@ function HealBot_SetSpellDefaults(spell)
HealBot_Spells[spell].HealsDur = math.floor(baseHeal + extHeal + realHeal); HealBot_Spells[spell].HealsDur = math.floor(baseHeal + extHeal + realHeal);
end end
-- HealBot_AddHeal: Internal utility: HealBot_AddHeal
function HealBot_AddHeal(spell) function HealBot_AddHeal(spell)
HealBot_SetSpellDefaults(spell); HealBot_SetSpellDefaults(spell);
table.foreachi(HealBot_Spells[spell].Target, function (i, val) table.foreachi(HealBot_Spells[spell].Target, function (i, val)
@@ -391,6 +404,7 @@ function HealBot_AddHeal(spell)
HealBot_Spells[spell].BagSlot = HealBot_GetBagSlot(spell); HealBot_Spells[spell].BagSlot = HealBot_GetBagSlot(spell);
end end
-- HealBot_FindHealSpells: Maps best heal ranks to UI buttons.
function HealBot_FindHealSpells() function HealBot_FindHealSpells()
local id = 1; local id = 1;
if HealBot_SpellsInitFlag > 0 then NeedEquipUpdate = 1; return; end if HealBot_SpellsInitFlag > 0 then NeedEquipUpdate = 1; return; end
@@ -460,6 +474,7 @@ function HealBot_FindHealSpells()
HealBot_CalcEquipBonus = false; HealBot_CalcEquipBonus = false;
end end
-- HealBot_CanCastSpell: Internal utility: HealBot_CanCastSpell
function HealBot_CanCastSpell(spell, unit) function HealBot_CanCastSpell(spell, unit)
local this = HealBot_Spells[spell]; local this = HealBot_Spells[spell];
-- Removed manual mana check so WoW can properly handle 0-cost buffs (Clearcasting/Inner Focus) -- Removed manual mana check so WoW can properly handle 0-cost buffs (Clearcasting/Inner Focus)
@@ -474,6 +489,7 @@ function HealBot_CanCastSpell(spell, unit)
return true; return true;
end end
-- HealBot_GetHealSpell: Resolves spell rank based on health deficit.
function HealBot_GetHealSpell(unit, pattern) function HealBot_GetHealSpell(unit, pattern)
if (not UnitName(unit)) then return nil end; if (not UnitName(unit)) then return nil end;
if not pattern then return nil end; if not pattern then return nil end;
@@ -515,14 +531,17 @@ function HealBot_GetHealSpell(unit, pattern)
return nil; return nil;
end end
-- HealBot_HealUnit: Main entry point for healing a unit.
function HealBot_HealUnit(unit, pattern) function HealBot_HealUnit(unit, pattern)
HealBot_CastSpellOnFriend(HealBot_GetHealSpell(unit, pattern), unit); HealBot_CastSpellOnFriend(HealBot_GetHealSpell(unit, pattern), unit);
end end
-- HealBot_RecalcHeals: Flags unit for visual refresh.
function HealBot_RecalcHeals(unit) function HealBot_RecalcHeals(unit)
HealBot_Action_Refresh(unit); HealBot_Action_Refresh(unit);
end end
-- HealBot_RecalcParty: Triggers group layout rebuild.
function HealBot_RecalcParty() function HealBot_RecalcParty()
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
if HealBot_Action_HealButtons then if HealBot_Action_HealButtons then
@@ -535,11 +554,13 @@ function HealBot_RecalcParty()
HealBot_Action_RefreshButtons(); HealBot_Action_RefreshButtons();
end end
-- HealBot_RecalcSpells: Recalculates spells and updates layout.
function HealBot_RecalcSpells() function HealBot_RecalcSpells()
HealBot_FindHealSpells(); HealBot_FindHealSpells();
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_GetTalentRank: Internal utility: HealBot_GetTalentRank
function HealBot_GetTalentRank(talentName) function HealBot_GetTalentRank(talentName)
for t = 1, GetNumTalentTabs() do for t = 1, GetNumTalentTabs() do
for i = 1, GetNumTalents(t) do for i = 1, GetNumTalents(t) do
@@ -552,6 +573,7 @@ function HealBot_GetTalentRank(talentName)
return 0; return 0;
end end
-- HealBot_SpiBonus: Internal utility: HealBot_SpiBonus
function HealBot_SpiBonus(spell) function HealBot_SpiBonus(spell)
local heals_modifer = 0; local heals_modifer = 0;
local base, stat, posBuff, negBuff = UnitStat("player", 5); local base, stat, posBuff, negBuff = UnitStat("player", 5);
@@ -563,6 +585,7 @@ function HealBot_SpiBonus(spell)
return heals_modifer; return heals_modifer;
end end
-- HealBot_GetBonus: Internal utility: HealBot_GetBonus
function HealBot_GetBonus() function HealBot_GetBonus()
local HealBonus = 0; local HealBonus = 0;
if HealBot_Integrations_ClassicAPI_Active and GetSpellBonusHealing then if HealBot_Integrations_ClassicAPI_Active and GetSpellBonusHealing then
@@ -580,6 +603,7 @@ function HealBot_GetBonus()
return HealBonus; return HealBonus;
end end
-- HealBot_InitSpells: Scans spellbook to find available heals.
function HealBot_InitSpells() function HealBot_InitSpells()
local id = 1 local id = 1
local cnt = 0; local cnt = 0;
@@ -602,6 +626,7 @@ function HealBot_InitSpells()
return cnt; return cnt;
end end
-- HealBot_InitGetSpellData: Extracts mana and cast time from spell tooltips.
function HealBot_InitGetSpellData(spell, id, class) function HealBot_InitGetSpellData(spell, id, class)
local i, _mana, _cast, _HealsMin, _HealsMax, _HealsExt, _duration, _range, _shield, _channel; local i, _mana, _cast, _HealsMin, _HealsMax, _HealsExt, _duration, _range, _shield, _channel;
local tooltip = getglobal("HealBot_ScanTooltip"); local tooltip = getglobal("HealBot_ScanTooltip");
@@ -791,6 +816,7 @@ function HealBot_InitGetSpellData(spell, id, class)
end end
end end
-- HealBot_Generic_Patten: Internal utility: HealBot_Generic_Patten
function HealBot_Generic_Patten(matchStr, matchPattern) function HealBot_Generic_Patten(matchStr, matchPattern)
local tmpTest, _HealsMin, _HealsMax, _HealsExt, _duration local tmpTest, _HealsMin, _HealsMax, _HealsExt, _duration
tmpTest, tmpTest, _HealsMin, _HealsMax = string.find(matchStr, matchPattern); tmpTest, tmpTest, _HealsMin, _HealsMax = string.find(matchStr, matchPattern);
@@ -805,10 +831,12 @@ end
HealBot_ActiveShapeshiftStance = nil; HealBot_ActiveShapeshiftStance = nil;
-- HealBot_UpdateShapeshiftForm: Internal utility: HealBot_UpdateShapeshiftForm
function HealBot_UpdateShapeshiftForm() function HealBot_UpdateShapeshiftForm()
HealBot_ActiveShapeshiftStance = HealBot_GetShapeshiftForm(); HealBot_ActiveShapeshiftStance = HealBot_GetShapeshiftForm();
end end
-- HealBot_GetShapeshiftForm: Detects active druid form to prevent invalid casts.
function HealBot_GetShapeshiftForm() function HealBot_GetShapeshiftForm()
local forms = GetNumShapeshiftForms(); local forms = GetNumShapeshiftForms();
if forms then if forms then
+2
View File
@@ -579,6 +579,7 @@ HealBot_IamRessing = false;
-- Table Recycling Pool -- Table Recycling Pool
local tablePool = {} local tablePool = {}
-- HealBot_GetTable: Internal utility: HealBot_GetTable
function HealBot_GetTable() function HealBot_GetTable()
local t = table.remove(tablePool) local t = table.remove(tablePool)
if not t then if not t then
@@ -587,6 +588,7 @@ function HealBot_GetTable()
return t return t
end end
-- HealBot_ReleaseTable: Internal utility: HealBot_ReleaseTable
function HealBot_ReleaseTable(t) function HealBot_ReleaseTable(t)
if type(t) == "table" then if type(t) == "table" then
for k in pairs(t) do for k in pairs(t) do
+6
View File
@@ -1,7 +1,9 @@
-- HealBot_Errors_OnLoad: Internal utility: HealBot_Errors_OnLoad
function HealBot_Errors_OnLoad(this) function HealBot_Errors_OnLoad(this)
-- do nothing -- do nothing
end end
-- HealBot_Errors_OnShow: Show event handler.
function HealBot_Errors_OnShow(this) function HealBot_Errors_OnShow(this)
local client = getglobal("HealBot_Error_Clientx") local client = getglobal("HealBot_Error_Clientx")
client:SetText("Client="..GetLocale()) client:SetText("Client="..GetLocale())
@@ -9,6 +11,7 @@ function HealBot_Errors_OnShow(this)
HealBot_Error_Classx:SetText("Player class="..HealBot_UnitClass("player")) HealBot_Error_Classx:SetText("Player class="..HealBot_UnitClass("player"))
end end
-- HealBot_Errors_OnHide: Hide event handler.
function HealBot_Errors_OnHide(this) function HealBot_Errors_OnHide(this)
local errtext; local errtext;
HealBot_StopMoving(this); HealBot_StopMoving(this);
@@ -19,14 +22,17 @@ function HealBot_Errors_OnHide(this)
HealBot_ErrorCnt=0; HealBot_ErrorCnt=0;
end end
-- HealBot_Errors_OnDragStart: Internal utility: HealBot_Errors_OnDragStart
function HealBot_Errors_OnDragStart(this,arg1) function HealBot_Errors_OnDragStart(this,arg1)
HealBot_StartMoving(this); HealBot_StartMoving(this);
end end
-- HealBot_Errors_OnDragStop: Internal utility: HealBot_Errors_OnDragStop
function HealBot_Errors_OnDragStop(this) function HealBot_Errors_OnDragStop(this)
HealBot_StopMoving(this); HealBot_StopMoving(this);
end end
-- HealBot_ErrorsIn: Internal utility: HealBot_ErrorsIn
function HealBot_ErrorsIn(msg,id) function HealBot_ErrorsIn(msg,id)
local errtext = getglobal("HealBot_Error"..id); local errtext = getglobal("HealBot_Error"..id);
errtext:SetText(msg) errtext:SetText(msg)
+2
View File
@@ -3,6 +3,7 @@ HealBot_Integrations_Nampower_Active = false;
HealBot_Integrations_SuperWoW_Active = false; HealBot_Integrations_SuperWoW_Active = false;
HealBot_Integrations_ClassicAPI_Active = false; HealBot_Integrations_ClassicAPI_Active = false;
-- HealBot_GetUnitGUID: Internal utility: HealBot_GetUnitGUID
function HealBot_GetUnitGUID(unit) function HealBot_GetUnitGUID(unit)
if not unit then return nil end if not unit then return nil end
if HealBot_Integrations_ClassicAPI_Active and UnitGUID then if HealBot_Integrations_ClassicAPI_Active and UnitGUID then
@@ -13,6 +14,7 @@ function HealBot_GetUnitGUID(unit)
return nil return nil
end end
-- HealBot_Integrations_Toggle: Enables or disables external addon APIs on load/click.
function HealBot_Integrations_Toggle() function HealBot_Integrations_Toggle()
-- UnitXP -- UnitXP
if HealBot_Config.HealBot_Integrations_UnitXP == 1 and UnitXP ~= nil then if HealBot_Config.HealBot_Integrations_UnitXP == 1 and UnitXP ~= nil then
+8
View File
@@ -15,6 +15,7 @@ function HealBot_UIDropDownMenu_SetSelectedID(frame, id, useValue)
end end
end end
-- HealBot_UIDropDownMenu_SetSelectedValue: Internal utility: HealBot_UIDropDownMenu_SetSelectedValue
function HealBot_UIDropDownMenu_SetSelectedValue(frame, value, useValue) function HealBot_UIDropDownMenu_SetSelectedValue(frame, value, useValue)
local wasNil = false local wasNil = false
if not UIDROPDOWNMENU_OPEN_MENU then if not UIDROPDOWNMENU_OPEN_MENU then
@@ -55,6 +56,7 @@ HealBot_Model = {
-- "EQUIPMENT_CHANGED" -- "EQUIPMENT_CHANGED"
-- "INCOMING_HEAL_CHANGED" -- "INCOMING_HEAL_CHANGED"
-- HealBot_Model:RegisterObserver: Registers an observer callback for an event.
function HealBot_Model:RegisterObserver(event, callback) function HealBot_Model:RegisterObserver(event, callback)
if not self.observers[event] then if not self.observers[event] then
self.observers[event] = {} self.observers[event] = {}
@@ -62,6 +64,7 @@ function HealBot_Model:RegisterObserver(event, callback)
table.insert(self.observers[event], callback) table.insert(self.observers[event], callback)
end end
-- HealBot_Model:NotifyObservers: Fires all registered callbacks for an event.
function HealBot_Model:NotifyObservers(event, unitID, arg1, arg2) function HealBot_Model:NotifyObservers(event, unitID, arg1, arg2)
if self.observers[event] then if self.observers[event] then
local len = table.getn(self.observers[event]) local len = table.getn(self.observers[event])
@@ -75,6 +78,7 @@ end
-- Model Initialization -- Model Initialization
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- HealBot_Model:Initialize: Pre-allocates the unit state dictionary.
function HealBot_Model:Initialize() function HealBot_Model:Initialize()
self:InitUnitState("player") self:InitUnitState("player")
self:InitUnitState("target") self:InitUnitState("target")
@@ -93,6 +97,7 @@ function HealBot_Model:Initialize()
end end
end end
-- HealBot_Model:InitUnitState: Internal utility: HealBot_Model:InitUnitState
function HealBot_Model:InitUnitState(unit) function HealBot_Model:InitUnitState(unit)
if not self.units[unit] then if not self.units[unit] then
self.units[unit] = { self.units[unit] = {
@@ -156,11 +161,13 @@ function HealBot_Model:UpdateUnitIdentity(unit)
return false return false
end end
-- HealBot_Model:GetUnitByGUID: Internal utility: HealBot_Model:GetUnitByGUID
function HealBot_Model:GetUnitByGUID(guid) function HealBot_Model:GetUnitByGUID(guid)
if not guid then return nil end if not guid then return nil end
return self.guidUnits[guid] return self.guidUnits[guid]
end end
-- HealBot_Model:GetUnitIDByName: Looks up a group unit token by player name.
function HealBot_Model:GetUnitIDByName(name) function HealBot_Model:GetUnitIDByName(name)
if not name then return nil end if not name then return nil end
for unit, data in pairs(self.units) do for unit, data in pairs(self.units) do
@@ -169,6 +176,7 @@ function HealBot_Model:GetUnitIDByName(name)
return nil return nil
end end
-- HealBot_Model:PreserveStateByGUID: Preserves icon and debuff state when group indices shift during combat.
function HealBot_Model:PreserveStateByGUID() function HealBot_Model:PreserveStateByGUID()
if not (HealBot_Integrations_SuperWoW_Active or HealBot_Integrations_ClassicAPI_Active) or not HealBot_GetUnitGUID then return end if not (HealBot_Integrations_SuperWoW_Active or HealBot_Integrations_ClassicAPI_Active) or not HealBot_GetUnitGUID then return end
+14
View File
@@ -14,10 +14,12 @@ HealBot_Options_EmergencyFilter_List = {
HEALBOT_OPTIONS_MONITORCUSTOM, HEALBOT_OPTIONS_MONITORCUSTOM,
} }
-- HealBot_Options_AddDebug: UI handler for AddDebug options panel.
function HealBot_Options_AddDebug(msg) function HealBot_Options_AddDebug(msg)
HealBot_AddDebug("Options: " .. msg); HealBot_AddDebug("Options: " .. msg);
end end
-- HealBot_Options_Pct_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_Pct_OnLoad(this,text) function HealBot_Options_Pct_OnLoad(this,text)
this.text = text; this.text = text;
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
@@ -27,6 +29,7 @@ function HealBot_Options_Pct_OnLoad(this,text)
this:SetValueStep(0.01); this:SetValueStep(0.01);
end end
-- HealBot_Options_Pct_OnLoad_MinMax: UI handler for MinMax options panel.
function HealBot_Options_Pct_OnLoad_MinMax(this,text,Min,Max) function HealBot_Options_Pct_OnLoad_MinMax(this,text,Min,Max)
this.text = text; this.text = text;
local MinTxt,MaxTxt local MinTxt,MaxTxt
@@ -41,6 +44,7 @@ function HealBot_Options_Pct_OnLoad_MinMax(this,text,Min,Max)
this:SetValueStep(0.01); this:SetValueStep(0.01);
end end
-- HealBot_Options_val_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_val_OnLoad(this,text,Min,Max) function HealBot_Options_val_OnLoad(this,text,Min,Max)
this.text = text; this.text = text;
@@ -51,6 +55,7 @@ function HealBot_Options_val_OnLoad(this,text,Min,Max)
this:SetValueStep(1); this:SetValueStep(1);
end end
-- HealBot_Options_Pct_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_Pct_OnValueChanged(this) function HealBot_Options_Pct_OnValueChanged(this)
local pct = math.floor(this:GetValue()*100+0.5); local pct = math.floor(this:GetValue()*100+0.5);
getglobal(this:GetName().."Text"):SetText(this.text .. " (" .. pct .. "%)"); getglobal(this:GetName().."Text"):SetText(this.text .. " (" .. pct .. "%)");
@@ -106,10 +111,12 @@ end
-- HealBot_Options_CastNotify_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_CastNotify_OnLoad(this,text) function HealBot_Options_CastNotify_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_CastNotify_OnClick: UI handler for OnClick options panel.
function HealBot_Options_CastNotify_OnClick(this,id) function HealBot_Options_CastNotify_OnClick(this,id)
-- CastNotify UI elements were removed and replaced by Custom Chat Messages -- CastNotify UI elements were removed and replaced by Custom Chat Messages
end end
@@ -147,6 +154,7 @@ end
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- HealBot_Returned_Colours: Internal utility: HealBot_Returned_Colours
function HealBot_Returned_Colours() function HealBot_Returned_Colours()
local A = OpacitySliderFrame:GetValue(); local A = OpacitySliderFrame:GetValue();
A = ((0-A)+1); A = ((0-A)+1);
@@ -188,6 +196,7 @@ function HealBot_Returned_Colours()
HealBot_SetSkinColours() HealBot_SetSkinColours()
HealBot_SetCDCBarColours() HealBot_SetCDCBarColours()
end end
-- HealBot_UseColourPick: Internal utility: HealBot_UseColourPick
function HealBot_UseColourPick(R, G, B, A) function HealBot_UseColourPick(R, G, B, A)
if ColorPickerFrame:IsVisible() then if ColorPickerFrame:IsVisible() then
ColorPickerFrame:Hide(); ColorPickerFrame:Hide();
@@ -208,6 +217,7 @@ function HealBot_UseColourPick(R, G, B, A)
end end
return ColorPickerFrame:GetColorRGB(); return ColorPickerFrame:GetColorRGB();
end end
-- HealBot_Options_Defaults_OnClick: UI handler for OnClick options panel.
function HealBot_Options_Defaults_OnClick(this) function HealBot_Options_Defaults_OnClick(this)
HealBot_Options_CastNotify_OnClick(nil,0); HealBot_Options_CastNotify_OnClick(nil,0);
-- HealBot_Config = HealBot_ConfigDefaults; -- HealBot_Config = HealBot_ConfigDefaults;
@@ -219,6 +229,7 @@ function HealBot_Options_Defaults_OnClick(this)
HealBot_Action_Reset(); HealBot_Action_Reset();
HealBot_Config.ActionVisible = HealBot_Action:IsVisible(); HealBot_Config.ActionVisible = HealBot_Action:IsVisible();
end end
-- HealBot_Options_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_OnLoad(this) function HealBot_Options_OnLoad(this)
table.insert(UISpecialFrames,this:GetName()); table.insert(UISpecialFrames,this:GetName());
@@ -228,6 +239,7 @@ function HealBot_Options_OnLoad(this)
PanelTemplates_UpdateTabs(this); PanelTemplates_UpdateTabs(this);
HealBot_Options_ShowPanel(this.selectedTab); HealBot_Options_ShowPanel(this.selectedTab);
end end
-- HealBot_Options_OnShow: UI handler for OnShow options panel.
function HealBot_Options_OnShow(this) function HealBot_Options_OnShow(this)
HealBot_Skins = HealBot_Config.Skins; HealBot_Skins = HealBot_Config.Skins;
HealBot_Options_SetSkins() HealBot_Options_SetSkins()
@@ -295,6 +307,7 @@ function HealBot_Options_OnShow(this)
HealBot_Options_SetChatMessages(); HealBot_Options_SetChatMessages();
HealBot_Options_ShowPanel(this.selectedTab or 1); HealBot_Options_ShowPanel(this.selectedTab or 1);
end end
-- HealBot_Options_SetSkins: UI handler for SetSkins options panel.
function HealBot_Options_SetSkins() function HealBot_Options_SetSkins()
HealBot_Options_Skins_Refresh() HealBot_Options_Skins_Refresh()
HealBot_Options_BarAlpha:SetValue(HealBot_Config.Barcola[HealBot_Config.Current_Skin]); HealBot_Options_BarAlpha:SetValue(HealBot_Config.Barcola[HealBot_Config.Current_Skin]);
@@ -334,6 +347,7 @@ function HealBot_Options_SetSkins()
HealBot_Options_DeleteSkin:Enable(); HealBot_Options_DeleteSkin:Enable();
end end
end end
-- HealBot_Options_ShowPanel: UI handler for ShowPanel options panel.
function HealBot_Options_ShowPanel(id) function HealBot_Options_ShowPanel(id)
if HealBot_Options_CurrentPanel>0 then if HealBot_Options_CurrentPanel>0 then
local panel = getglobal("HealBot_Options_Panel"..HealBot_Options_CurrentPanel); local panel = getglobal("HealBot_Options_Panel"..HealBot_Options_CurrentPanel);
+4
View File
@@ -1,3 +1,4 @@
-- HealBot_Options_AutoSwap_OnClick: UI handler for OnClick options panel.
function HealBot_Options_AutoSwap_OnClick(this) function HealBot_Options_AutoSwap_OnClick(this)
if this:GetChecked() then if this:GetChecked() then
HealBot_Config.AutoSwap_Enabled = 1 HealBot_Config.AutoSwap_Enabled = 1
@@ -7,6 +8,7 @@ function HealBot_Options_AutoSwap_OnClick(this)
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_Auto_Initialize: UI handler for Initialize options panel.
function HealBot_Options_Auto_Initialize() function HealBot_Options_Auto_Initialize()
local dropdownName = UIDROPDOWNMENU_OPEN_MENU local dropdownName = UIDROPDOWNMENU_OPEN_MENU
if not dropdownName then return end if not dropdownName then return end
@@ -30,6 +32,7 @@ function HealBot_Options_Auto_Initialize()
end end
end end
-- HealBot_Options_Auto_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_Auto_OnSelect() function HealBot_Options_Auto_OnSelect()
local skin = this:GetText() local skin = this:GetText()
local id = this.value local id = this.value
@@ -53,6 +56,7 @@ function HealBot_Options_Auto_OnSelect()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_Auto_OnShow: UI handler for OnShow options panel.
function HealBot_Options_Auto_OnShow(this) function HealBot_Options_Auto_OnShow(this)
if HealBot_Config.AutoSwap_Enabled == 1 then if HealBot_Config.AutoSwap_Enabled == 1 then
HealBot_Options_AutoSwap:SetChecked(1) HealBot_Options_AutoSwap:SetChecked(1)
+8
View File
@@ -1,6 +1,7 @@
-- HealBot Options panel file: HealBot_Options_Buffs.lua -- HealBot Options panel file: HealBot_Options_Buffs.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_BuffWatch_OnClick: UI handler for OnClick options panel.
function HealBot_Options_BuffWatch_OnClick(self) function HealBot_Options_BuffWatch_OnClick(self)
local frame = self or this local frame = self or this
HealBot_Config.BuffWatch = frame:GetChecked() or 0; HealBot_Config.BuffWatch = frame:GetChecked() or 0;
@@ -11,11 +12,13 @@ function HealBot_Options_BuffWatch_OnClick(self)
end end
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_BuffWatchInCombat_OnClick: UI handler for OnClick options panel.
function HealBot_Options_BuffWatchInCombat_OnClick(self) function HealBot_Options_BuffWatchInCombat_OnClick(self)
local frame = self or this local frame = self or this
HealBot_Config.BuffWatchInCombat = frame:GetChecked() or 0; HealBot_Config.BuffWatchInCombat = frame:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_BuffSelf_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_BuffSelf_OnLoad(self) function HealBot_Options_BuffSelf_OnLoad(self)
local frame = self or this local frame = self or this
getglobal(this:GetName().."Text"):SetText("Self Only") getglobal(this:GetName().."Text"):SetText("Self Only")
@@ -27,6 +30,7 @@ function HealBot_Options_BuffSelf_OnLoad(self)
this:SetChecked(nil) this:SetChecked(nil)
end end
end end
-- HealBot_Options_BuffSelf_OnClick: UI handler for OnClick options panel.
function HealBot_Options_BuffSelf_OnClick(self) function HealBot_Options_BuffSelf_OnClick(self)
local frame = self or this local frame = self or this
local id = this:GetID() local id = this:GetID()
@@ -40,11 +44,13 @@ function HealBot_Options_BuffSelf_OnClick(self)
end end
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_Buff_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_Buff_OnLoad(self) function HealBot_Options_Buff_OnLoad(self)
local frame = self or this local frame = self or this
UIDropDownMenu_Initialize(frame, HealBot_Options_Buff_Initialize) UIDropDownMenu_Initialize(frame, HealBot_Options_Buff_Initialize)
UIDropDownMenu_SetWidth(110, frame) UIDropDownMenu_SetWidth(110, frame)
end end
-- HealBot_Options_Buff_Initialize: UI handler for Initialize options panel.
function HealBot_Options_Buff_Initialize() function HealBot_Options_Buff_Initialize()
local myClass = UnitClass("player") local myClass = UnitClass("player")
local info local info
@@ -63,6 +69,7 @@ function HealBot_Options_Buff_Initialize()
end end
end end
end end
-- HealBot_Options_Buff_OnClick: UI handler for OnClick options panel.
function HealBot_Options_Buff_OnClick() function HealBot_Options_Buff_OnClick()
local frameName = UIDROPDOWNMENU_OPEN_MENU local frameName = UIDROPDOWNMENU_OPEN_MENU
local frame = getglobal(frameName) local frame = getglobal(frameName)
@@ -82,6 +89,7 @@ function HealBot_Options_Buff_OnClick()
UIDropDownMenu_SetText(text, frame) UIDropDownMenu_SetText(text, frame)
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_SetBuffs: UI handler for SetBuffs options panel.
function HealBot_Options_SetBuffs() function HealBot_Options_SetBuffs()
local myClass = UnitClass("player") local myClass = UnitClass("player")
if HealBot_Options_BuffWatch then if HealBot_Options_BuffWatch then
+27
View File
@@ -1,15 +1,19 @@
-- HealBot Options panel file: HealBot_Options_CDC.lua -- HealBot Options panel file: HealBot_Options_CDC.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_ShowDebuffWarning_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowDebuffWarning_OnLoad(this,text) function HealBot_Options_ShowDebuffWarning_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ShowDebuffWarning_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowDebuffWarning_OnClick(this) function HealBot_Options_ShowDebuffWarning_OnClick(this)
HealBot_Config.ShowDebuffWarning = this:GetChecked() or 0; HealBot_Config.ShowDebuffWarning = this:GetChecked() or 0;
end end
-- HealBot_Options_SoundDebuffWarning_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_SoundDebuffWarning_OnLoad(this,text) function HealBot_Options_SoundDebuffWarning_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_SoundDebuffWarning_OnClick: UI handler for OnClick options panel.
function HealBot_Options_SoundDebuffWarning_OnClick(this) function HealBot_Options_SoundDebuffWarning_OnClick(this)
HealBot_Config.SoundDebuffWarning = this:GetChecked() or 0; HealBot_Config.SoundDebuffWarning = this:GetChecked() or 0;
if HealBot_Config.SoundDebuffWarning==0 then if HealBot_Config.SoundDebuffWarning==0 then
@@ -22,9 +26,11 @@ function HealBot_Options_SoundDebuffWarning_OnClick(this)
HealBot_WarningSound3:Enable(); HealBot_WarningSound3:Enable();
end end
end end
-- HealBot_WarningSound_OnLoad: Internal utility: HealBot_WarningSound_OnLoad
function HealBot_WarningSound_OnLoad(this,text) function HealBot_WarningSound_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_WarningSound_OnClick: Click event handler.
function HealBot_WarningSound_OnClick(this,id) function HealBot_WarningSound_OnClick(this,id)
if HealBot_Config.SoundDebuffPlay>0 then if HealBot_Config.SoundDebuffPlay>0 then
getglobal("HealBot_WarningSound"..HealBot_Config.SoundDebuffPlay):SetChecked(nil); getglobal("HealBot_WarningSound"..HealBot_Config.SoundDebuffPlay):SetChecked(nil);
@@ -37,6 +43,7 @@ function HealBot_WarningSound_OnClick(this,id)
end end
end end
end end
-- HealBot_Options_CDCMonitor_DropDown: UI handler for DropDown options panel.
function HealBot_Options_CDCMonitor_DropDown() function HealBot_Options_CDCMonitor_DropDown()
for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do
local info = {}; local info = {};
@@ -45,23 +52,28 @@ function HealBot_Options_CDCMonitor_DropDown()
UIDropDownMenu_AddButton(info); UIDropDownMenu_AddButton(info);
end end
end end
-- HealBot_Options_CDCMonitor_Initialize: UI handler for Initialize options panel.
function HealBot_Options_CDCMonitor_Initialize() function HealBot_Options_CDCMonitor_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_CDCMonitor,HealBot_Options_CDCMonitor_DropDown) UIDropDownMenu_Initialize(HealBot_Options_CDCMonitor,HealBot_Options_CDCMonitor_DropDown)
end end
-- HealBot_Options_CDCMonitor_Refresh: UI handler for Refresh options panel.
function HealBot_Options_CDCMonitor_Refresh(onselect) function HealBot_Options_CDCMonitor_Refresh(onselect)
if not HealBot_Config.CDCMonitor then return end if not HealBot_Config.CDCMonitor then return end
if not onselect then HealBot_Options_CDCMonitor_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_CDCMonitor_Initialize() end -- or wrong menu may be used !
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCMonitor,HealBot_Config.CDCMonitor) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCMonitor,HealBot_Config.CDCMonitor)
end end
-- HealBot_Options_CDCMonitor_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_CDCMonitor_OnLoad() function HealBot_Options_CDCMonitor_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_CDCMonitor_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_CDCMonitor_DropDown)
UIDropDownMenu_SetWidth(100, this) UIDropDownMenu_SetWidth(100, this)
end end
-- HealBot_Options_CDCMonitor_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_CDCMonitor_OnSelect() function HealBot_Options_CDCMonitor_OnSelect()
HealBot_Config.CDCMonitor = this:GetID() HealBot_Config.CDCMonitor = this:GetID()
HealBot_Options_CDCMonitor_Refresh(true) HealBot_Options_CDCMonitor_Refresh(true)
HealBot_Options_CDCMonitor_Reset() HealBot_Options_CDCMonitor_Reset()
end end
-- HealBot_Options_CDCMonitor_Reset: UI handler for Reset options panel.
function HealBot_Options_CDCMonitor_Reset() function HealBot_Options_CDCMonitor_Reset()
HealBot_CDCInc[HEALBOT_DRUID] = 0; HealBot_CDCInc[HEALBOT_DRUID] = 0;
@@ -145,10 +157,12 @@ function HealBot_Options_CDCMonitor_Reset()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_GetDebuffSpells_List: UI handler for List options panel.
function HealBot_Options_GetDebuffSpells_List(class) function HealBot_Options_GetDebuffSpells_List(class)
local DebuffSpells = HealBot_Debuff_Spells[class]; local DebuffSpells = HealBot_Debuff_Spells[class];
return DebuffSpells; return DebuffSpells;
end end
-- HealBot_Options_CDCButLeft_DropDown: UI handler for DropDown options panel.
function HealBot_Options_CDCButLeft_DropDown() function HealBot_Options_CDCButLeft_DropDown()
local classEN=HealBot_UnitClass("player") local classEN=HealBot_UnitClass("player")
if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then
@@ -169,6 +183,7 @@ function HealBot_Options_CDCButLeft_DropDown()
end end
end end
end end
-- HealBot_Options_CDCButRight_DropDown: UI handler for DropDown options panel.
function HealBot_Options_CDCButRight_DropDown() function HealBot_Options_CDCButRight_DropDown()
local classEN=HealBot_UnitClass("player") local classEN=HealBot_UnitClass("player")
if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then if classEN=="PRIEST" or classEN=="DRUID" or classEN=="PALADIN" or classEN=="SHAMAN" then
@@ -189,12 +204,15 @@ function HealBot_Options_CDCButRight_DropDown()
end end
end end
end end
-- HealBot_Options_CDCButLeft_Initialize: UI handler for Initialize options panel.
function HealBot_Options_CDCButLeft_Initialize() function HealBot_Options_CDCButLeft_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_CDCButLeft,HealBot_Options_CDCButLeft_DropDown) UIDropDownMenu_Initialize(HealBot_Options_CDCButLeft,HealBot_Options_CDCButLeft_DropDown)
end end
-- HealBot_Options_CDCButRight_Initialize: UI handler for Initialize options panel.
function HealBot_Options_CDCButRight_Initialize() function HealBot_Options_CDCButRight_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_CDCButRight,HealBot_Options_CDCButRight_DropDown) UIDropDownMenu_Initialize(HealBot_Options_CDCButRight,HealBot_Options_CDCButRight_DropDown)
end end
-- HealBot_Options_CDCButLeft_Refresh: UI handler for Refresh options panel.
function HealBot_Options_CDCButLeft_Refresh(onselect) function HealBot_Options_CDCButLeft_Refresh(onselect)
local set_id=1; local set_id=1;
local class=UnitClass("Player"); local class=UnitClass("Player");
@@ -202,6 +220,7 @@ function HealBot_Options_CDCButLeft_Refresh(onselect)
set_id = HealBot_Config.Debuff_Left[class]; set_id = HealBot_Config.Debuff_Left[class];
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButLeft,set_id) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButLeft,set_id)
end end
-- HealBot_Options_CDCButRight_Refresh: UI handler for Refresh options panel.
function HealBot_Options_CDCButRight_Refresh(onselect) function HealBot_Options_CDCButRight_Refresh(onselect)
local set_id; local set_id;
local class=UnitClass("Player"); local class=UnitClass("Player");
@@ -209,14 +228,17 @@ function HealBot_Options_CDCButRight_Refresh(onselect)
set_id = HealBot_Config.Debuff_Right[class]; set_id = HealBot_Config.Debuff_Right[class];
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButRight,set_id) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_CDCButRight,set_id)
end end
-- HealBot_Options_CDCButLeft_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_CDCButLeft_OnLoad() function HealBot_Options_CDCButLeft_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_CDCButLeft_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_CDCButLeft_DropDown)
UIDropDownMenu_SetWidth(140, this) UIDropDownMenu_SetWidth(140, this)
end end
-- HealBot_Options_CDCButRight_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_CDCButRight_OnLoad() function HealBot_Options_CDCButRight_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_CDCButRight_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_CDCButRight_DropDown)
UIDropDownMenu_SetWidth(140, this) UIDropDownMenu_SetWidth(140, this)
end end
-- HealBot_Options_CDCButLeft_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_CDCButLeft_OnSelect() function HealBot_Options_CDCButLeft_OnSelect()
local class=UnitClass("Player"); local class=UnitClass("Player");
HealBot_Config.Debuff_Left[class] = this:GetID(); HealBot_Config.Debuff_Left[class] = this:GetID();
@@ -228,6 +250,7 @@ function HealBot_Options_CDCButLeft_OnSelect()
HealBot_DebuffPriority = HealBot_Debuff_Types[HealBot_Options_CDCButLeftText:GetText()]; HealBot_DebuffPriority = HealBot_Debuff_Types[HealBot_Options_CDCButLeftText:GetText()];
HealBot_Options_Debuff_Reset() HealBot_Options_Debuff_Reset()
end end
-- HealBot_Options_CDCButRight_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_CDCButRight_OnSelect() function HealBot_Options_CDCButRight_OnSelect()
local class=UnitClass("Player"); local class=UnitClass("Player");
HealBot_Config.Debuff_Right[class] = this:GetID(); HealBot_Config.Debuff_Right[class] = this:GetID();
@@ -238,11 +261,13 @@ function HealBot_Options_CDCButRight_OnSelect()
end end
HealBot_Options_Debuff_Reset() HealBot_Options_Debuff_Reset()
end end
-- HealBot_Options_CDC_SetCombo: UI handler for SetCombo options panel.
function HealBot_Options_CDC_SetCombo(spell, button, class) function HealBot_Options_CDC_SetCombo(spell, button, class)
local combo = HealBot_Config.KeyCombo[class] local combo = HealBot_Config.KeyCombo[class]
combo["Alt"..button] = spell combo["Alt"..button] = spell
HealBot_Options_KeyCombo_Change() HealBot_Options_KeyCombo_Change()
end end
-- HealBot_Options_Debuff_Reset: Restores default debuff tracking options.
function HealBot_Options_Debuff_Reset() function HealBot_Options_Debuff_Reset()
HealBot_DebuffWatch = { HealBot_DebuffWatch = {
[HEALBOT_DISEASE_en] = true, [HEALBOT_DISEASE_en] = true,
@@ -251,10 +276,12 @@ function HealBot_Options_Debuff_Reset()
[HEALBOT_CURSE_en] = true [HEALBOT_CURSE_en] = true
} }
end end
-- HealBot_Colorpick_OnClick: Opens color picker for debuff colors.
function HealBot_Colorpick_OnClick(CDCType) function HealBot_Colorpick_OnClick(CDCType)
HealBot_ColourObjWaiting=CDCType; HealBot_ColourObjWaiting=CDCType;
HealBot_UseColourPick(HealBot_Config.CDCBarColour[CDCType].R,HealBot_Config.CDCBarColour[CDCType].G,HealBot_Config.CDCBarColour[CDCType].B, nil) HealBot_UseColourPick(HealBot_Config.CDCBarColour[CDCType].R,HealBot_Config.CDCBarColour[CDCType].G,HealBot_Config.CDCBarColour[CDCType].B, nil)
end end
-- HealBot_SetCDCBarColours: Internal utility: HealBot_SetCDCBarColours
function HealBot_SetCDCBarColours() function HealBot_SetCDCBarColours()
HealBot_DiseaseColorpick:SetStatusBarColor(HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].R, HealBot_DiseaseColorpick:SetStatusBarColor(HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].R,
HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].G, HealBot_Config.CDCBarColour[HEALBOT_DISEASE_en].G,
+2
View File
@@ -1,6 +1,7 @@
-- HealBot Options panel file: HealBot_Options_Chat.lua -- HealBot Options panel file: HealBot_Options_Chat.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_ChatMsg_Channel_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ChatMsg_Channel_OnClick(id, buttonFrame) function HealBot_Options_ChatMsg_Channel_OnClick(id, buttonFrame)
if not HealBot_Config.ChatMessages then HealBot_Config.ChatMessages = {} end if not HealBot_Config.ChatMessages then HealBot_Config.ChatMessages = {} end
if not HealBot_Config.ChatMessages[id] then if not HealBot_Config.ChatMessages[id] then
@@ -26,6 +27,7 @@ function HealBot_Options_ChatMsg_Channel_OnClick(id, buttonFrame)
buttonFrame:SetText(nextChan) buttonFrame:SetText(nextChan)
end end
-- HealBot_Options_SetChatMessages: UI handler for SetChatMessages options panel.
function HealBot_Options_SetChatMessages() function HealBot_Options_SetChatMessages()
if not HealBot_Config.ChatMessages then if not HealBot_Config.ChatMessages then
HealBot_Config.ChatMessages = {} HealBot_Config.ChatMessages = {}
+41
View File
@@ -1,75 +1,91 @@
-- HealBot Options panel file: HealBot_Options_General.lua -- HealBot Options panel file: HealBot_Options_General.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_ShowHeaders_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowHeaders_OnLoad(this) function HealBot_Options_ShowHeaders_OnLoad(this)
getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_SHOWHEADERS); getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_SHOWHEADERS);
end end
-- HealBot_Options_ShowHeaders_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowHeaders_OnClick(this) function HealBot_Options_ShowHeaders_OnClick(this)
local isChecked = this:GetChecked() local isChecked = this:GetChecked()
HealBot_Config.ShowHeader[HealBot_Config.Current_Skin] = isChecked and 1 or 0; HealBot_Config.ShowHeader[HealBot_Config.Current_Skin] = isChecked and 1 or 0;
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_BarTextureS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarTextureS_OnValueChanged(this) function HealBot_Options_BarTextureS_OnValueChanged(this)
HealBot_Config.btexture[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.btexture[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BarHeightS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarHeightS_OnValueChanged(this) function HealBot_Options_BarHeightS_OnValueChanged(this)
HealBot_Config.bheight[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.bheight[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BarWidthS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarWidthS_OnValueChanged(this) function HealBot_Options_BarWidthS_OnValueChanged(this)
HealBot_Config.bwidth[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.bwidth[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BarNumColsS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarNumColsS_OnValueChanged(this) function HealBot_Options_BarNumColsS_OnValueChanged(this)
HealBot_Config.numcols[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.numcols[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BarBRSpaceS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarBRSpaceS_OnValueChanged(this) function HealBot_Options_BarBRSpaceS_OnValueChanged(this)
HealBot_Config.brspace[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.brspace[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BarBCSpaceS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarBCSpaceS_OnValueChanged(this) function HealBot_Options_BarBCSpaceS_OnValueChanged(this)
HealBot_Config.bcspace[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.bcspace[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_FontHeight_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_FontHeight_OnValueChanged(this) function HealBot_Options_FontHeight_OnValueChanged(this)
HealBot_Config.btextheight[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.btextheight[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_IconSizeS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_IconSizeS_OnValueChanged(this) function HealBot_Options_IconSizeS_OnValueChanged(this)
HealBot_Config.biconsize[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.biconsize[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_AbortBarSize_OnValueChanged: UI handler for OnValueChanged options panel.
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());
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_ActionAlpha_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_ActionAlpha_OnValueChanged(this) function HealBot_Options_ActionAlpha_OnValueChanged(this)
HealBot_Config.backcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.backcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this);
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_BarAlpha_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarAlpha_OnValueChanged(this) function HealBot_Options_BarAlpha_OnValueChanged(this)
HealBot_Config.Barcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.Barcola[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this);
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_BarAlphaInHeal_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarAlphaInHeal_OnValueChanged(this) function HealBot_Options_BarAlphaInHeal_OnValueChanged(this)
HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.BarcolaInHeal[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this);
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_BarAlphaDis_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarAlphaDis_OnValueChanged(this) function HealBot_Options_BarAlphaDis_OnValueChanged(this)
HealBot_Config.bardisa[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.bardisa[HealBot_Config.Current_Skin] = HealBot_Options_Pct_OnValueChanged(this);
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_SkinColorpick_OnClick: Opens color picker for skin customization.
function HealBot_SkinColorpick_OnClick(SkinType) function HealBot_SkinColorpick_OnClick(SkinType)
HealBot_ColourObjWaiting=SkinType; HealBot_ColourObjWaiting=SkinType;
@@ -105,6 +121,7 @@ function HealBot_SkinColorpick_OnClick(SkinType)
HealBot_Config.babortcola[HealBot_Config.Current_Skin]) HealBot_Config.babortcola[HealBot_Config.Current_Skin])
end end
end end
-- HealBot_SetSkinColours: Applies skin configuration to UI elements.
function HealBot_SetSkinColours() function HealBot_SetSkinColours()
-- Cache the current skin configuration for performance and readability -- Cache the current skin configuration for performance and readability
local skin = HealBot_Config.Current_Skin local skin = HealBot_Config.Current_Skin
@@ -202,76 +219,97 @@ function HealBot_SetSkinColours()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_AlertLevel_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_AlertLevel_OnValueChanged(this) function HealBot_Options_AlertLevel_OnValueChanged(this)
HealBot_Config.AlertLevel = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.AlertLevel = HealBot_Options_Pct_OnValueChanged(this);
HealBot_Action_Refresh(); HealBot_Action_Refresh();
end end
-- HealBot_Options_AutoShow_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_AutoShow_OnLoad(this) function HealBot_Options_AutoShow_OnLoad(this)
getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_AUTOSHOW); getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_AUTOSHOW);
end end
-- HealBot_Options_AutoShow_OnClick: UI handler for OnClick options panel.
function HealBot_Options_AutoShow_OnClick(this) function HealBot_Options_AutoShow_OnClick(this)
HealBot_Config.AutoClose = this:GetChecked() or 0; HealBot_Config.AutoClose = this:GetChecked() or 0;
HealBot_Action_Refresh(); HealBot_Action_Refresh();
end end
-- HealBot_Options_PanelSounds_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_PanelSounds_OnLoad(this) function HealBot_Options_PanelSounds_OnLoad(this)
getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_PANELSOUNDS); getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_PANELSOUNDS);
end end
-- HealBot_Options_PanelSounds_OnClick: UI handler for OnClick options panel.
function HealBot_Options_PanelSounds_OnClick(this) function HealBot_Options_PanelSounds_OnClick(this)
HealBot_Config.PanelSounds = this:GetChecked() or 0; HealBot_Config.PanelSounds = this:GetChecked() or 0;
end end
-- HealBot_Options_ActionMouseover_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ActionMouseover_OnLoad(this, text) function HealBot_Options_ActionMouseover_OnLoad(this, text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ActionMouseover_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ActionMouseover_OnClick(this) function HealBot_Options_ActionMouseover_OnClick(this)
HealBot_Config.ActionMouseover = this:GetChecked() or 0; HealBot_Config.ActionMouseover = this:GetChecked() or 0;
end end
-- HealBot_Options_ActionLocked_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ActionLocked_OnLoad(this) function HealBot_Options_ActionLocked_OnLoad(this)
getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_ACTIONLOCKED); getglobal(this:GetName().."Text"):SetText(HEALBOT_OPTIONS_ACTIONLOCKED);
end end
-- HealBot_Options_ActionLocked_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ActionLocked_OnClick(this) function HealBot_Options_ActionLocked_OnClick(this)
HealBot_Config.ActionLocked = this:GetChecked() or 0; HealBot_Config.ActionLocked = this:GetChecked() or 0;
end end
-- HealBot_Options_HideOptions_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_HideOptions_OnLoad(this,text) function HealBot_Options_HideOptions_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_HideOptions_OnClick: UI handler for OnClick options panel.
function HealBot_Options_HideOptions_OnClick(this) function HealBot_Options_HideOptions_OnClick(this)
HealBot_Config.HideOptions = this:GetChecked() or 0; HealBot_Config.HideOptions = this:GetChecked() or 0;
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Options_HideAbort_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_HideAbort_OnLoad(this,text) function HealBot_Options_HideAbort_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_HideAbort_OnClick: UI handler for OnClick options panel.
function HealBot_Options_HideAbort_OnClick(this) function HealBot_Options_HideAbort_OnClick(this)
HealBot_Config.HideAbort = this:GetChecked() or 0; HealBot_Config.HideAbort = this:GetChecked() or 0;
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Options_GrowUpwards_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_GrowUpwards_OnLoad(this,text) function HealBot_Options_GrowUpwards_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_GrowUpwards_OnClick: UI handler for OnClick options panel.
function HealBot_Options_GrowUpwards_OnClick(this) function HealBot_Options_GrowUpwards_OnClick(this)
HealBot_Config.GrowUpwards = this:GetChecked() or 0; HealBot_Config.GrowUpwards = this:GetChecked() or 0;
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Options_QualityRange_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_QualityRange_OnLoad(this,text) function HealBot_Options_QualityRange_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_QualityRange_OnClick: UI handler for OnClick options panel.
function HealBot_Options_QualityRange_OnClick(this) function HealBot_Options_QualityRange_OnClick(this)
HealBot_Config.QualityRange = this:GetChecked() or 0; HealBot_Config.QualityRange = this:GetChecked() or 0;
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Options_ProtectPvP_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ProtectPvP_OnLoad(this,text) function HealBot_Options_ProtectPvP_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ProtectPvP_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ProtectPvP_OnClick(this) function HealBot_Options_ProtectPvP_OnClick(this)
HealBot_Config.ProtectPvP = this:GetChecked() or 0; HealBot_Config.ProtectPvP = this:GetChecked() or 0;
HealBot_Action_Refresh(); HealBot_Action_Refresh();
end end
-- HealBot_Options_FramePaddingS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_FramePaddingS_OnValueChanged(this) function HealBot_Options_FramePaddingS_OnValueChanged(this)
if not HealBot_Config.bpadding then HealBot_Config.bpadding = {} end if not HealBot_Config.bpadding then HealBot_Config.bpadding = {} end
HealBot_Config.bpadding[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.bpadding[HealBot_Config.Current_Skin] = this:GetValue();
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
-- HealBot_Options_BorderThicknessS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BorderThicknessS_OnValueChanged(this) function HealBot_Options_BorderThicknessS_OnValueChanged(this)
if not HealBot_Config.bboffset then HealBot_Config.bboffset = {} end if not HealBot_Config.bboffset then HealBot_Config.bboffset = {} end
HealBot_Config.bboffset[HealBot_Config.Current_Skin] = this:GetValue(); HealBot_Config.bboffset[HealBot_Config.Current_Skin] = this:GetValue();
@@ -279,15 +317,18 @@ function HealBot_Options_BorderThicknessS_OnValueChanged(this)
HealBot_Action_ResetSkin() HealBot_Action_ResetSkin()
end end
-- HealBot_Options_HideParty_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_HideParty_OnLoad(this, text) function HealBot_Options_HideParty_OnLoad(this, text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_HideParty_OnClick: UI handler for OnClick options panel.
function HealBot_Options_HideParty_OnClick(this) function HealBot_Options_HideParty_OnClick(this)
HealBot_Config.HideParty = this:GetChecked() or 0; HealBot_Config.HideParty = this:GetChecked() or 0;
HealBot_Options_TogglePartyFrames(); HealBot_Options_TogglePartyFrames();
end end
-- HealBot_Options_TogglePartyFrames: UI handler for TogglePartyFrames options panel.
function HealBot_Options_TogglePartyFrames() function HealBot_Options_TogglePartyFrames()
if HealBot_Config.HideParty == 1 then if HealBot_Config.HideParty == 1 then
if HidePartyFrame then HidePartyFrame(); end if HidePartyFrame then HidePartyFrame(); end
+33 -12
View File
@@ -1,52 +1,65 @@
-- HealBot Options panel file: HealBot_Options_Healing.lua -- HealBot Options panel file: HealBot_Options_Healing.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_GroupHeals_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_GroupHeals_OnLoad(this,text) function HealBot_Options_GroupHeals_OnLoad(this,text)
this.text = text this.text = text
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_GroupHeals_OnClick: UI handler for OnClick options panel.
function HealBot_Options_GroupHeals_OnClick(this) function HealBot_Options_GroupHeals_OnClick(this)
HealBot_Config.GroupHeals = this:GetChecked() or 0; HealBot_Config.GroupHeals = this:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_TankHeals_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_TankHeals_OnLoad(this,text) function HealBot_Options_TankHeals_OnLoad(this,text)
this.text = text this.text = text
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_TankHeals_OnClick: UI handler for OnClick options panel.
function HealBot_Options_TankHeals_OnClick(this) function HealBot_Options_TankHeals_OnClick(this)
HealBot_Config.TankHeals = this:GetChecked() or 0; HealBot_Config.TankHeals = this:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_TargetHeals_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_TargetHeals_OnLoad(this,text) function HealBot_Options_TargetHeals_OnLoad(this,text)
this.text = text this.text = text
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_TargetHeals_OnClick: UI handler for OnClick options panel.
function HealBot_Options_TargetHeals_OnClick(this) function HealBot_Options_TargetHeals_OnClick(this)
HealBot_Config.TargetHeals = this:GetChecked() or 0; HealBot_Config.TargetHeals = this:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_EmergencyHeals_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EmergencyHeals_OnLoad(this,text) function HealBot_Options_EmergencyHeals_OnLoad(this,text)
this.text = text this.text = text
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_EmergencyHeals_OnClick: UI handler for OnClick options panel.
function HealBot_Options_EmergencyHeals_OnClick(this) function HealBot_Options_EmergencyHeals_OnClick(this)
HealBot_Config.EmergencyHeals = this:GetChecked() or 0; HealBot_Config.EmergencyHeals = this:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_PetHeals_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_PetHeals_OnLoad(this,text) function HealBot_Options_PetHeals_OnLoad(this,text)
this.text = text this.text = text
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_PetHeals_OnClick: UI handler for OnClick options panel.
function HealBot_Options_PetHeals_OnClick(this) function HealBot_Options_PetHeals_OnClick(this)
HealBot_Config.PetHeals = this:GetChecked() or 0; HealBot_Config.PetHeals = this:GetChecked() or 0;
HealBot_RecalcParty(); HealBot_RecalcParty();
end end
-- HealBot_Options_OverHeal_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_OverHeal_OnValueChanged(this) function HealBot_Options_OverHeal_OnValueChanged(this)
HealBot_Config.OverHeal = HealBot_Options_Pct_OnValueChanged(this); HealBot_Config.OverHeal = HealBot_Options_Pct_OnValueChanged(this);
end end
-- HealBot_Options_EFClass_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EFClass_OnLoad(this,text) function HealBot_Options_EFClass_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_EFClass_OnClick: UI handler for OnClick options panel.
function HealBot_Options_EFClass_OnClick(this) function HealBot_Options_EFClass_OnClick(this)
if HealBot_Config.EmergencyFClass==1 then if HealBot_Config.EmergencyFClass==1 then
HealBot_Config.EmergIncMelee[HEALBOT_DRUID] = HealBot_Options_EFClassDruid:GetChecked() or 0; HealBot_Config.EmergIncMelee[HEALBOT_DRUID] = HealBot_Options_EFClassDruid:GetChecked() or 0;
@@ -100,6 +113,7 @@ HealBot_Options_HealthText_List = {
"Health Deficit", "Health Deficit",
} }
-- HealBot_Options_HealthText_DropDown: UI handler for DropDown options panel.
function HealBot_Options_HealthText_DropDown() function HealBot_Options_HealthText_DropDown()
for i=1, getn(HealBot_Options_HealthText_List), 1 do for i=1, getn(HealBot_Options_HealthText_List), 1 do
local info = {}; local info = {};
@@ -109,11 +123,13 @@ function HealBot_Options_HealthText_DropDown()
end end
end end
-- HealBot_Options_HealthText_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_HealthText_OnLoad(this) function HealBot_Options_HealthText_OnLoad(this)
UIDropDownMenu_Initialize(this, HealBot_Options_HealthText_DropDown); UIDropDownMenu_Initialize(this, HealBot_Options_HealthText_DropDown);
UIDropDownMenu_SetWidth(110, this); UIDropDownMenu_SetWidth(110, this);
end end
-- HealBot_Options_HealthText_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_HealthText_OnSelect() function HealBot_Options_HealthText_OnSelect()
HealBot_Config.ShowHealthText = this:GetID() - 1; HealBot_Config.ShowHealthText = this:GetID() - 1;
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_HealthText, this:GetID()) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_HealthText, this:GetID())
@@ -127,6 +143,7 @@ local HealBot_Options_EmergencyFClass_List = {
HEALBOT_CLASSES_CUSTOM, HEALBOT_CLASSES_CUSTOM,
} }
-- HealBot_Options_EmergencyFClass_DropDown: UI handler for DropDown options panel.
function HealBot_Options_EmergencyFClass_DropDown() function HealBot_Options_EmergencyFClass_DropDown()
for i=1, getn(HealBot_Options_EmergencyFClass_List), 1 do for i=1, getn(HealBot_Options_EmergencyFClass_List), 1 do
local info = {}; local info = {};
@@ -136,27 +153,32 @@ function HealBot_Options_EmergencyFClass_DropDown()
end end
end end
-- HealBot_Options_EmergencyFClass_Initialize: UI handler for Initialize options panel.
function HealBot_Options_EmergencyFClass_Initialize() function HealBot_Options_EmergencyFClass_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_EmergencyFClass,HealBot_Options_EmergencyFClass_DropDown) UIDropDownMenu_Initialize(HealBot_Options_EmergencyFClass,HealBot_Options_EmergencyFClass_DropDown)
end end
-- HealBot_Options_EmergencyFClass_Refresh: UI handler for Refresh options panel.
function HealBot_Options_EmergencyFClass_Refresh(onselect) function HealBot_Options_EmergencyFClass_Refresh(onselect)
if not HealBot_Config.EmergencyFClass then return end if not HealBot_Config.EmergencyFClass then return end
if not onselect then HealBot_Options_EmergencyFClass_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_EmergencyFClass_Initialize() end -- or wrong menu may be used !
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_EmergencyFClass,HealBot_Config.EmergencyFClass) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_EmergencyFClass,HealBot_Config.EmergencyFClass)
end end
-- HealBot_Options_EmergencyFClass_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EmergencyFClass_OnLoad() function HealBot_Options_EmergencyFClass_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFClass_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFClass_DropDown)
UIDropDownMenu_SetWidth(100, this) UIDropDownMenu_SetWidth(100, this)
end end
-- HealBot_Options_EmergencyFClass_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_EmergencyFClass_OnSelect() function HealBot_Options_EmergencyFClass_OnSelect()
HealBot_Config.EmergencyFClass = this:GetID() HealBot_Config.EmergencyFClass = this:GetID()
HealBot_Options_EmergencyFClass_Refresh(true) HealBot_Options_EmergencyFClass_Refresh(true)
HealBot_Options_EFClass_Reset() HealBot_Options_EFClass_Reset()
end end
-- HealBot_Options_EFClass_Reset: UI handler for Reset options panel.
function HealBot_Options_EFClass_Reset() function HealBot_Options_EFClass_Reset()
if HealBot_Config.EmergencyFClass==1 then if HealBot_Config.EmergencyFClass==1 then
HealBot_Options_EFClassDruid:SetChecked(HealBot_Config.EmergIncMelee[HEALBOT_DRUID]); HealBot_Options_EFClassDruid:SetChecked(HealBot_Config.EmergIncMelee[HEALBOT_DRUID]);
@@ -210,6 +232,7 @@ local HealBot_Options_ExtraSort_List = {
HEALBOT_SORTBY_MAXHEALTH, HEALBOT_SORTBY_MAXHEALTH,
} }
-- HealBot_Options_ExtraSort_DropDown: UI handler for DropDown options panel.
function HealBot_Options_ExtraSort_DropDown() function HealBot_Options_ExtraSort_DropDown()
for i=1, getn(HealBot_Options_ExtraSort_List), 1 do for i=1, getn(HealBot_Options_ExtraSort_List), 1 do
local info = {}; local info = {};
@@ -219,21 +242,25 @@ function HealBot_Options_ExtraSort_DropDown()
end end
end end
-- HealBot_Options_ExtraSort_Initialize: UI handler for Initialize options panel.
function HealBot_Options_ExtraSort_Initialize() function HealBot_Options_ExtraSort_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_ExtraSort,HealBot_Options_ExtraSort_DropDown) UIDropDownMenu_Initialize(HealBot_Options_ExtraSort,HealBot_Options_ExtraSort_DropDown)
end end
-- HealBot_Options_ExtraSort_Refresh: UI handler for Refresh options panel.
function HealBot_Options_ExtraSort_Refresh(onselect) function HealBot_Options_ExtraSort_Refresh(onselect)
if not HealBot_Config.ExtraOrder then return end if not HealBot_Config.ExtraOrder then return end
if not onselect then HealBot_Options_ExtraSort_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_ExtraSort_Initialize() end -- or wrong menu may be used !
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_ExtraSort,HealBot_Config.ExtraOrder) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_ExtraSort,HealBot_Config.ExtraOrder)
end end
-- HealBot_Options_ExtraSort_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ExtraSort_OnLoad() function HealBot_Options_ExtraSort_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_ExtraSort_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_ExtraSort_DropDown)
UIDropDownMenu_SetWidth(100, this) UIDropDownMenu_SetWidth(100, this)
end end
-- HealBot_Options_ExtraSort_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_ExtraSort_OnSelect() function HealBot_Options_ExtraSort_OnSelect()
HealBot_Config.ExtraOrder = this:GetID() HealBot_Config.ExtraOrder = this:GetID()
HealBot_Options_ExtraSort_Refresh(true) HealBot_Options_ExtraSort_Refresh(true)
@@ -242,6 +269,7 @@ end
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- HealBot_Options_EmergencyFilter_DropDown: UI handler for DropDown options panel.
function HealBot_Options_EmergencyFilter_DropDown() function HealBot_Options_EmergencyFilter_DropDown()
for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do for i=1, getn(HealBot_Options_EmergencyFilter_List), 1 do
local info = {}; local info = {};
@@ -252,11 +280,13 @@ function HealBot_Options_EmergencyFilter_DropDown()
end end
-- HealBot_Options_EmergencyFilter_Initialize: UI handler for Initialize options panel.
function HealBot_Options_EmergencyFilter_Initialize() function HealBot_Options_EmergencyFilter_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_EmergencyFilter,HealBot_Options_EmergencyFilter_DropDown) UIDropDownMenu_Initialize(HealBot_Options_EmergencyFilter,HealBot_Options_EmergencyFilter_DropDown)
end end
-- HealBot_Options_EmergencyFilter_Refresh: UI handler for Refresh options panel.
function HealBot_Options_EmergencyFilter_Refresh(onselect) function HealBot_Options_EmergencyFilter_Refresh(onselect)
if not HealBot_Config.EmergIncMonitor then return end if not HealBot_Config.EmergIncMonitor then return end
if not onselect then HealBot_Options_EmergencyFilter_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_EmergencyFilter_Initialize() end -- or wrong menu may be used !
@@ -264,18 +294,21 @@ function HealBot_Options_EmergencyFilter_Refresh(onselect)
end end
-- HealBot_Options_EmergencyFilter_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EmergencyFilter_OnLoad() function HealBot_Options_EmergencyFilter_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFilter_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_EmergencyFilter_DropDown)
UIDropDownMenu_SetWidth(100, this) UIDropDownMenu_SetWidth(100, this)
end end
-- HealBot_Options_EmergencyFilter_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_EmergencyFilter_OnSelect() function HealBot_Options_EmergencyFilter_OnSelect()
HealBot_Config.EmergIncMonitor = this:GetID() HealBot_Config.EmergIncMonitor = this:GetID()
HealBot_Options_EmergencyFilter_Refresh(true) HealBot_Options_EmergencyFilter_Refresh(true)
HealBot_Options_EmergencyFilter_Reset() HealBot_Options_EmergencyFilter_Reset()
end end
-- HealBot_Options_EmergencyFilter_Reset: UI handler for Reset options panel.
function HealBot_Options_EmergencyFilter_Reset() function HealBot_Options_EmergencyFilter_Reset()
HealBot_EmergInc[HEALBOT_DRUID] = 0; HealBot_EmergInc[HEALBOT_DRUID] = 0;
@@ -341,15 +374,3 @@ function HealBot_Options_EmergencyFilter_Reset()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
+1
View File
@@ -1,3 +1,4 @@
-- HealBot_Options_Integrations_OnShow: UI handler for OnShow options panel.
function HealBot_Options_Integrations_OnShow(this) function HealBot_Options_Integrations_OnShow(this)
HealBot_Options_Integrations_UnitXP:SetChecked(HealBot_Config.HealBot_Integrations_UnitXP); HealBot_Options_Integrations_UnitXP:SetChecked(HealBot_Config.HealBot_Integrations_UnitXP);
HealBot_Options_Integrations_Nampower:SetChecked(HealBot_Config.HealBot_Integrations_Nampower); HealBot_Options_Integrations_Nampower:SetChecked(HealBot_Config.HealBot_Integrations_Nampower);
+10
View File
@@ -1,12 +1,14 @@
-- HealBot Options panel file: HealBot_Options_Skins.lua -- HealBot Options panel file: HealBot_Options_Skins.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_Options_BarMaxRowsS_OnValueChanged: UI handler for OnValueChanged options panel.
function HealBot_Options_BarMaxRowsS_OnValueChanged(this) function HealBot_Options_BarMaxRowsS_OnValueChanged(this)
if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end
HealBot_Config.bmaxrows[HealBot_Config.Current_Skin] = this:GetValue() HealBot_Config.bmaxrows[HealBot_Config.Current_Skin] = this:GetValue()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_GridOrientation_OnClick: UI handler for OnClick options panel.
function HealBot_Options_GridOrientation_OnClick(this) function HealBot_Options_GridOrientation_OnClick(this)
if not HealBot_Config.GridOrientation then HealBot_Config.GridOrientation = {} end if not HealBot_Config.GridOrientation then HealBot_Config.GridOrientation = {} end
if this:GetChecked() then if this:GetChecked() then
@@ -17,6 +19,7 @@ function HealBot_Options_GridOrientation_OnClick(this)
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
end end
-- HealBot_Options_NewSkin_OnTextChanged: UI handler for OnTextChanged options panel.
function HealBot_Options_NewSkin_OnTextChanged(this) function HealBot_Options_NewSkin_OnTextChanged(this)
local text= this:GetText() local text= this:GetText()
if string.len(text)>0 then if string.len(text)>0 then
@@ -25,6 +28,7 @@ function HealBot_Options_NewSkin_OnTextChanged(this)
HealBot_Options_NewSkinb:Disable(); HealBot_Options_NewSkinb:Disable();
end end
end end
-- HealBot_Options_NewSkinb_OnClick: UI handler for OnClick options panel.
function HealBot_Options_NewSkinb_OnClick(this) function HealBot_Options_NewSkinb_OnClick(this)
HealBot_Config.numcols[HealBot_Options_NewSkin:GetText()] = HealBot_Config.numcols[HealBot_Config.Current_Skin] HealBot_Config.numcols[HealBot_Options_NewSkin:GetText()] = HealBot_Config.numcols[HealBot_Config.Current_Skin]
if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end if not HealBot_Config.bmaxrows then HealBot_Config.bmaxrows = {} end
@@ -73,6 +77,7 @@ function HealBot_Options_NewSkinb_OnClick(this)
HealBot_Options_SetSkins() HealBot_Options_SetSkins()
HealBot_Options_NewSkin:SetText("") HealBot_Options_NewSkin:SetText("")
end end
-- HealBot_Options_DeleteSkin_OnClick: UI handler for OnClick options panel.
function HealBot_Options_DeleteSkin_OnClick(this) function HealBot_Options_DeleteSkin_OnClick(this)
if HealBot_Config.Current_Skin~=HEALBOT_SKINS_STD then if HealBot_Config.Current_Skin~=HEALBOT_SKINS_STD then
HealBot_Config.numcols[HealBot_Options_SkinsText:GetText()] = nil HealBot_Config.numcols[HealBot_Options_SkinsText:GetText()] = nil
@@ -120,6 +125,7 @@ function HealBot_Options_DeleteSkin_OnClick(this)
HealBot_Options_SetSkins() HealBot_Options_SetSkins()
end end
end end
-- HealBot_Options_Skins_DropDown: UI handler for DropDown options panel.
function HealBot_Options_Skins_DropDown() function HealBot_Options_Skins_DropDown()
for i=1, getn(HealBot_Skins), 1 do for i=1, getn(HealBot_Skins), 1 do
local info = {}; local info = {};
@@ -128,18 +134,22 @@ function HealBot_Options_Skins_DropDown()
UIDropDownMenu_AddButton(info); UIDropDownMenu_AddButton(info);
end end
end end
-- HealBot_Options_Skins_Initialize: UI handler for Initialize options panel.
function HealBot_Options_Skins_Initialize() function HealBot_Options_Skins_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_Skins,HealBot_Options_Skins_DropDown) UIDropDownMenu_Initialize(HealBot_Options_Skins,HealBot_Options_Skins_DropDown)
end end
-- HealBot_Options_Skins_Refresh: UI handler for Refresh options panel.
function HealBot_Options_Skins_Refresh(onselect) function HealBot_Options_Skins_Refresh(onselect)
if not HealBot_Config.Skin_ID then return end if not HealBot_Config.Skin_ID then return end
if not onselect then HealBot_Options_Skins_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_Skins_Initialize() end -- or wrong menu may be used !
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_Skins,HealBot_Config.Skin_ID) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_Skins,HealBot_Config.Skin_ID)
end end
-- HealBot_Options_Skins_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_Skins_OnLoad() function HealBot_Options_Skins_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_Skins_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_Skins_DropDown)
UIDropDownMenu_SetWidth(100, this) UIDropDownMenu_SetWidth(100, this)
end end
-- HealBot_Options_Skins_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_Skins_OnSelect() function HealBot_Options_Skins_OnSelect()
HealBot_Config.Skin_ID = this:GetID() HealBot_Config.Skin_ID = this:GetID()
HealBot_Options_Skins_Refresh(true) HealBot_Options_Skins_Refresh(true)
+25 -15
View File
@@ -1,9 +1,11 @@
-- HealBot Options panel file: HealBot_Options_Spells.lua -- HealBot Options panel file: HealBot_Options_Spells.lua
-- Split from original HealBot_Options.lua -- Split from original HealBot_Options.lua
-- HealBot_ComboButtons_Button_OnLoad: UI handler for dropdown combo box.
function HealBot_ComboButtons_Button_OnLoad(this,text) function HealBot_ComboButtons_Button_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_ComboButtons_Button_OnClick: Click event handler.
function HealBot_ComboButtons_Button_OnClick(this,id) function HealBot_ComboButtons_Button_OnClick(this,id)
if HealBot_Options_ComboButtons_Button>0 then if HealBot_Options_ComboButtons_Button>0 then
getglobal("HealBot_ComboButtons_Button"..HealBot_Options_ComboButtons_Button):SetChecked(nil); getglobal("HealBot_ComboButtons_Button"..HealBot_Options_ComboButtons_Button):SetChecked(nil);
@@ -14,27 +16,35 @@ function HealBot_ComboButtons_Button_OnClick(this,id)
end end
HealBot_Options_ComboClass_Text() HealBot_Options_ComboClass_Text()
end end
-- HealBot_Options_ShowTooltip_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowTooltip_OnLoad(this,text) function HealBot_Options_ShowTooltip_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ShowTooltip_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowTooltip_OnClick(this) function HealBot_Options_ShowTooltip_OnClick(this)
HealBot_Config.ShowTooltip = this:GetChecked() or 0; HealBot_Config.ShowTooltip = this:GetChecked() or 0;
end end
-- HealBot_Options_ShowTooltipTarget_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowTooltipTarget_OnLoad(this,text) function HealBot_Options_ShowTooltipTarget_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ShowTooltipTarget_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowTooltipTarget_OnClick(this) function HealBot_Options_ShowTooltipTarget_OnClick(this)
HealBot_Config.Tooltip_ShowTarget = this:GetChecked() or 0; HealBot_Config.Tooltip_ShowTarget = this:GetChecked() or 0;
end end
-- HealBot_Options_ShowTooltipSpellDetail_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowTooltipSpellDetail_OnLoad(this,text) function HealBot_Options_ShowTooltipSpellDetail_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ShowTooltipSpellDetail_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowTooltipSpellDetail_OnClick(this) function HealBot_Options_ShowTooltipSpellDetail_OnClick(this)
HealBot_Config.Tooltip_ShowSpellDetail = this:GetChecked() or 0; HealBot_Config.Tooltip_ShowSpellDetail = this:GetChecked() or 0;
end end
-- HealBot_Options_ShowTooltipInstant_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_ShowTooltipInstant_OnLoad(this,text) function HealBot_Options_ShowTooltipInstant_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_ShowTooltipInstant_OnClick: UI handler for OnClick options panel.
function HealBot_Options_ShowTooltipInstant_OnClick(this) function HealBot_Options_ShowTooltipInstant_OnClick(this)
HealBot_Config.Tooltip_Recommend = this:GetChecked() or 0; HealBot_Config.Tooltip_Recommend = this:GetChecked() or 0;
end end
@@ -46,6 +56,7 @@ local HealBot_Options_TooltipPos_List = {
HEALBOT_TOOLTIP_POSBELOW, HEALBOT_TOOLTIP_POSBELOW,
} }
-- HealBot_Options_TooltipPos_DropDown: UI handler for DropDown options panel.
function HealBot_Options_TooltipPos_DropDown() function HealBot_Options_TooltipPos_DropDown()
for i=1, getn(HealBot_Options_TooltipPos_List), 1 do for i=1, getn(HealBot_Options_TooltipPos_List), 1 do
local info = {}; local info = {};
@@ -55,21 +66,25 @@ function HealBot_Options_TooltipPos_DropDown()
end end
end end
-- HealBot_Options_TooltipPos_Initialize: UI handler for Initialize options panel.
function HealBot_Options_TooltipPos_Initialize() function HealBot_Options_TooltipPos_Initialize()
UIDropDownMenu_Initialize(HealBot_Options_TooltipPos,HealBot_Options_TooltipPos_DropDown) UIDropDownMenu_Initialize(HealBot_Options_TooltipPos,HealBot_Options_TooltipPos_DropDown)
end end
-- HealBot_Options_TooltipPos_Refresh: UI handler for Refresh options panel.
function HealBot_Options_TooltipPos_Refresh(onselect) function HealBot_Options_TooltipPos_Refresh(onselect)
if not HealBot_Config.TooltipPos then return end if not HealBot_Config.TooltipPos then return end
if not onselect then HealBot_Options_TooltipPos_Initialize() end -- or wrong menu may be used ! if not onselect then HealBot_Options_TooltipPos_Initialize() end -- or wrong menu may be used !
HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_TooltipPos,HealBot_Config.TooltipPos) HealBot_UIDropDownMenu_SetSelectedID(HealBot_Options_TooltipPos,HealBot_Config.TooltipPos)
end end
-- HealBot_Options_TooltipPos_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_TooltipPos_OnLoad() function HealBot_Options_TooltipPos_OnLoad()
UIDropDownMenu_Initialize(this, HealBot_Options_TooltipPos_DropDown) UIDropDownMenu_Initialize(this, HealBot_Options_TooltipPos_DropDown)
UIDropDownMenu_SetWidth(128, this) UIDropDownMenu_SetWidth(128, this)
end end
-- HealBot_Options_TooltipPos_OnSelect: UI handler for OnSelect options panel.
function HealBot_Options_TooltipPos_OnSelect() function HealBot_Options_TooltipPos_OnSelect()
HealBot_Config.TooltipPos = this:GetID() HealBot_Config.TooltipPos = this:GetID()
HealBot_Options_TooltipPos_Refresh(true) HealBot_Options_TooltipPos_Refresh(true)
@@ -91,6 +106,7 @@ local HealBot_Options_ComboClass_List = {
-- HealBot_Options_ComboClass_Text: UI handler for Text options panel.
function HealBot_Options_ComboClass_Text() function HealBot_Options_ComboClass_Text()
local class=UnitClass("Player"); local class=UnitClass("Player");
local combo = HealBot_Config.KeyCombo[class] local combo = HealBot_Config.KeyCombo[class]
@@ -108,6 +124,7 @@ end
-- HealBot_Options_ComboClass_Button: UI handler for Button options panel.
function HealBot_Options_ComboClass_Button() function HealBot_Options_ComboClass_Button()
local button = "Left" local button = "Left"
if HealBot_Options_ComboButtons_Button==2 then button = "Middle"; end if HealBot_Options_ComboButtons_Button==2 then button = "Middle"; end
@@ -128,10 +145,12 @@ ColorPickerFrame.func = HealBot_Returned_Colours
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- HealBot_Options_EditBox_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EditBox_OnLoad(this,text) function HealBot_Options_EditBox_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_Click_OnTextChanged: UI handler for OnTextChanged options panel.
function HealBot_Options_Click_OnTextChanged(this) function HealBot_Options_Click_OnTextChanged(this)
local class=UnitClass("Player"); local class=UnitClass("Player");
if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end
@@ -141,6 +160,7 @@ function HealBot_Options_Click_OnTextChanged(this)
HealBot_Options_KeyCombo_Change() HealBot_Options_KeyCombo_Change()
end end
-- HealBot_Options_Shift_OnTextChanged: UI handler for OnTextChanged options panel.
function HealBot_Options_Shift_OnTextChanged(this) function HealBot_Options_Shift_OnTextChanged(this)
local class=UnitClass("Player"); local class=UnitClass("Player");
if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end
@@ -150,6 +170,7 @@ function HealBot_Options_Shift_OnTextChanged(this)
HealBot_Options_KeyCombo_Change() HealBot_Options_KeyCombo_Change()
end end
-- HealBot_Options_Ctrl_OnTextChanged: UI handler for OnTextChanged options panel.
function HealBot_Options_Ctrl_OnTextChanged(this) function HealBot_Options_Ctrl_OnTextChanged(this)
local class=UnitClass("Player"); local class=UnitClass("Player");
if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end
@@ -159,6 +180,7 @@ function HealBot_Options_Ctrl_OnTextChanged(this)
HealBot_Options_KeyCombo_Change() HealBot_Options_KeyCombo_Change()
end end
-- HealBot_Options_ShiftCtrl_OnTextChanged: UI handler for OnTextChanged options panel.
function HealBot_Options_ShiftCtrl_OnTextChanged(this) function HealBot_Options_ShiftCtrl_OnTextChanged(this)
local class=UnitClass("Player"); local class=UnitClass("Player");
if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end if not HealBot_Config.KeyCombo[class] then HealBot_Config.KeyCombo[class] = {} end
@@ -168,32 +190,20 @@ function HealBot_Options_ShiftCtrl_OnTextChanged(this)
HealBot_Options_KeyCombo_Change() HealBot_Options_KeyCombo_Change()
end end
-- HealBot_Options_KeyCombo_Change: Applies binding combo updates.
function HealBot_Options_KeyCombo_Change() function HealBot_Options_KeyCombo_Change()
local class=UnitClass("Player"); local class=UnitClass("Player");
HealBot_Config.KeyCombo[class]=HealBot_Config.KeyCombo[class]; HealBot_Config.KeyCombo[class]=HealBot_Config.KeyCombo[class];
end end
-- HealBot_Options_EnableHealthy_OnLoad: UI handler for OnLoad options panel.
function HealBot_Options_EnableHealthy_OnLoad(this,text) function HealBot_Options_EnableHealthy_OnLoad(this,text)
getglobal(this:GetName().."Text"):SetText(text); getglobal(this:GetName().."Text"):SetText(text);
end end
-- HealBot_Options_EnableHealthy_OnClick: UI handler for OnClick options panel.
function HealBot_Options_EnableHealthy_OnClick(this) function HealBot_Options_EnableHealthy_OnClick(this)
HealBot_Config.EnableHealthy = this:GetChecked() or 0; HealBot_Config.EnableHealthy = this:GetChecked() or 0;
HealBot_Action_EnableButtons(); HealBot_Action_EnableButtons();
end end
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- Chat Custom Messages UI Logic
--------------------------------------------------------------------------------
+20
View File
@@ -17,6 +17,7 @@ HealBot_Action_HealFocus = {};
HealBot_Action_HealButtons = {}; HealBot_Action_HealButtons = {};
HealBot_Action_UnitButtons = {}; HealBot_Action_UnitButtons = {};
-- HealBot_Action_SetTexture: Internal utility: HealBot_Action_SetTexture
function HealBot_Action_SetTexture(bar, btexture) function HealBot_Action_SetTexture(bar, btexture)
if not bar then return end if not bar then return end
if btexture == 10 then if btexture == 10 then
@@ -26,6 +27,7 @@ function HealBot_Action_SetTexture(bar, btexture)
end end
end end
-- HealBot_HealthColor: Computes health bar RGBA based on debuffs and class.
function HealBot_HealthColor(unit, hlth, maxhlth) function HealBot_HealthColor(unit, hlth, maxhlth)
if HealBot_UnitDebuff[unit] then if HealBot_UnitDebuff[unit] then
local debuff_type = HealBot_UnitDebuff[unit] local debuff_type = HealBot_UnitDebuff[unit]
@@ -85,6 +87,7 @@ function HealBot_HealthColor(unit, hlth, maxhlth)
return r, g, b, a; return r, g, b, a;
end end
-- HealBot_Action_HealthBar: Internal utility: HealBot_Action_HealthBar
function HealBot_Action_HealthBar(button) function HealBot_Action_HealthBar(button)
if not button.bar then if not button.bar then
button.bar = getglobal(button:GetName() .. "Bar") button.bar = getglobal(button:GetName() .. "Bar")
@@ -92,6 +95,7 @@ function HealBot_Action_HealthBar(button)
return button.bar; return button.bar;
end end
-- HealBot_Action_HealthBar2: Internal utility: HealBot_Action_HealthBar2
function HealBot_Action_HealthBar2(button) function HealBot_Action_HealthBar2(button)
if not button.bar2 then if not button.bar2 then
button.bar2 = getglobal(button:GetName() .. "Bar2") button.bar2 = getglobal(button:GetName() .. "Bar2")
@@ -99,6 +103,7 @@ function HealBot_Action_HealthBar2(button)
return button.bar2; return button.bar2;
end end
-- HealBot_Action_EnableButton: Updates a button's health, color, text, and debuffs.
function HealBot_Action_EnableButton(button) function HealBot_Action_EnableButton(button)
local unit = button.unit; local unit = button.unit;
local state = HealBot_Model.units[unit] local state = HealBot_Model.units[unit]
@@ -270,12 +275,14 @@ function HealBot_Action_EnableButton(button)
end end
end end
-- HealBot_Action_EnableButtons: Internal utility: HealBot_Action_EnableButtons
function HealBot_Action_EnableButtons() function HealBot_Action_EnableButtons()
for index, button in pairs(HealBot_Action_HealButtons) do for index, button in pairs(HealBot_Action_HealButtons) do
HealBot_Action_EnableButton(button) HealBot_Action_EnableButton(button)
end end
end end
-- HealBot_Action_RefreshButton: Calls EnableButton if unit is valid.
function HealBot_Action_RefreshButton(button) function HealBot_Action_RefreshButton(button)
if not button then return end if not button then return end
local unit = button.unit; local unit = button.unit;
@@ -284,6 +291,7 @@ function HealBot_Action_RefreshButton(button)
end end
end end
-- HealBot_Action_ResetSkin: Internal utility: HealBot_Action_ResetSkin
function HealBot_Action_ResetSkin() function HealBot_Action_ResetSkin()
HealBot_Action_PartyChanged() HealBot_Action_PartyChanged()
if HealBot_Options:IsVisible() then if HealBot_Options:IsVisible() then
@@ -299,6 +307,7 @@ function HealBot_Action_ResetSkin()
end end
end end
-- HealBot_Action_RefreshButtons: Refreshes all active unit buttons.
function HealBot_Action_RefreshButtons(unit) function HealBot_Action_RefreshButtons(unit)
if unit and HealBot_Action_UnitButtons[unit] then if unit and HealBot_Action_UnitButtons[unit] then
for index, button in pairs(HealBot_Action_UnitButtons[unit]) do for index, button in pairs(HealBot_Action_UnitButtons[unit]) do
@@ -311,6 +320,7 @@ function HealBot_Action_RefreshButtons(unit)
end end
end end
-- HealBot_Action_RefreshPower: Fast path: updates only mana bar textures.
function HealBot_Action_RefreshPower(unit) function HealBot_Action_RefreshPower(unit)
if not unit or not HealBot_Action_UnitButtons[unit] then return end if not unit or not HealBot_Action_UnitButtons[unit] then return end
local state = HealBot_Model.units[unit] local state = HealBot_Model.units[unit]
@@ -326,6 +336,7 @@ function HealBot_Action_RefreshPower(unit)
end end
end end
-- HealBot_Action_PositionButton: Positions a button element within the grid.
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
@@ -361,6 +372,7 @@ function HealBot_Action_PositionButton(button, OsetX, OsetY, bwidth, bheight, ch
return OsetY; return OsetY;
end end
-- HealBot_Action_PositionButtonHorizontal: Internal utility: HealBot_Action_PositionButtonHorizontal
function HealBot_Action_PositionButtonHorizontal(button, OsetX, OsetY, bwidth, bheight, checked, header) function HealBot_Action_PositionButtonHorizontal(button, OsetX, OsetY, bwidth, bheight, checked, header)
local bcspace = HealBot_Config.bcspace[HealBot_Config.Current_Skin] or 3; local bcspace = HealBot_Config.bcspace[HealBot_Config.Current_Skin] or 3;
if header then if header then
@@ -396,6 +408,7 @@ function HealBot_Action_PositionButtonHorizontal(button, OsetX, OsetY, bwidth, b
return OsetX; return OsetX;
end end
-- HealBot_Action_SetHeightWidth: Resizes the main panel frame to fit content.
function HealBot_Action_SetHeightWidth(width, height, bwidth) function HealBot_Action_SetHeightWidth(width, height, bwidth)
if HealBot_ActionHeight then if HealBot_ActionHeight then
HealBot_Action:SetHeight(HealBot_ActionHeight); HealBot_Action:SetHeight(HealBot_ActionHeight);
@@ -421,6 +434,7 @@ function HealBot_Action_SetHeightWidth(width, height, bwidth)
HealBot_Action:SetWidth(width + bwidth + bpadding) HealBot_Action:SetWidth(width + bwidth + bpadding)
end end
-- HealBot_Action_SetHealButton: Assigns a unit string to a grid button slot.
function HealBot_Action_SetHealButton(index, unit) function HealBot_Action_SetHealButton(index, unit)
if not index then if not index then
HealBot_Action_HealButtons = {}; HealBot_Action_HealButtons = {};
@@ -440,6 +454,7 @@ function HealBot_Action_SetHealButton(index, unit)
return button; return button;
end end
-- HealBot_Action_PartyChanged: Rebuilds the entire grid layout based on roster.
function HealBot_Action_PartyChanged() function HealBot_Action_PartyChanged()
if HealBot_IsFighting then if HealBot_IsFighting then
HealBot_Action_AppendNewUnits() HealBot_Action_AppendNewUnits()
@@ -1018,6 +1033,7 @@ function HealBot_Action_PartyChanged()
HealBot_Action_ShowFrame(); HealBot_Action_ShowFrame();
end end
-- HealBot_Action_ShowFrame: Internal utility: HealBot_Action_ShowFrame
function HealBot_Action_ShowFrame() function HealBot_Action_ShowFrame()
if HealBot_Config.ActionVisible == 1 then if HealBot_Config.ActionVisible == 1 then
if HealBot_Config.HideSolo == 1 and GetNumPartyMembers() == 0 and GetNumRaidMembers() == 0 then if HealBot_Config.HideSolo == 1 and GetNumPartyMembers() == 0 and GetNumRaidMembers() == 0 then
@@ -1030,6 +1046,7 @@ function HealBot_Action_ShowFrame()
end end
end end
-- HealBot_Action_Reset: Resets action panel position and rebuilds layout.
function HealBot_Action_Reset() function HealBot_Action_Reset()
HealBot_Action:ClearAllPoints(); HealBot_Action:ClearAllPoints();
HealBot_Action:SetPoint("TOP", "MinimapCluster", "BOTTOM", 7, 10); HealBot_Action:SetPoint("TOP", "MinimapCluster", "BOTTOM", 7, 10);
@@ -1038,6 +1055,7 @@ function HealBot_Action_Reset()
HealBot_Action_PartyChanged(); HealBot_Action_PartyChanged();
end end
-- HealBot_Action_Refresh: Alias for refreshing a unit button.
function HealBot_Action_Refresh(unit) function HealBot_Action_Refresh(unit)
if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then if (UnitIsDeadOrGhost("player")) or (UnitOnTaxi("player")) then
if HealBot_Config.AutoClose == 1 and HealBot_Config.ActionVisible ~= 0 then if HealBot_Config.AutoClose == 1 and HealBot_Config.ActionVisible ~= 0 then
@@ -1064,6 +1082,7 @@ function HealBot_Action_Refresh(unit)
end end
end end
end end
-- HealBot_Action_AppendUnit: Internal utility: HealBot_Action_AppendUnit
function HealBot_Action_AppendUnit(unit) function HealBot_Action_AppendUnit(unit)
if not HealBot_Grid_LastI then return end if not HealBot_Grid_LastI then return end
if HealBot_Grid_LastI >= 100 then return end if HealBot_Grid_LastI >= 100 then return end
@@ -1126,6 +1145,7 @@ function HealBot_Action_AppendUnit(unit)
HealBot_Action_SetHeightWidth(totalOffsetX, totalOffsetY + bpadding, bwidth) HealBot_Action_SetHeightWidth(totalOffsetX, totalOffsetY + bpadding, bwidth)
end end
-- HealBot_Action_AppendNewUnits: Internal utility: HealBot_Action_AppendNewUnits
function HealBot_Action_AppendNewUnits() function HealBot_Action_AppendNewUnits()
if not HealBot_Grid_LastI then return end if not HealBot_Grid_LastI then return end
+10
View File
@@ -3,6 +3,7 @@
HealBot_Action_TooltipUnit = nil HealBot_Action_TooltipUnit = nil
-- HealBot_Tooltip_GetSpellColor: Internal utility: HealBot_Tooltip_GetSpellColor
function HealBot_Tooltip_GetSpellColor(spell) function HealBot_Tooltip_GetSpellColor(spell)
local r, g, b = 1, 1, 0 -- default yellow local r, g, b = 1, 1, 0 -- default yellow
if spell and HealBot_Spells and HealBot_Spells[spell] and HealBot_Spells[spell].Mana then if spell and HealBot_Spells and HealBot_Spells[spell] and HealBot_Spells[spell].Mana then
@@ -13,6 +14,7 @@ function HealBot_Tooltip_GetSpellColor(spell)
return r, g, b return r, g, b
end end
-- HealBot_Action_RefreshTooltip: Builds and displays spell tooltip on hover.
function HealBot_Action_RefreshTooltip(unit) function HealBot_Action_RefreshTooltip(unit)
if HealBot_Config.ShowTooltip==0 then return end if HealBot_Config.ShowTooltip==0 then return end
if not unit then unit = HealBot_Action_TooltipUnit end if not unit then unit = HealBot_Action_TooltipUnit end
@@ -149,6 +151,7 @@ function HealBot_Action_RefreshTooltip(unit)
HealBot_Tooltip:Show(); HealBot_Tooltip:Show();
end end
-- HealBot_Action_Tooltip_SpellInfo: Internal utility: HealBot_Action_Tooltip_SpellInfo
function HealBot_Action_Tooltip_SpellInfo(spell,linenum) function HealBot_Action_Tooltip_SpellInfo(spell,linenum)
local text local text
if HealBot_Spells[spell] then if HealBot_Spells[spell] then
@@ -184,6 +187,7 @@ function HealBot_Action_Tooltip_SpellInfo(spell,linenum)
return linenum return linenum
end end
-- HealBot_Action_Tooltip_SpellSummary: Internal utility: HealBot_Action_Tooltip_SpellSummary
function HealBot_Action_Tooltip_SpellSummary(spell) function HealBot_Action_Tooltip_SpellSummary(spell)
local ret_val = " "; local ret_val = " ";
if HealBot_Spells[spell] then if HealBot_Spells[spell] then
@@ -211,6 +215,7 @@ function HealBot_Action_Tooltip_SpellSummary(spell)
return ret_val return ret_val
end end
-- HealBot_Action_Tooltip_CheckForInstant: Internal utility: HealBot_Action_Tooltip_CheckForInstant
function HealBot_Action_Tooltip_CheckForInstant(unit,spell,upd,linenum,check) function HealBot_Action_Tooltip_CheckForInstant(unit,spell,upd,linenum,check)
if HealBot_Spells[spell] then if HealBot_Spells[spell] then
if HealBot_Spells[spell].CastTime == 0 then if HealBot_Spells[spell].CastTime == 0 then
@@ -229,6 +234,7 @@ function HealBot_Action_Tooltip_CheckForInstant(unit,spell,upd,linenum,check)
return check+1,linenum; return check+1,linenum;
end end
-- HealBot_Action_Tooltip_SetLineLeft: Internal utility: HealBot_Action_Tooltip_SetLineLeft
function HealBot_Action_Tooltip_SetLineLeft(Text,R,G,B,linenum) function HealBot_Action_Tooltip_SetLineLeft(Text,R,G,B,linenum)
local txtL = getglobal("HealBot_TooltipTextL" .. linenum) local txtL = getglobal("HealBot_TooltipTextL" .. linenum)
txtL:SetTextColor(R,G,B) txtL:SetTextColor(R,G,B)
@@ -236,6 +242,7 @@ function HealBot_Action_Tooltip_SetLineLeft(Text,R,G,B,linenum)
txtL:Show() txtL:Show()
end end
-- HealBot_Action_Tooltip_SetLineRight: Internal utility: HealBot_Action_Tooltip_SetLineRight
function HealBot_Action_Tooltip_SetLineRight(Text,R,G,B,linenum) function HealBot_Action_Tooltip_SetLineRight(Text,R,G,B,linenum)
local txtR = getglobal("HealBot_TooltipTextR" .. linenum) local txtR = getglobal("HealBot_TooltipTextR" .. linenum)
txtR:SetTextColor(R,G,B) txtR:SetTextColor(R,G,B)
@@ -243,6 +250,7 @@ function HealBot_Action_Tooltip_SetLineRight(Text,R,G,B,linenum)
txtR:Show() txtR:Show()
end end
-- HealBot_Action_Tooltip_ClearLines: Internal utility: HealBot_Action_Tooltip_ClearLines
function HealBot_Action_Tooltip_ClearLines() function HealBot_Action_Tooltip_ClearLines()
for j=1,30 do for j=1,30 do
local txtL = getglobal("HealBot_TooltipTextL" .. j) local txtL = getglobal("HealBot_TooltipTextL" .. j)
@@ -254,6 +262,7 @@ function HealBot_Action_Tooltip_ClearLines()
end end
end end
-- HealBot_Action_ShowTooltip: Internal utility: HealBot_Action_ShowTooltip
function HealBot_Action_ShowTooltip(this) function HealBot_Action_ShowTooltip(this)
if HealBot_Config.ShowTooltip==0 then return end if HealBot_Config.ShowTooltip==0 then return end
if not this.unit then return end; if not this.unit then return end;
@@ -263,6 +272,7 @@ function HealBot_Action_ShowTooltip(this)
HealBot_Action_RefreshTooltip(this.unit); HealBot_Action_RefreshTooltip(this.unit);
end end
-- HealBot_Action_HideTooltip: Internal utility: HealBot_Action_HideTooltip
function HealBot_Action_HideTooltip(this) function HealBot_Action_HideTooltip(this)
if HealBot_Config.ShowTooltip==0 then return end if HealBot_Config.ShowTooltip==0 then return end
HealBot_Tooltip:Hide(); HealBot_Tooltip:Hide();