diff --git a/HealBot_Action.xml b/HealBot_Action.xml
index d744213..8cfd040 100644
--- a/HealBot_Action.xml
+++ b/HealBot_Action.xml
@@ -232,6 +232,15 @@
+
+
+
+
+
+
+
+
+
@@ -243,6 +252,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/HealBot_Controller_Events.lua b/HealBot_Controller_Events.lua
index c10d4b2..aaa6887 100644
--- a/HealBot_Controller_Events.lua
+++ b/HealBot_Controller_Events.lua
@@ -181,6 +181,16 @@ local HealBot_EventHandlers = {
HealBot_Model:NotifyObservers("ROSTER_CHANGED")
HealBot_OnEvent_PartyMembersChanged(this)
end,
+ ["RAID_ROSTER_UPDATE"] = function(this)
+ for _, unit in ipairs(HealBot_Model.partyMembers) do
+ HealBot_Model:RefreshUnit(unit)
+ end
+ for _, unit in ipairs(HealBot_Model.raidMembers) do
+ HealBot_Model:RefreshUnit(unit)
+ end
+ HealBot_Model:NotifyObservers("ROSTER_CHANGED")
+ HealBot_OnEvent_PartyMembersChanged(this)
+ end,
["PLAYER_ENTERING_WORLD"] = function(this)
HealBot_Model:RefreshUnit("player")
HealBot_Model:RefreshUnit("pet")
@@ -282,6 +292,7 @@ function HealBot_OnEvent_VariablesLoaded(this)
this:RegisterEvent("PLAYER_REGEN_ENABLED");
this:RegisterEvent("PLAYER_TARGET_CHANGED");
this:RegisterEvent("PARTY_MEMBERS_CHANGED");
+ this:RegisterEvent("RAID_ROSTER_UPDATE");
this:RegisterEvent("PARTY_MEMBER_DISABLE");
this:RegisterEvent("PARTY_MEMBER_ENABLE");
this:RegisterEvent("UNIT_PET");
diff --git a/HealBot_View_Layout.lua b/HealBot_View_Layout.lua
index b174810..e6579c1 100644
--- a/HealBot_View_Layout.lua
+++ b/HealBot_View_Layout.lua
@@ -402,6 +402,7 @@ function HealBot_Action_SetHealButton(index, unit)
return nil
end
local button = getglobal("HealBot_Action_HealUnit" .. index);
+ if not button then return nil end
button.unit = unit;
if unit then
table.insert(HealBot_Action_HealButtons, button);
@@ -466,10 +467,7 @@ function HealBot_Action_PartyChanged()
local checked_end = 0;
headerno = 0;
- for j = 1, 41 do
- HealBot_Action_SetHealButton(j, nil);
- end
- for j = 51, 60 do
+ for j = 1, 100 do
HealBot_Action_SetHealButton(j, nil);
end
HealBot_Action_SetHealButton();
diff --git a/__pycache__/patch_xml.cpython-314.pyc b/__pycache__/patch_xml.cpython-314.pyc
new file mode 100644
index 0000000..085704b
Binary files /dev/null and b/__pycache__/patch_xml.cpython-314.pyc differ
diff --git a/patch_xml.py b/patch_xml.py
new file mode 100644
index 0000000..302abfa
--- /dev/null
+++ b/patch_xml.py
@@ -0,0 +1,23 @@
+import re
+
+with open('HealBot_Action.xml', 'r') as f:
+ content = f.read()
+
+buttons_42_50 = '\n'.join([f' ' for i in range(42, 51)])
+buttons_61_100 = '\n'.join([f' ' for i in range(61, 101)])
+
+content = re.sub(
+ r'(