I started playing again a week ago and I got tired of not seeing anyones heals as they have all moved away from RDX. So I updated the libHealComm integration, enjoy. It should work problem free. Replace all code in LibHealcomm_Integration.lua with the code below.
Code:
-- LibHealcomm_Integration.lua
--------------------------------------------------------------------
-- LibHealComm-4.0 Intergration
-- OpenRDX - Xenios
--------------------------------------------------------------------
local HealComm;
local HealMask;
local function InitAceHealComm()
local RDXHealComm = {};
function RDXHealComm:HealComm_HealStarted(event, casterGUID, spellID, healType, endTime, ...)
self:UpdateHeals(casterGUID, healType, endTime, ...)
end
function RDXHealComm:HealComm_HealDelayed(event, casterGUID, spellID, healType, endTime, ...)
self:UpdateHeals(casterGUID, healType, endTime, ...)
end
function RDXHealComm:HealComm_HealUpdated(event, casterGUID, spellID, healType, endTime, ...)
self:UpdateHeals(casterGUID, healType, endTime, ...)
end
function RDXHealComm:HealComm_HealStopped(event, casterGUID, spellID, healType, endTime, ...)
local origin = RDX.GetUnitByGuid(casterGUID);
if (not origin) or (not origin:IsValid()) then return; end
for i=1,select('#', ...) do
local targetGUID = select(i, ...);
local targetUnit = RDX.GetUnitByGuid(targetGUID);
if targetUnit then
targetUnit:_StopIncHeal(origin);
end
end
end
function RDXHealComm:UpdateHeals(casterGUID, healType, endTime, ...)
local origin = RDX.GetUnitByGuid(casterGUID);
if (not origin) or (not origin:IsValid()) then return; end
for i=1,select('#', ...) do
local targetGUID = select(i, ...);
local targetUnit = RDX.GetUnitByGuid(targetGUID);
local incoming=HealComm:GetHealAmount(targetGUID, HealMask, nil, casterGUID)
if incoming and incoming > 0 then
local healSize = incoming * HealComm:GetHealModifier(targetGUID);
if targetUnit then
targetUnit:_AddIncHeal(origin, healSize, endTime, nil);
end
end
end
end
HealComm.RegisterCallback(RDXHealComm, "HealComm_HealStarted");
HealComm.RegisterCallback(RDXHealComm, "HealComm_HealDelayed");
HealComm.RegisterCallback(RDXHealComm, "HealComm_HealUpdated");
HealComm.RegisterCallback(RDXHealComm, "HealComm_HealStopped");
RDX.print("LibHealComm-4.0 integration enabled.");
end
-----------------------------------------------------------
-- INIT
-----------------------------------------------------------
RDXEvents:Bind("INIT_POST_VARIABLES_LOADED", nil, function()
if not LibStub then return; end
HealComm = LibStub:GetLibrary("LibHealComm-4.0", true);
HealMask=bit.bor(HealComm.BOMB_HEALS,HealComm.CASTED_HEALS)
if (not HealComm) then return; end
RDX.print(i18n("LibHealComm-4.0 integration activated."));
InitAceHealComm();
end);