From bda28297467b97818ad5cf53787a3f279cdce91f Mon Sep 17 00:00:00 2001 From: Tercio Jose Date: Fri, 1 Jan 2021 14:28:27 -0300 Subject: [PATCH] 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. --- Libs/DF/fw.lua | 2 +- Libs/DF/spells.lua | 5 +- boot.lua | 1 + core/parser.lua | 55 +++-------- core/util.lua | 11 --- frames/window_playerbreakdown.lua | 49 +++++----- functions/spells.lua | 146 ------------------------------ startup.lua | 12 +-- 8 files changed, 47 insertions(+), 234 deletions(-) diff --git a/Libs/DF/fw.lua b/Libs/DF/fw.lua index 45048cab..044b88e4 100644 --- a/Libs/DF/fw.lua +++ b/Libs/DF/fw.lua @@ -1,6 +1,6 @@ -local dversion = 224 +local dversion = 227 local major, minor = "DetailsFramework-1.0", dversion local DF, oldminor = LibStub:NewLibrary (major, minor) diff --git a/Libs/DF/spells.lua b/Libs/DF/spells.lua index cdf5bf34..c19400d5 100644 --- a/Libs/DF/spells.lua +++ b/Libs/DF/spells.lua @@ -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 diff --git a/boot.lua b/boot.lua index a0329579..c381a7ef 100644 --- a/boot.lua +++ b/boot.lua @@ -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 diff --git a/core/parser.lua b/core/parser.lua index 0208e381..9e8b9330 100755 --- a/core/parser.lua +++ b/core/parser.lua @@ -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 n�o 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 diff --git a/core/util.lua b/core/util.lua index f745f6f8..c6d3d3f4 100644 --- a/core/util.lua +++ b/core/util.lua @@ -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 diff --git a/frames/window_playerbreakdown.lua b/frames/window_playerbreakdown.lua index ac548462..38c45f7e 100644 --- a/frames/window_playerbreakdown.lua +++ b/frames/window_playerbreakdown.lua @@ -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() diff --git a/functions/spells.lua b/functions/spells.lua index e418266c..6e1e1196 100644 --- a/functions/spells.lua +++ b/functions/spells.lua @@ -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 T�p" - - --["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 = { diff --git a/startup.lua b/startup.lua index fa14527b..fe7fd9a5 100644 --- a/startup.lua +++ b/startup.lua @@ -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()