local M = {};
OmaRFIndicators.Class["DRUID"] = M;
M.Auras = {
- [33763] = "TOPLEFT", -- Lifebloom
- [774] = "TR1", -- Rejuvenation
- [102352] = "TR2", -- Cenarion Ward (102351 is the 30-sec buff before the HoT)
- [207386] = "TR3", -- Spring Blossoms (207385 is the talent)
- [155777] = "TR3", -- Germination (either Spring Blossoms or this taken)
- [8936] = "TR4", -- Regrowth
- [200389] = "TR5", -- Cultivation
+ ["Lifebloom"] = "TOPLEFT",
+ ["Rejuvenation"] = "TR1",
+ ["Cenarion Ward"] = "TR2",
+ ["Spring Blossoms"] = "TR3",
+ ["Rejuvenation (Germination)"] = "TR3",
+ ["Regrowth"] = "TR4",
+ ["Cultivation"] = "TR5",
}
function M.Setup(base)
local updaters = {};
local updating = {};
-local auraFilters = {"HELPFUL", "HARMFUL"};
local M = {};
OmaRFIndicators = M;
local majorPos = 1;
local alert = false; -- color the whole bar
local current = GetTime();
- for _, filter in ipairs(auraFilters) do
- local i = 1;
- while true do
- name, _, icon, count, _, _, expires, caster, _, _, id = UnitAura(unit, i, filter);
- if not id then break end
- local pos = watchedAuras[id] or watchedAuras[name];
- if pos and caster == "player" then
- needUpdate = showInd(frame.inds[pos], expires, current, count, icon) or needUpdate;
- showInds = true;
- end
- local major = majorAuras[id] or majorAuras[name];
- if major and majorPos <= 3 then
- needUpdate = showInd(frame.majors[majorPos], expires, current, count, icon) or needUpdate;
- if major.bar then alert = true end
- showMajors = true;
- majorPos = majorPos + 1;
- end
- i = i + 1;
+ for spell, pos in pairs(watchedAuras) do
+ name, _, icon, count, _, _, expires = UnitAura(unit, spell, nil, "PLAYER HELPFUL");
+ if name then
+ needUpdate = showInd(frame.inds[pos], expires, current, count, icon) or needUpdate;
+ showInds = true;
+ end
+ end
+
+ local i = 1;
+ while true do
+ name, _, icon, count, _, _, expires, caster, _, _, id = UnitAura(unit, i, "HARMFUL");
+ if not id or majorPos > 3 then break end
+ local major = majorAuras[id] or majorAuras[name];
+ if major then
+ needUpdate = showInd(frame.majors[majorPos], expires, current, count, icon) or needUpdate;
+ if major.bar then alert = true end
+ showMajors = true;
+ majorPos = majorPos + 1;
end
+ i = i + 1;
end
+
if showInds or showMajors then
frame.indBase:Show();
frame.majorBase:Show();
local M = {};
OmaRFIndicators.Class["PALADIN"] = M;
M.Auras = {
- [53563] = "TOPRIGHT", -- Beacon of Light
- [156910] = "TOPRIGHT", -- Beacon of Faith
- [200025] = "TOPRIGHT", -- Beacon of Virtue
- [200654] = "BOTTOMLEFT", -- Tyr's Deliverance
+ ["Beacon of Light"] = "TOPRIGHT",
+ ["Beacon of Faith"] = "TOPRIGHT",
+ ["Beacon of Virtue"] = "TOPRIGHT",
+ ["Tyr's Deliverance"] = "BOTTOMLEFT",
}
function M.Setup(base)