Commit f452c996 authored by Ivaria's avatar Ivaria
Browse files

Added new bouquet validator 'Has Summon'. Added new default bouquet 'Summon...

Added new bouquet validator 'Has Summon'. Added new default bouquet 'Summon Status Icon'. Added new default bouquet 'Role & Summon Status Icon'. Now assigned to the 'Special Dot' indicator by default.
parent 3aeb2e80
......@@ -223,7 +223,12 @@ local function VUHDO_customizeHotIcons(aButton, aHotName, aRest, aTimes, anIcon,
end
if anIcon and (sIsHotShowIcon or aColor) then
tIcon:SetTexture(anIcon);
if VUHDO_ATLAS_TEXTURES[anIcon] then
tIcon:SetAtlas(anIcon);
else
tIcon:SetTexture(anIcon);
end
end
tIcon:SetTexCoord(aClipL or sClipL, aClipR or sClipR, aClipT or sClipT, aClipB or sClipB);
......@@ -645,9 +650,16 @@ function VUHDO_swiftmendIndicatorBouquetCallback(aUnit, anIsActive, anIcon, aTim
for _, tButton in pairs(VUHDO_getUnitButtonsSafe(aUnit)) do
if anIsActive and aColor then
tIcon = VUHDO_getBarRoleIcon(tButton, 51);
tIcon:SetTexture(anIcon);
if VUHDO_ATLAS_TEXTURES[anIcon] then
tIcon:SetAtlas(anIcon);
else
tIcon:SetTexture(anIcon);
end
tIcon:SetVertexColor(VUHDO_backColor(aColor));
tIcon:SetTexCoord(aClipL or 0, aClipR or 1, aClipT or 0, aClipB or 1);
tIcon:Show();
else
VUHDO_getBarRoleIcon(tButton, 51):Hide();
......
......@@ -748,6 +748,27 @@ end
--
local function VUHDO_hasSummonIconValidator(anInfo, _)
if C_IncomingSummon.HasIncomingSummon(anInfo["unit"]) then
local status = C_IncomingSummon.IncomingSummonStatus(anInfo["unit"]);
if (status == Enum.SummonStatus.Pending) then
return true, "Raid-Icon-SummonPending", -1, -1, -1, nil, nil, 0, 1, 0, 1;
elseif (status == Enum.SummonStatus.Accepted) then
return true, "Raid-Icon-SummonAccepted", -1, -1, -1, nil, nil, 0, 1, 0, 1;
elseif (status == Enum.SummonStatus.Declined) then
return true, "Raid-Icon-SummonDeclined", -1, -1, -1, nil, nil, 0, 1, 0, 1;
else
return false, nil, -1, -1, -1;
end
else
return false, nil, -1, -1, -1;
end
end
--
local function VUHDO_classIconValidator(anInfo, _)
if CLASS_ICON_TCOORDS[anInfo["class"]] then
......@@ -1596,6 +1617,13 @@ VUHDO_BOUQUET_BUFFS_SPECIAL = {
["interests"] = { },
},
["HAS_SUMMON_ICON"] = {
["displayName"] = VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON,
["validator"] = VUHDO_hasSummonIconValidator,
["no_color"] = true,
["interests"] = { VUHDO_UPDATE_SUMMON },
},
["CLASS_ICON"] = {
["displayName"] = VUHDO_I18N_BOUQUET_CLASS_ICON,
["validator"] = VUHDO_classIconValidator,
......
......@@ -278,6 +278,7 @@ VUHDO_UPDATE_MINOR_FLAGS = 34;
VUHDO_UPDATE_CHI = 35;
VUHDO_UPDATE_SHIELD = 36;
VUHDO_UPDATE_SPELL_TRACE = 37;
VUHDO_UPDATE_SUMMON = 38;
......
......@@ -638,6 +638,39 @@ VUHDO_DEFAULT_BAR_MANA_HEALER_ONLY = {
}
--
VUHDO_DEFAULT_ICON_HAS_SUMMON = {
[VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON] = {
{
["name"] = "HAS_SUMMON_ICON",
["mine"] = true, ["icon"] = 1,
["color"] = VUHDO_makeFullColorForBouquet(1, 1, 1, 1, 1, 1, 1, 1),
["custom"] = { [1] = 3, ["radio"] = 2, ["bright"] = 1 },
},
},
}
--
VUHDO_DEFAULT_ICON_ROLE_AND_SUMMON = {
[VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON] = {
{
["name"] = "HAS_SUMMON_ICON",
["mine"] = true, ["icon"] = 1,
["color"] = VUHDO_makeFullColorForBouquet(1, 1, 1, 1, 1, 1, 1, 1),
["custom"] = { [1] = 3, ["radio"] = 2, ["bright"] = 1 },
},
{
["name"] = "ROLE_ICON",
["mine"] = true, ["icon"] = 1,
["color"] = VUHDO_makeFullColorForBouquet(1, 1, 1, 1, 1, 1, 1, 1),
["custom"] = { [1] = 3, ["radio"] = 2, ["bright"] = 1 },
},
},
}
--
VUHDO_DEFAULT_INDICATOR_CONFIG = {
......@@ -1391,6 +1424,18 @@ function VUHDO_loadDefaultBouquets()
end
VUHDO_DEFAULT_BAR_MANA_HEALER_ONLY = nil;
if VUHDO_BOUQUETS["VERSION"] < 19 then
VUHDO_BOUQUETS["VERSION"] = 19;
VUHDO_addDefaultBouquet(VUHDO_DEFAULT_ICON_HAS_SUMMON);
end
VUHDO_DEFAULT_ICON_HAS_SUMMON = nil;
if VUHDO_BOUQUETS["VERSION"] < 20 then
VUHDO_BOUQUETS["VERSION"] = 20;
VUHDO_addDefaultBouquet(VUHDO_DEFAULT_ICON_ROLE_AND_SUMMON);
end
VUHDO_DEFAULT_ICON_ROLE_AND_SUMMON = nil;
VUHDO_buildGenericHealthBarBouquet();
VUHDO_buildGenericTargetHealthBouquet();
......@@ -1398,7 +1443,7 @@ function VUHDO_loadDefaultBouquets()
VUHDO_INDICATOR_CONFIG = VUHDO_decompressOrCopy(VUHDO_DEFAULT_INDICATOR_CONFIG);
VUHDO_INDICATOR_CONFIG["BOUQUETS"]["SWIFTMEND_INDICATOR"]
= "DRUID" == VUHDO_PLAYER_CLASS and VUHDO_I18N_DEF_BOUQUET_SWIFTMENDABLE or VUHDO_I18N_DEF_ROLE_ICON;
= "DRUID" == VUHDO_PLAYER_CLASS and VUHDO_I18N_DEF_BOUQUET_SWIFTMENDABLE or VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON;
end
if not VUHDO_INDICATOR_CONFIG["CUSTOM"]["HOT_BARS"] then
......
......@@ -670,6 +670,11 @@ function VUHDO_OnEvent(_, anEvent, anArg1, anArg2, anArg3, anArg4, anArg5, anArg
elseif "PET_BATTLE_CLOSE" == anEvent then
VUHDO_setPetBattle(false);
elseif "INCOMING_SUMMON_CHANGED" == anEvent then
if ((VUHDO_RAID or tEmptyRaid)[anArg1] ~= nil) then
VUHDO_updateBouquetsForEvent(anArg1, VUHDO_UPDATE_SUMMON);
end
else
VUHDO_Msg("Error: Unexpected event: " .. anEvent);
end
......@@ -1476,6 +1481,7 @@ local VUHDO_ALL_EVENTS = {
"PET_BATTLE_CLOSE", "PET_BATTLE_OPENING_START",
"PLAYER_REGEN_ENABLED", "PLAYER_REGEN_DISABLED",
"UNIT_ABSORB_AMOUNT_CHANGED",
"INCOMING_SUMMON_CHANGED",
};
......
......@@ -70,3 +70,13 @@ VUHDO_CUSTOM_ICONS = {
{ VUHDO_I18N_CUSTOM_ICON_FOUR_THIRDS, "Interface\\AddOns\\VuhDo\\Images\\third_four" }, -- 13
{ VUHDO_I18N_CUSTOM_ICON_FIVE_THIRDS, "Interface\\AddOns\\VuhDo\\Images\\third_five" }, -- 14
};
--
VUHDO_ATLAS_TEXTURES = {
["Raid-Icon-SummonPending"] = true,
["Raid-Icon-SummonAccepted"] = true,
["Raid-Icon-SummonDeclined"] = true,
};
......@@ -450,3 +450,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -459,3 +459,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -460,3 +460,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -458,3 +458,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -524,3 +524,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -452,3 +452,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -452,3 +452,8 @@ VUHDO_I18N_DEF_TRAIL_OF_LIGHT = "Trail of Light";
VUHDO_I18N_BOUQUET_STATUS_MANA_HEALER_ONLY = "Statusbar: Mana % (Healer Only)";
VUHDO_I18N_DEF_BOUQUET_BAR_MANA_HEALER_ONLY = "Manabars: Mana (Healer Only)";
-- 3.98
VUHDO_I18N_BOUQUET_HAS_SUMMON_ICON = "Icon: Has Summon";
VUHDO_I18N_DEF_BOUQUET_HAS_SUMMON = "Summon Status Icon";
VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON = "Role & Summon Status Icon";
......@@ -877,7 +877,7 @@ local VUHDO_DEFAULT_PROFILES = {
["BAR_BORDER"] = VUHDO_I18N_DEF_BOUQUET_BORDER_MULTI_AGGRO,
["HEALTH_BAR"] = VUHDO_I18N_DEF_BOUQUET_BAR_HEALTH,
["DAMAGE_FLASH_BAR"] = "",
["SWIFTMEND_INDICATOR"] = VUHDO_I18N_DEF_ROLE_ICON,
["SWIFTMEND_INDICATOR"] = VUHDO_I18N_DEF_BOUQUET_ROLE_AND_SUMMON,
},
},
["ORIGINATOR_TOON"] = "Izaak",
......
......@@ -17,6 +17,10 @@ Improvements:
-- Added Diseased Lasher Decaying Mind debuff absorb tracking
-- Added Priest Luminous Barrier absorb tracking
-- Added more default custom debuffs for Uldir raid encounters
-- Added new bouquet validator 'Has Summon'
-- Added new default bouquet 'Summon Status Icon'
-- Added new default bouquet 'Role & Summon Status Icon'
-- Now assigned to the 'Special Dot' indicator by default
--------------------------------------------------------------
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment