Necrotic wake weapons

This commit is contained in:
Tercio Jose
2021-10-12 21:35:03 -03:00
parent 12d31f2b29
commit d87611cfc5
4 changed files with 96 additions and 41 deletions
+8 -1
View File
@@ -242,11 +242,18 @@
novo_objeto.displayName = nome
end
end
if (_detalhes.all_players_are_group or _detalhes.immersion_enabled) then
novo_objeto.grupo = true
end
--special spells to add into the group view
local spellId = Details.NoOverallSpellNames[novo_objeto.nome]
if (spellId) then
novo_objeto.grupo = true
novo_objeto.spellicon = GetSpellTexture(spellId)
end
if ((_bit_band (flag, IS_GROUP_OBJECT) ~= 0 and novo_objeto.classe ~= "UNKNOW" and novo_objeto.classe ~= "UNGROUPPLAYER") or _detalhes:IsInCache (serial)) then
novo_objeto.grupo = true
+50 -11
View File
@@ -13,7 +13,6 @@
local _UnitAffectingCombat = UnitAffectingCombat --wow api local
local _UnitHealth = UnitHealth --wow api local
local _UnitHealthMax = UnitHealthMax --wow api local
local _UnitIsFeignDeath = UnitIsFeignDeath --wow api local
local _UnitGUID = UnitGUID --wow api local
local _IsInRaid = IsInRaid --wow api local
local _IsInGroup = IsInGroup --wow api local
@@ -150,7 +149,7 @@
army = {},
apoc = {},
}
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--> constants
local container_misc = _detalhes.container_type.CONTAINER_MISC_CLASS
@@ -237,11 +236,11 @@
[228361] = 228360, --shadow priest void erruption
}
end
local bitfield_debuffs_ids = _detalhes.BitfieldSwapDebuffsIDs
local bitfield_debuffs = {}
for _, spellid in ipairs (bitfield_debuffs_ids) do
local spellname = GetSpellInfo (spellid)
local spellname = GetSpellInfo(spellid)
if (spellname) then
bitfield_debuffs [spellname] = true
else
@@ -325,8 +324,7 @@
ignore_spikeballs = 0,
}
local NPCID_KELTHUZAD_FROSTBOUNDDEVOTED = 176703
local NPCID_KELTHUZAD_ADDMIMICPLAYERS = 176605
local NPCID_KELTHUZAD_ADDMIMICPLAYERS = 176605
--> damage spells to ignore
local damage_spells_to_ignore = {
@@ -399,6 +397,36 @@
local _auto_regen_thread
local AUTO_REGEN_PRECISION = 2
--> store the spells which cannot be added to overall data
local no_overall_spells = {
[344421] = true,
[328351] = true,
[328406] = true,
[328128] = true,
[333641] = true,
[333227] = true,
[333250] = true,
--[] = true,
}
--expose the table for scripts modify it
Details.NoOverallSpells = no_overall_spells
--create a table with spell names which need to be converted into actors
local sanguineHealSpellName = GetSpellInfo(SPELLID_SANGUINE_HEAL)
Details.NoOverallSpellNames = {
[sanguineHealSpellName] = true
}
for spellId in pairs(no_overall_spells) do
local spellName = GetSpellInfo(spellId)
if (spellName) then
Details.NoOverallSpellNames[spellName] = spellId
end
end
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--> internal functions
@@ -549,6 +577,13 @@
-- return
--end
--sanguine ichor mythic dungeon affix (heal enemies)
if (no_overall_spells[spellid]) then
who_name = GetSpellInfo(spellid)
who_flags = 0x518
who_serial = "Creature-0-3134-2289-28065-" .. spellid .. "-000164C698"
end
------------------------------------------------------------------------------------------------
--> spell reflection
if (who_serial == alvo_serial and not reflection_ignore[spellid]) then --~reflect
@@ -634,7 +669,7 @@
return
end
if (npcId == NPCID_KELTHUZAD_FROSTBOUNDDEVOTED) then --remove on 10.0
if (npcId == 176703) then --remove on 10.0 --kelthuzad
alvo_flags = 0xa48
end
@@ -728,7 +763,7 @@
return
end
if (npcId == NPCID_KELTHUZAD_FROSTBOUNDDEVOTED) then --remove on 10.0
if (npcId == 176703) then --remove on 10.0 --kelthuzad
who_flags = 0xa48
end
if (npcId == NPCID_KELTHUZAD_ADDMIMICPLAYERS) then --remove on 10.0
@@ -853,7 +888,11 @@
if (not este_jogador) then
return
end
if (no_overall_spells[spellid]) then
este_jogador.grupo = true
end
--> his target
local jogador_alvo, alvo_dono = damage_cache [alvo_serial] or damage_cache_pets [alvo_serial] or damage_cache [alvo_name], damage_cache_petsOwners [alvo_serial]
@@ -1742,7 +1781,7 @@
local npcId = _tonumber(_select (6, _strsplit ("-", alvo_serial)) or 0)
--kel'thuzad encounter --remove on 10.0
if (npcId == NPCID_KELTHUZAD_FROSTBOUNDDEVOTED) then
if (npcId == 176703) then --kelthuzad
return
elseif (spellid == 358108) then --Restore Health
return
@@ -4101,7 +4140,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
_current_combat.frags_need_refresh = true
--> player death
elseif (not _UnitIsFeignDeath (alvo_name)) then
elseif (not UnitIsFeignDeath (alvo_name)) then
if (
--> player in your group
(_bit_band (alvo_flags, AFFILIATION_GROUP) ~= 0 or (damageActor and damageActor.grupo)) and
+16 -13
View File
@@ -246,18 +246,18 @@ function _detalhes:AbreJanelaInfo (jogador, from_att_change, refresh, ShiftKeyDo
Details:UpdateBreakdownPlayerList()
--check which tab was selected and reopen that tab
if (info.selectedTab == "Summary") then
return jogador:MontaInfo()
else
--open tab
for index = 1, #_detalhes.player_details_tabs do
local tab = _detalhes.player_details_tabs [index]
if (tab:condition (info.jogador, info.atributo, info.sub_atributo)) then
if (tab.tabname == info.selectedTab) then
--_detalhes.player_details_tabs [index]:Click()
--_detalhes.player_details_tabs [index].onclick()
_detalhes.player_details_tabs [index]:OnShowFunc()
end
-- if (info.selectedTab == "Summary") then
-- return jogador:MontaInfo()
-- else
--open tab
for index = 1, #_detalhes.player_details_tabs do
local tab = _detalhes.player_details_tabs [index]
if (tab:condition (info.jogador, info.atributo, info.sub_atributo)) then
if (tab.tabname == info.selectedTab) then
--_detalhes.player_details_tabs [index]:Click()
--_detalhes.player_details_tabs [index].onclick()
_detalhes.player_details_tabs [index]:OnShowFunc()
end
end
end
@@ -1493,8 +1493,11 @@ local elvui_skin = function()
--class icon
window.SetClassIcon = function (player, class)
if (player.spellicon) then
window.classe_icone:SetTexture(player.spellicon)
window.classe_icone:SetTexCoord(.1, .9, .1, .9)
if (player.spec) then
elseif (player.spec) then
window.classe_icone:SetTexture ([[Interface\AddOns\Details\images\spec_icons_normal_alpha]])
window.classe_icone:SetTexCoord (_unpack (_detalhes.class_specs_coords [player.spec]))
--esta_barra.icone_classe:SetVertexColor (1, 1, 1)
+22 -16
View File
@@ -58,9 +58,8 @@
self.specIcon:SetBlendMode("BLEND")
self.roleIcon:SetBlendMode("BLEND")
end
local updatePlayerLine = function(self, topResult)
local updatePlayerLine = function(self, topResult)
local playerSelected = Details:GetPlayerObjectFromBreakdownWindow()
if (playerSelected and playerSelected == self.playerObject) then
self:SetBackdropColor(unpack(scrollbox_line_backdrop_color_selected))
@@ -69,22 +68,29 @@
self:SetBackdropColor(unpack(scrollbox_line_backdrop_color))
self.isSelected = nil
end
--adjust the player icon
local specIcon, L, R, T, B = Details:GetSpecIcon(self.playerObject.spec, false)
local specId, specName, specDescription, specIconId, specRole, specClass
if (specIcon) then
self.specIcon:SetTexture(specIcon)
self.specIcon:SetTexCoord(L, R, T, B)
if (DetailsFramework.IsTimewalkWoW()) then
specRole = "NONE"
else
specId, specName, specDescription, specIconId, specRole, specClass = _G.GetSpecializationInfoByID(self.playerObject.spec)
end
local specRole
--adjust the player icon
if (self.playerObject.spellicon) then
self.specIcon:SetTexture(self.playerObject.spellicon)
self.specIcon:SetTexCoord(.1, .9, .1, .9)
else
self.specIcon:SetTexture(nil)
local specIcon, L, R, T, B = Details:GetSpecIcon(self.playerObject.spec, false)
local specId, specName, specDescription, specIconId, specClass
if (specIcon) then
self.specIcon:SetTexture(specIcon)
self.specIcon:SetTexCoord(L, R, T, B)
if (DetailsFramework.IsTimewalkWoW()) then
specRole = "NONE"
else
specId, specName, specDescription, specIconId, specRole, specClass = _G.GetSpecializationInfoByID(self.playerObject.spec)
end
else
self.specIcon:SetTexture(nil)
end
end
--adjust the role icon