General Fixes

- Added Phial of Serenity from Kyrians to Potion Usage.
- Merged all warriors whirlwind.
- Cleanup on old cooldowns.
- Added Rake and Binding Shot to Crowd Control.
- Fixed some cases of DeathLog not showing healing.
This commit is contained in:
Tercio Jose
2021-01-01 14:28:27 -03:00
parent 38f66a24de
commit bda2829746
8 changed files with 47 additions and 234 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
local dversion = 224
local dversion = 227
local major, minor = "DetailsFramework-1.0", dversion
local DF, oldminor = LibStub:NewLibrary (major, minor)
+4 -1
View File
@@ -768,13 +768,16 @@ DF.CrowdControlSpells = {
[50259] = "DRUID", --Dazed (from Wild Charge)
[209753] = "DRUID", --Cyclone (from pvp talent)
[33786] = "DRUID", --Cyclone (from pvp talent - resto druid)
[155722] = "DRUID", --Rake
[163505] = "DRUID", --Rake
[127797] = "DRUID", --Ursol's Vortex
[3355] = "HUNTER", --Freezing Trap / Diamond Ice (from pvp talent)
[19577] = "HUNTER", --Intimidation
[190927] = "HUNTER", --Harpoon
[162480] = "HUNTER", --Steel Trap
[24394] = "HUNTER", --Intimidation
[117405] = "HUNTER", --Binding Shot (trigger)
[117526] = "HUNTER", --Binding Shot (triggered)
[119381] = "MONK", --Leg Sweep
[115078] = "MONK", --Paralysis
+1
View File
@@ -504,6 +504,7 @@ do
[250872] = true, --Coastal Rejuvenation Potion
[6262] = true, --Warlock's Healthstone
[301308] = true, --Abyssal Healing Potion
[323436] = true --Phial of Serenity from Kyrians
}
--[[global]] DETAILS_HEALTH_POTION_ID = 250870
--[[global]] DETAILS_REJU_POTION_ID = 250872
+11 -44
View File
@@ -199,6 +199,11 @@
[217957] = 5308, --warrior execute
[224253] = 5308, --warrior execute
[199850] = 199658, --warrior whirlwind
[190411] = 199658, --warrior whirlwind
[44949] = 199658, --warrior whirlwind
[199667] = 199658, --warrior whirlwind
[199852] = 199658, --warrior whirlwind
[199851] = 199658, --warrior whirlwind
[222031] = 199547, --deamonhunter ChaosStrike
[200685] = 199552, --deamonhunter Blade Dance
@@ -319,9 +324,6 @@
local _hook_battleress_container = _detalhes.hooks ["HOOK_BATTLERESS"]
local _hook_interrupt_container = _detalhes.hooks ["HOOK_INTERRUPT"]
--> G'Huun blood shield
local _track_ghuun_bloodshield --REMOVE ON 9.0 PATCH
--> encoutner rules
local ignored_npc_ids = {
--amorphous cyst g'huun Uldir - ignore damage done to this npcs
@@ -2370,16 +2372,6 @@ SPELL_HEAL,Player-3209-0A79112C,"Symantec-Azralon",0x511,0x0,Player-3209-065BAED
if (overheal > 0) then
return parser:heal (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, alvo_flags2, spellid, spellname, nil, 0, _math_ceil (overheal), 0, 0, nil, true)
end
--local absorb = escudo [alvo_name][spellid][who_name] - amount
--local overheal = amount - absorb
--escudo [alvo_name][spellid][who_name] = amount
--if (absorb > 0) then
--return parser:heal (token, time, who_serial, who_name, who_flags, alvo_serial, alvo_name, alvo_flags, spellid, spellname, nil, _math_ceil (absorb), _math_ceil (overheal), 0, 0, nil, true)
--end
else
-- escudo no encontrado :(
end
------------------------------------------------------------------------------------------------
@@ -2515,8 +2507,7 @@ SPELL_HEAL,Player-3209-0A79112C,"Symantec-Azralon",0x511,0x0,Player-3209-065BAED
if (absorb_spell_list [spellid] and _recording_healing) then
if (escudo [alvo_name] and escudo [alvo_name][spellid] and escudo [alvo_name][spellid][who_name]) then
if (amount) then
-- o amount o que sobrou do escudo
-- o amount o que sobrou do escudo
local overheal = escudo [alvo_name][spellid][who_name]
escudo [alvo_name][spellid][who_name] = 0
@@ -2528,9 +2519,9 @@ SPELL_HEAL,Player-3209-0A79112C,"Symantec-Azralon",0x511,0x0,Player-3209-065BAED
return
end
end
escudo [alvo_name][spellid][who_name] = 0
end
--end
------------------------------------------------------------------------------------------------
--> recording buffs
@@ -4414,14 +4405,6 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
end
end
--> wipe encounter data if changing map while the encounter table is poiting to argus encounter ~REMOVE on 8.0
if (_detalhes.encounter_table and _detalhes.encounter_table.id == 2092) then
_table_wipe (_detalhes.encounter_table)
if (_detalhes.debug) then
_detalhes:Msg ("(debug) map changed with encounter table pointing to argus encounter, wiping the encounter table.")
end
end
_detalhes.time_type = _detalhes.time_type_original
if (_detalhes.debug) then
@@ -4551,25 +4534,12 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
end
_current_encounter_id = encounterID
Details:Msg("encounter started:", encounterID, encounterName)
_detalhes.boss1_health_percent = 1
if (_current_encounter_id == 2122) then --g'huun --REMOVE ON 9,0 PATCH
C_Timer.After (1, function()
local boss1GUID = UnitGUID ("boss1")
if (boss1GUID) then
local npcid = _select (6, _strsplit ("-", boss1GUID))
if (npcid and npcid == "132998") then --is g'huun?
--print ("Details! Ignoring now damage on G'huun!")
_track_ghuun_bloodshield = true
end
end
end)
end
local dbm_mod, dbm_time = _detalhes.encounter_table.DBM_Mod, _detalhes.encounter_table.DBM_ModTime
_table_wipe (_detalhes.encounter_table)
local encounterID, encounterName, difficultyID, raidSize = _select (1, ...)
local zoneName, _, _, _, _, _, _, zoneMapID = _GetInstanceInfo()
--print (encounterID, encounterName, difficultyID, raidSize)
@@ -4624,21 +4594,18 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
end
_current_encounter_id = nil
_track_ghuun_bloodshield = nil --REMOVE ON PATCH 9.0
local _, instanceType = GetInstanceInfo() --> let's make sure it isn't a dungeon
if (_detalhes.zone_type == "party" or instanceType == "party") then
if (_detalhes.debug) then
_detalhes:Msg ("(debug) the zone type is 'party', ignoring ENCOUNTER_END.")
end
--return --rnu encounter end for dungeons as well
end
local encounterID, encounterName, difficultyID, raidSize, endStatus = _select (1, ...)
--_detalhes:Msg ("encounter against|cFFFFC000", encounterName, "|rended.")
if (not _detalhes.encounter_table.start) then
Details:Msg("encounter table without start time.")
return
end
@@ -4646,7 +4613,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
if (_detalhes.latest_ENCOUNTER_END + 15 > _GetTime()) then
return
end
--_detalhes.latest_ENCOUNTER_END = _detalhes._tempo
_detalhes.latest_ENCOUNTER_END = _GetTime()
_detalhes.encounter_table ["end"] = _GetTime() -- 0.351
@@ -4671,7 +4638,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
_detalhes:SendEvent ("COMBAT_ENCOUNTER_END", nil, ...)
_table_wipe (_detalhes.encounter_table)
_table_wipe (bargastBuffs)
_table_wipe (bargastBuffs) --remove on 10.0
return true
end
-11
View File
@@ -883,17 +883,6 @@ end
end
end
end
--> don't leave the combat if is in the argus encounter ~REMOVE on 8.0
--[=[
if (_detalhes.encounter_table and _detalhes.encounter_table.id == 2092) then
if (_detalhes.debug) then
_detalhes:Msg ("(debug) in argus encounter, cannot leave the combat.")
end
return true
end
--]=]
--mythic dungeon test
if (_detalhes.MythicPlus.Started and _detalhes.mythic_plus.always_in_combat) then
+24 -25
View File
@@ -1848,21 +1848,21 @@ function gump:CriaJanelaInfo()
}
_detalhes:CreatePlayerDetailsTab ("Summary", Loc ["STRING_SPELLS"], --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
function (tabOBject, playerObject) --[3] condition
if (playerObject) then
return true
else
return false
end
end,
nil, --[3] fill function
function() --[4] onclick
nil, --[4] fill function
function() --[5] onclick
for _, tab in _ipairs (_detalhes.player_details_tabs) do
tab.frame:Hide()
end
end,
nil, --[5] oncreate
iconTableSummary --icon table
nil, --[6] oncreate
iconTableSummary --[7] icon table
)
--> search key: ~avoidance --> begining of avoidance tab
@@ -2569,8 +2569,9 @@ function gump:CriaJanelaInfo()
height = 16,
}
_detalhes:CreatePlayerDetailsTab ("Avoidance", Loc ["STRING_INFO_TAB_AVOIDANCE"], --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
_detalhes:CreatePlayerDetailsTab ("Avoidance", --[1] tab name
Loc ["STRING_INFO_TAB_AVOIDANCE"], --[2] localized name
function (tabOBject, playerObject) --[3] condition
if (playerObject.isTank) then
return true
else
@@ -2578,12 +2579,12 @@ function gump:CriaJanelaInfo()
end
end,
avoidance_fill, --[3] fill function
avoidance_fill, --[4] fill function
nil, --[4] onclick
nil, --[5] onclick
avoidance_create, --[5] oncreate
iconTableAvoidance
avoidance_create, --[6] oncreate
iconTableAvoidance --[7] icon
)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
@@ -2803,7 +2804,6 @@ function gump:CriaJanelaInfo()
end
local auras_tab_fill = function (tab, player, combat)
local miscActor = combat:GetActor (4, player:name())
local combatTime = combat:GetCombatTime()
@@ -2841,16 +2841,17 @@ function gump:CriaJanelaInfo()
height = 16,
}
_detalhes:CreatePlayerDetailsTab ("Auras", "Auras", --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
_detalhes:CreatePlayerDetailsTab ("Auras", --[1] tab name
"Auras", --[2] localized name
function (tabOBject, playerObject) --[3] condition
return true
end,
auras_tab_fill, --[3] fill function
auras_tab_fill, --[4] fill function
nil, --[4] onclick
nil, --[5] onclick
auras_tab_create, --[5] oncreate
auras_tab_create, --[6] oncreate
iconTableAuras --icon table
)
@@ -4771,8 +4772,9 @@ function gump:CriaJanelaInfo()
height = 14,
}
_detalhes:CreatePlayerDetailsTab ("Compare", Loc ["STRING_INFO_TAB_COMPARISON"], --[1] tab name [2] localized name
function (tabOBject, playerObject) --[2] condition
_detalhes:CreatePlayerDetailsTab ("Compare", --[1] tab name
Loc ["STRING_INFO_TAB_COMPARISON"], --[2] localized name
function (tabOBject, playerObject) --[3] condition
if (info.atributo > 2) then
return false
@@ -4845,20 +4847,17 @@ function gump:CriaJanelaInfo()
return true --debug?
end,
compare_fill, --[3] fill function
compare_fill, --[4] fill function
nil, --[4] onclick
nil, --[5] onclick
compare_create, --[5] oncreate
compare_create, --[6] oncreate
iconTableCompare --icon table
)
-- ~compare ~newcompare
-- ~compare
-- ~tab ~tabs
function este_gump:ShowTabs()
-146
View File
@@ -2117,86 +2117,6 @@ do
}
-- ~cooldown 1 self
_detalhes.DefensiveCooldownSpellsNoBuff = {
[20594] = {120, 8, 1}, --racial stoneform
--[6262] = {120, 1, 1}, --healthstone
--["DEATHKNIGHT"] = {},
[48707] = {45, 5, 1}, -- Anti-Magic Shell
[48743] = {120, 0, 1}, --Death Pact
[51052] = {120, 3, 0}, --Anti-Magic Zone
[152279] = {120, 6}, -- "Breath of Sindragosa"
[48982] = {30, 0, 1}, -- "Blood Tp"
--["DRUID"] = {},
[740] = {480, 8, 0}, --Tranquility
[22842] = {0, 0, 1}, --Frenzied Regeneration
--[124988] = {90, 30, 0}, --Nature's Vigil
[124974] = {90, 30, 0}, --Nature's Vigil
--["HUNTER"] = {},
[172106] = {180, 6}, -- "Aspect of the Fox"
--["MAGE"] = {},
[159916] = {120, 6}, -- "Amplify Magic"
[157913] = {45, 3, 1}, -- "Evanesce"
[110960] = {90, 20, 1}, -- greater invisibility - 110959 too
--["MONK"] = {},
[115295] = {30, 30, 1}, -- Guard
[116849] = {120, 12, 0}, -- Life Cocoon (a)
[115310] = {180, 0, 0}, -- Revival
[119582] = {60, 0, 1}, -- Purifying Brew
[116844] = {45, 8, 0}, --Ring of Peace
[115308] = {0, 6, 1}, --Elusive Brew
[122783] = {90, 6}, -- Diffuse Magic
[122278] = {90, 45}, -- Dampen Harm
[115176] = {180, 8, 1}, -- Zen Meditation
[115203] = {180, 20, 1}, -- Fortifying Brew
[157535] = {90, 10}, -- "Breath of the Serpent"
--["PALADIN"] = {},
[633] = {600, 0, 0}, --Lay on Hands
[31821] = {180, 6, 0},-- Devotion Aura
--["PRIEST"] = {},
[62618] = {180, 10, 0}, --Power Word: Barrier
[109964] = {60, 10, 0}, --Spirit Shell
[64843] = {180, 8, 0}, --Divine Hymn
--[108968] = {300, 0, 0}, --Void Shift holy disc
--[142723] = {600, 0, 0}, --Void Shift shadow
--["ROGUE"] = {},
[76577] = {180, 0, 0}, --Smoke Bomb
--["SHAMAN"] = {},
[108270] = {60, 5, 1}, -- Stone Bulwark Totem
[108280] = {180, 12}, -- Healing Tide Totem
[98008] = {180, 6}, -- Spirit Link Totem
[108281] = {120, 10}, -- Ancestral Guidance
[165344] = {180, 15}, -- "Ascendance"
[152256] = {300, 60}, -- "Storm Elemental Totem"
--["WARLOCK"] = {108416, 6229},
[108416] = {60, 20, 1}, -- Sacrificial Pact 1 = self
--[6229] = {30, 30, 1}, -- Twilight Ward 1 = self
--["WARRIOR"] = {},
--[114203] = {180, 15}, -- Demoralizing Banner
[114028] = {60, 5}, -- Mass Spell Reflection
[97462] = {180, 10}, -- Rallying Cry
[2565] = {12, 6, 1}, -- Shield Block
[871] = {180, 12, 1}, -- Shield Wall
[12975] = {180, 20, 1}, -- Last Stand
[23920] = {25, 5, 1}, -- Spell Reflection
[114030] = {120, 12}, -- Vigilance
[118038] = {120, 8, 1}, -- Die by the Sword
[112048] = {90, 6, 1}, -- Shield Barrier
}
local getCooldownsForClass = function(class)
local result = {}
for spellId, spellInfo in pairs (_G.DetailsFramework.CooldownsInfo) do
@@ -2208,83 +2128,17 @@ do
end
_detalhes.DefensiveCooldownSpells = {
--> spellid = {cooldown, duration}
-- Death Knigh
[55233] = {60, 10}, -- Vampiric Blood
[49222] = {60, 300}, -- Bone Shield
[48792] = {180, 12}, -- Icebound Fortitude
[48743] = {120, 0}, -- Death Pact
[49039] = {12, 10}, -- Lichborne
["DEATHKNIGHT"] = getCooldownsForClass("DEATHKNIGHT"),
-- Druid
[62606] = {1.5, 6}, -- Savage Defense
--[106922] = {180, 20}, -- Might of Ursoc
[102342] = {60, 12}, -- Ironbark
[61336] = {180, 12}, -- Survival Instincts
[22812] = {60, 12}, -- Barkskin
[155835] = {60, 3}, -- Bristling Fur
["DRUID"] = getCooldownsForClass("DRUID"),
-- Hunter
[19263] = {120, 5}, -- Deterrence
["HUNTER"] = getCooldownsForClass("HUNTER"),
-- Mage
[45438] = {300, 12}, -- Ice Block
["MAGE"] = getCooldownsForClass("MAGE"),
-- Monk
[122470] = {90, 10}, -- Touch of Karma
--[115213] = {180, 6}, -- Avert Harm
["MONK"] = getCooldownsForClass("MONK"),
-- Paladin
[86659] = {180, 12}, -- Guardian of Ancient Kings
[31850] = {180, 10}, -- Ardent Defender
[498] = {60, 10}, -- Divine Protection
[642] = {300, 8}, -- Divine Shield
[6940] = {120, 12}, -- Hand of Sacrifice
[1022] = {300, 10}, -- Hand of Protection
[1038] = {120, 10}, -- Hand of Salvation
["PALADIN"] = getCooldownsForClass("PALADIN"),
-- Priest
[15286] = {180, 15}, -- Vampiric Embrace
[47788] = {180, 10}, -- Guardian Spirit
[47585] = {120, 6}, -- Dispersion
[33206] = {180, 8}, -- Pain Suppression
["PRIEST"] = getCooldownsForClass("PRIEST"),
-- Rogue
[1966] = {1.5, 5}, -- Feint
[31224] = {60, 5}, -- Cloak of Shadows
[5277] = {180, 15}, -- Evasion,
[1856] = {120 , 0}, -- Vanish
["ROGUE"] = getCooldownsForClass("ROGUE"),
-- Shaman
[30823] = {60, 15}, -- Shamanistic Rage
[108271] = {120, 6}, -- Astral Shift
["SHAMAN"] = getCooldownsForClass("SHAMAN"),
-- Warlock
[104773] = {180, 8}, -- Unending Resolve
[108359] = {120, 12}, -- Dark Regeneration
[110913] = {180, 8}, -- Dark Bargain
["WARLOCK"] = getCooldownsForClass("WARLOCK"),
-- Warrior
[871] = {180, 12}, -- Shield Wall
[12975] = {180, 20}, -- Last Stand
[23920] = {25, 5}, -- Spell Reflection
[114030] = {120, 12}, -- Vigilance
[118038] = {120, 8}, -- Die by the Sword
[112048] = {90, 6}, -- Shield Barrier
["WARRIOR"] = getCooldownsForClass("WARRIOR"),
}
_detalhes.HarmfulSpells = {
+6 -6
View File
@@ -465,15 +465,9 @@ function Details:StartMeUp() --I'll never stop!
--coach feature startup
Details.Coach.StartUp()
--enforce to show 6 abilities on the tooltip
--_detalhes.tooltip.tooltip_max_abilities = 6 freeeeeedooommmmm
--force the group edit be always enabled when Details! starts
_detalhes.options_group_edit = true
--remove standard skin on 9.0.1
_detalhes.standard_skin = false
--enforce to use the new animation code
if (_detalhes.streamer_config) then
_detalhes.streamer_config.use_animation_accel = true
@@ -481,6 +475,12 @@ function Details:StartMeUp() --I'll never stop!
--shutdown pre-pot announcer
Details.announce_prepots.enabled = false
--disable the min healing to show
Details.deathlog_healingdone_min = 1
--remove standard skin on 9.0.1
_detalhes.standard_skin = false
--enforce to show 6 abilities on the tooltip
--_detalhes.tooltip.tooltip_max_abilities = 6 freeeeeedooommmmm
--Plater integration
C_Timer.After(2, function()