diff --git a/Libs/DF/fw.lua b/Libs/DF/fw.lua index f25816c8e..fca7c354e 100644 --- a/Libs/DF/fw.lua +++ b/Libs/DF/fw.lua @@ -1,6 +1,6 @@ -local dversion = 232 +local dversion = 233 local major, minor = "DetailsFramework-1.0", dversion local DF, oldminor = LibStub:NewLibrary (major, minor) @@ -3639,6 +3639,28 @@ function DF:GetRoleTypes() return DF.RoleTypes end +local roleTexcoord = { + DAMAGER = "72:130:69:127", + HEALER = "72:130:2:60", + TANK = "5:63:69:127", + NONE = "139:196:69:127", +} + +function DF:AddRoleIconToText(text, role, size) + if (role and type(role) == "string") then + local coords = GetTexCoordsForRole(role) + if (coords) then + if (type (text) == "string" and role ~= "NONE") then + size = size or 14 + text = "|TInterface\\LFGFRAME\\UI-LFG-ICON-ROLES:" .. size .. ":" .. size .. ":0:0:256:256:" .. roleTexcoord[role] .. "|t " .. text + return text + end + end + end + + return text +end + DF.CLEncounterID = { {ID = 2144, Name = "Taloc"}, {ID = 2141, Name = "MOTHER"}, diff --git a/Libs/DF/spells.lua b/Libs/DF/spells.lua index 23d75bcf4..0ede4b4a1 100644 --- a/Libs/DF/spells.lua +++ b/Libs/DF/spells.lua @@ -135,6 +135,7 @@ DF.CooldownsBySpec = { [30283] = 5, --Shadowfury [6789] = 5, --Mortal Coil (talent) [333889] = 5, --Fel Domination + [5484] = 5, --Howl of Terror (talent) }, --demonology [266] = { @@ -162,6 +163,7 @@ DF.CooldownsBySpec = { [6789] = 5, --Mortal Coil (talent) [30283] = 5, --Shadowfury [333889] = 5, --Fel Domination + [5484] = 5, --Howl of Terror (talent) }, --WARRIOR @@ -537,6 +539,7 @@ DF.CooldownsInfo = { [113858] = {cooldown = 120, duration = 20, talent = 23092, charges = 1, class = "WARLOCK", type = 1}, --Dark Soul: Instability (talent) [30283] = {cooldown = 60, duration = 3, talent = false, charges = 1, class = "WARLOCK", type = 5}, --Shadowfury [333889] = {cooldown = 180, duration = 15, talent = false, charges = 1, class = "WARLOCK", type = 5}, --Fel Domination + [5484] = {cooldown = 40, duration = 20, talent = true, charges = 1, class = "WARLOCK", type = 5}, --Howl of Terror (talent) --> shaman [198067] = {cooldown = 150, duration = 30, talent = false, charges = 1, class = "SHAMAN", type = 1}, --Fire Elemental @@ -716,6 +719,7 @@ DF.CrowdControlSpells = { [6789] = "WARLOCK", --Mortal Coil [30283] = "WARLOCK", --Shadowfury [710] = "WARLOCK", --Banish + [5484] = "WARLOCK", --Howl of Terror (talent) [118] = "MAGE", --Polymorph [61305] = "MAGE", --Polymorph (black cat) diff --git a/boot.lua b/boot.lua index 0a3827477..1e64055ef 100644 --- a/boot.lua +++ b/boot.lua @@ -4,8 +4,9 @@ _ = nil _detalhes = LibStub("AceAddon-3.0"):NewAddon("_detalhes", "AceTimer-3.0", "AceComm-3.0", "AceSerializer-3.0", "NickTag-1.0") - _detalhes.build_counter = 8156 - _detalhes.alpha_build_counter = 8156 --if this is higher than the regular counter, use it instead + _detalhes.build_counter = 8192 + _detalhes.alpha_build_counter = 8192 --if this is higher than the regular counter, use it instead + _detalhes.dont_open_news = true _detalhes.game_version = "v9.0.2" _detalhes.userversion = "v9.0.2." .. _detalhes.build_counter _detalhes.realversion = 144 --core version, this is used to check API version for scripts and plugins (see alias below) @@ -28,10 +29,16 @@ do local Loc = _G.LibStub("AceLocale-3.0"):GetLocale( "Details" ) local news = { - --{"v9.0.2.8162.144", "January ??th, 2021"}, - --"Added covenant into the Raid Check plugin.", - - {"v9.0.2.8156.144", "January 21th, 2021"}, + {"v9.0.2.8192.144", "January 27th, 2021"}, + "If you get issues with nicknames, disable any weakaura which modifies this feature.", + "Advanced Death Logs plugin got some fixes and should work properly.", + "Added the word 'Overall' at the end of the title bar text when the segment is overall.", + "Added covenant and durability into the Raid Check plugin.", + "Added API Window:SetTitleBarText(text) and Window:GetTitleBarText().", + "Fixed some issues where Details! printed 'combat start time not found.'", + "Fixed damage per Phase.", + "Fixed resizing window with no background error.", + "Fixed 'Always Show player' on ascending sort direction.", "Added more foods into the Ready Check plugin.", "Fixed some issues with the coach fearure.", @@ -536,6 +543,9 @@ do [323436] = true --Phial of Serenity (from Kyrians) } + --[[global]] DETAILS_MODE_GROUP = 2 + --[[global]] DETAILS_MODE_ALL = 3 + _detalhes._detalhes_props = { DATA_TYPE_START = 1, --> Something on start DATA_TYPE_END = 2, --> Something on end diff --git a/classes/container_actors.lua b/classes/container_actors.lua index 18d4f590c..5c5a98874 100644 --- a/classes/container_actors.lua +++ b/classes/container_actors.lua @@ -217,28 +217,27 @@ --> � um player if (_bit_band (flag, OBJECT_TYPE_PLAYER) ~= 0) then - + if (not _detalhes.ignore_nicktag) then novo_objeto.displayName = _detalhes:GetNickname (nome, false, true) --> serial, default, silent + if (novo_objeto.displayName and novo_objeto.displayName ~= "") then + --don't display empty nicknames + if (novo_objeto.displayName:find(" ")) then + if (_detalhes.remove_realm_from_name) then + novo_objeto.displayName = nome:gsub (("%-.*"), "") + else + novo_objeto.displayName = nome + end + end + end end + if (not novo_objeto.displayName) then if (_detalhes.remove_realm_from_name) then novo_objeto.displayName = nome:gsub (("%-.*"), "") - else - novo_objeto.displayName = nome - end - --[=[ - - if (_IsInInstance() and _detalhes.remove_realm_from_name) then - novo_objeto.displayName = nome:gsub (("%-.*"), "") - - elseif (_detalhes.remove_realm_from_name) then - novo_objeto.displayName = nome:gsub (("%-.*"), "%*") --nome = nil - else novo_objeto.displayName = nome end - --]=] end if (_detalhes.all_players_are_group or _detalhes.immersion_enabled) then diff --git a/core/parser.lua b/core/parser.lua index 9e8b9330e..cf32858bc 100755 --- a/core/parser.lua +++ b/core/parser.lua @@ -4534,7 +4534,7 @@ 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) + --Details:Msg("encounter started:", encounterID, encounterName) _detalhes.boss1_health_percent = 1 local dbm_mod, dbm_time = _detalhes.encounter_table.DBM_Mod, _detalhes.encounter_table.DBM_ModTime @@ -4546,7 +4546,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1 _detalhes.encounter_table.phase = 1 --store the encounter time inside the encounter table for the encounter plugin - _detalhes.encounter_table ["start"] = _GetTime() + _detalhes.encounter_table.start = GetTime() _detalhes.encounter_table ["end"] = nil -- local encounterID = Details.encounter_table.id _detalhes.encounter_table.id = encounterID @@ -4585,6 +4585,8 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1 end _detalhes:SendEvent ("COMBAT_ENCOUNTER_START", nil, ...) + + --print ("encounter staerted at:", _detalhes.encounter_table.start) end function _detalhes.parser_functions:ENCOUNTER_END (...) diff --git a/frames/window_main.lua b/frames/window_main.lua index ac06665a4..b77a8edb0 100644 --- a/frames/window_main.lua +++ b/frames/window_main.lua @@ -7577,10 +7577,10 @@ function _detalhes:CheckForTextTimeCounter (combat_start) local instance = _detalhes:GetInstance (lower) if (instance.baseframe and instance:IsEnabled()) then if (instance.attribute_text.show_timer) then - if (_detalhes.instance_title_text_timer [instance.meu_id]) then - _detalhes:CancelTimer (_detalhes.instance_title_text_timer [instance.meu_id]) + if (_detalhes.instance_title_text_timer [instance:GetId()]) then + Details.Schedules.Cancel(_detalhes.instance_title_text_timer [instance:GetId()]) end - _detalhes.instance_title_text_timer [instance.meu_id] = _detalhes:ScheduleRepeatingTimer ("TitleTextTickTimer", 1, instance) + _detalhes.instance_title_text_timer[instance:GetId()] = Details.Schedules.NewTicker(1, Details.TitleTextTickTimer, Details, instance) end end else @@ -7588,16 +7588,16 @@ function _detalhes:CheckForTextTimeCounter (combat_start) end else if (_detalhes.in_combat and _detalhes.zone_type == "raid") then - _detalhes:ScheduleTimer ("CheckForTextTimeCounter", 3, true) + Details.Schedules.NewTimer(3, Details.CheckForTextTimeCounter, Details, true) end end else for _, instance in ipairs (_detalhes.tabela_instancias) do - if (_detalhes.instance_title_text_timer [instance.meu_id] and instance.baseframe and instance:IsEnabled() and instance.menu_attribute_string) then - _detalhes:CancelTimer (_detalhes.instance_title_text_timer [instance.meu_id]) - local current_text = instance.menu_attribute_string:GetText() + if (_detalhes.instance_title_text_timer [instance:GetId()] and instance.baseframe and instance:IsEnabled() and instance.menu_attribute_string) then + Details.Schedules.Cancel(_detalhes.instance_title_text_timer[instance:GetId()]) + local current_text = instance:GetTitleBarText() current_text = current_text:gsub ("%[.*%] ", "") - instance.menu_attribute_string:SetText (current_text) + instance:SetTitleBarText(current_text) end end end @@ -7621,24 +7621,29 @@ function _detalhes:TitleTextTickTimer (instance) local currentText = instance.menu_attribute_string.originalText if (currentText) then local timer = format_timer (_detalhes.tabela_vigente:GetCombatTime()) - instance.menu_attribute_string:SetText(timer .. " " .. currentText) - + instance:SetTitleBarText(timer .. " " .. currentText) else - local current_text = instance.menu_attribute_string:GetText() + local current_text = instance:GetTitleBarText() if (not current_text:find ("%[.*%]")) then - instance.menu_attribute_string:SetText ("[00:01] " .. current_text) + instance:SetTitleBarText("[00:01] " .. current_text) else local timer = format_timer (_detalhes.tabela_vigente:GetCombatTime()) current_text = current_text:gsub ("%[.*%]", timer) - instance.menu_attribute_string:SetText (current_text) + instance:SetTitleBarText(current_text) end end end end -function _detalhes:SetTitleBarText (text) +function _detalhes:SetTitleBarText(text) if (self.attribute_text.enabled and self.menu_attribute_string) then - self.menu_attribute_string:SetText (text) + self.menu_attribute_string:SetText(text) + end +end + +function _detalhes:GetTitleBarText() + if (self.menu_attribute_string) then + return self.menu_attribute_string:GetText() end end @@ -7718,6 +7723,18 @@ function _detalhes:AttributeMenu (enabled, pos_x, pos_y, font, size, color, side function self.menu_attribute_string:OnEvent (instance, attribute, subAttribute) if (instance == label.owner_instance) then local sName = instance:GetInstanceAttributeText() + local instanceMode = instance:GetMode() + + if (instanceMode == DETAILS_MODE_GROUP or instanceMode == DETAILS_MODE_ALL) then + local segment = instance:GetSegment() + if (segment == DETAILS_SEGMENTID_OVERALL) then + sName = sName .. " " .. Loc ["STRING_OVERALL"] + + elseif (segment >= 2) then + sName = sName .. " [" .. segment .. "]" + end + end + label.text = sName label.originalText = sName end @@ -7725,7 +7742,7 @@ function _detalhes:AttributeMenu (enabled, pos_x, pos_y, font, size, color, side _detalhes:RegisterEvent (self.menu_attribute_string, "DETAILS_INSTANCE_CHANGEATTRIBUTE", self.menu_attribute_string.OnEvent) _detalhes:RegisterEvent (self.menu_attribute_string, "DETAILS_INSTANCE_CHANGEMODE", self.menu_attribute_string.OnEvent) - + _detalhes:RegisterEvent (self.menu_attribute_string, "DETAILS_INSTANCE_CHANGESEGMENT", self.menu_attribute_string.OnEvent) end self.menu_attribute_string:Show() diff --git a/functions/bossmods.lua b/functions/bossmods.lua index d9787b16c..e2413af8d 100644 --- a/functions/bossmods.lua +++ b/functions/bossmods.lua @@ -39,13 +39,14 @@ end function Details:BossModsLink() if (_G.DBM) then local dbm_callback_phase = function (event, msg, ...) - + + print("D!", event, msg, ...) local mod = Details.encounter_table.DBM_Mod if (not mod) then local id = Details:GetEncounterIdFromBossIndex (Details.encounter_table.mapid, Details.encounter_table.id) if (id) then - for index, tmod in ipairs (DBM.Mods) do + for index, tmod in ipairs (DBM.Mods) do if (tmod.id == id) then Details.encounter_table.DBM_Mod = tmod mod = tmod @@ -54,36 +55,41 @@ function Details:BossModsLink() end end - local newPhase + local newPhase = 1 + + --D! DBM_Announce Stage 3 136116 stagechange 0 2429 false - if (msg == "stage") then - local ID, pahseChange, n1, n2, n3 = ... - if (pahseChange == "stagechange") then + if (event == "DBM_Announce") then + if (msg:find("Stage")) then msg = msg:gsub("%a", "") msg = msg:gsub("%s+", "") newPhase = tonumber(msg) - end - end + print("New Phase: ", newPhase) - --local phase = mod and mod.vb and mod.vb.phase - local phase = newPhase + local ID, msg2, someId, someNumber, aBool = ... - -- print ("DBM 1", phase, Details.encounter_table.phase, Details.encounter_table.phase ~= phase) + if (msg2 == "stagechange") then + print("D! yeash", msg2) + end - if (phase and Details.encounter_table.phase ~= phase) then - Details:Msg ("Current phase is now:", phase) - - Details:OnCombatPhaseChanged() - - Details.encounter_table.phase = phase - - local cur_combat = Details:GetCurrentCombat() - local time = cur_combat:GetCombatTime() - if (time > 5) then - tinsert (cur_combat.PhaseData, {phase, time}) + local phase = newPhase + + if (phase and Details.encounter_table.phase ~= phase) then + Details:Msg ("Current phase is now:", phase) + + Details:OnCombatPhaseChanged() + + Details.encounter_table.phase = phase + + local cur_combat = Details:GetCurrentCombat() + local time = cur_combat:GetCombatTime() + if (time > 5) then + tinsert (cur_combat.PhaseData, {phase, time}) + end + + Details:SendEvent ("COMBAT_ENCOUNTER_PHASE_CHANGED", nil, phase) + end end - - Details:SendEvent ("COMBAT_ENCOUNTER_PHASE_CHANGED", nil, phase) end end @@ -97,11 +103,36 @@ function Details:BossModsLink() end if (BigWigsLoader and not _G.DBM) then + + function Details:BigWigs_SetStage (event, module, phase) + print(" ===== BigWigs_SetStage ===== ", event, module, phase) + phase = tonumber(phase) + + if (phase and type (phase) == "number" and Details.encounter_table.phase ~= phase) then + Details:OnCombatPhaseChanged() + + Details.encounter_table.phase = phase + + local cur_combat = Details:GetCurrentCombat() + local time = cur_combat:GetCombatTime() + if (time > 5) then + tinsert (cur_combat.PhaseData, {phase, time}) + end + + Details:SendEvent ("COMBAT_ENCOUNTER_PHASE_CHANGED", nil, phase) + Details:Msg ("Current phase is now:", phase) + end + end + function Details:BigWigs_Message (event, module, key, text, ...) if (key == "stages") then - local phase = text:gsub (".*%s", "") - phase = tonumber (phase) + + local phase = module:GetStage() + print("BW new stage:", phase) + + --local phase = text:gsub (".*%s", "") + --phase = tonumber (phase) if (phase and type (phase) == "number" and Details.encounter_table.phase ~= phase) then Details:OnCombatPhaseChanged() @@ -121,6 +152,7 @@ function Details:BossModsLink() if (BigWigsLoader.RegisterMessage) then BigWigsLoader.RegisterMessage (Details, "BigWigs_Message") + BigWigsLoader.RegisterMessage (Details, "BigWigs_SetStage") end end diff --git a/plugins/Details_RaidCheck/Details_RaidCheck.lua b/plugins/Details_RaidCheck/Details_RaidCheck.lua index 9fc54cc27..8ca8a834a 100644 --- a/plugins/Details_RaidCheck/Details_RaidCheck.lua +++ b/plugins/Details_RaidCheck/Details_RaidCheck.lua @@ -247,12 +247,13 @@ end --header and scroll local headerTable = { - {text = "Player Name", width = 160}, - {text = "Talents", width = 150}, - {text = "Item Level", width = 70}, - {text = "Food", width = 50}, - {text = "Flask", width = 50}, - {text = "Rune", width = 50}, + {text = "Player Name", width = 140}, + {text = "Talents", width = 130}, + {text = "ILevel", width = 45}, + {text = "Repair", width = 45}, + {text = "Food", width = 45}, + {text = "Flask", width = 45}, + {text = "Rune", width = 45}, --{text = "Pre-Pot Last Try", width = 100}, {text = "Using Details!", width = 100}, } @@ -300,10 +301,14 @@ end --spec icon local specIcon = DF:CreateImage (line, nil, scroll_line_height, scroll_line_height) specIcon:SetPoint ("left", roleIcon, "right", 2, 0) + + --covenant icon + local covenantIcon = DF:CreateImage (line, nil, scroll_line_height, scroll_line_height) + covenantIcon:SetPoint ("left", specIcon, "right", 2, 0) --player name local playerName = DF:CreateLabel (line) - playerName:SetPoint ("left", specIcon, "right", 2, 0) + playerName:SetPoint ("left", covenantIcon, "right", 2, 0) --talents local talent_row_options = { @@ -316,35 +321,39 @@ end local talentsRow = DF:CreateIconRow (line, "$parentTalentIconsRow", talent_row_options) --item level - local itemLevel = DF:CreateLabel (line) - + local itemLevel = DF:CreateLabel(line) + --repair status + local repairStatus = DF:CreateLabel(line) --no food - local FoodIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height) + local FoodIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height) --no flask - local FlaskIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height) + local FlaskIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height) --no rune - local RuneIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height) + local RuneIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height) --no pre pot --local PrePotIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height) --using details! - local DetailsIndicator = DF:CreateImage (line, "", scroll_line_height, scroll_line_height) - - line:AddFrameToHeaderAlignment (roleIcon) - line:AddFrameToHeaderAlignment (talentsRow) - line:AddFrameToHeaderAlignment (itemLevel) - line:AddFrameToHeaderAlignment (FoodIndicator) - line:AddFrameToHeaderAlignment (FlaskIndicator) - line:AddFrameToHeaderAlignment (RuneIndicator) - --line:AddFrameToHeaderAlignment (PrePotIndicator) - line:AddFrameToHeaderAlignment (DetailsIndicator) + local DetailsIndicator = DF:CreateImage(line, "", scroll_line_height, scroll_line_height) + + line:AddFrameToHeaderAlignment(roleIcon) + line:AddFrameToHeaderAlignment(talentsRow) + line:AddFrameToHeaderAlignment(itemLevel) + line:AddFrameToHeaderAlignment(repairStatus) + line:AddFrameToHeaderAlignment(FoodIndicator) + line:AddFrameToHeaderAlignment(FlaskIndicator) + line:AddFrameToHeaderAlignment(RuneIndicator) + --line:AddFrameToHeaderAlignment(PrePotIndicator) + line:AddFrameToHeaderAlignment(DetailsIndicator) line:AlignWithHeader (DetailsRaidCheck.Header, "left") + line.CovenantIcon = covenantIcon line.RoleIcon = roleIcon line.SpecIcon = specIcon line.PlayerName = playerName line.TalentsRow = talentsRow line.ItemLevel = itemLevel + line.RepairStatus = repairStatus line.FoodIndicator = FoodIndicator line.FlaskIndicator = FlaskIndicator line.RuneIndicator = RuneIndicator @@ -369,6 +378,12 @@ end table.sort (dataInOrder, DF.SortOrder2) --table.sort (dataInOrder, DF.SortOrder1R) --alphabetical data = dataInOrder + + local raidStatusLib = LibStub:GetLibrary("LibRaidStatus-1.0") + local playerInfo = raidStatusLib.playerInfoManager.GetPlayerInfo() + local gearInfo = raidStatusLib.gearManager.GetGearTable() + + local libRaidStatus = 0 for i = 1, total_lines do local index = i + offset @@ -377,18 +392,38 @@ end if (playerTable) then local line = self:GetLine (i) if (line) then + local thisPlayerInfo = playerInfo[playerTable.Name] + if (thisPlayerInfo) then + local playerCovenantId = thisPlayerInfo.covenantId + if (playerCovenantId > 0) then + line.CovenantIcon:SetTexture(LIB_RAID_STATUS_COVENANT_ICONS[playerCovenantId]) + line.CovenantIcon:SetTexCoord(.05, .95, .05, .95) + else + line.CovenantIcon:SetTexture("") + end + else + line.CovenantIcon:SetTexture("") + end + + --repair status + local thisPlayerGearInfo = gearInfo[playerTable.Name] + if (thisPlayerGearInfo) then + line.RepairStatus:SetText(thisPlayerGearInfo.durability .. "%") + else + line.RepairStatus:SetText("") + end - local roleTexture, L, R, T, B = _detalhes:GetRoleIcon (playerTable.Role or "NONE") + local roleTexture, L, R, T, B = _detalhes:GetRoleIcon(playerTable.Role or "NONE") - line.RoleIcon:SetTexture (roleTexture) - line.RoleIcon:SetTexCoord (L, R, T, B) + line.RoleIcon:SetTexture(roleTexture) + line.RoleIcon:SetTexCoord(L, R, T, B) if (playerTable.Spec) then - local texture, L, R, T, B = _detalhes:GetSpecIcon (playerTable.Spec) - line.SpecIcon:SetTexture (texture) - line.SpecIcon:SetTexCoord (L, R, T, B) + local texture, L, R, T, B = _detalhes:GetSpecIcon(playerTable.Spec) + line.SpecIcon:SetTexture(texture) + line.SpecIcon:SetTexCoord(L, R, T, B) else - local texture, L, R, T, B = _detalhes:GetClassIcon (playerTable.Class) + local texture, L, R, T, B = _detalhes:GetClassIcon(playerTable.Class) line.SpecIcon:SetTexture (texture) line.SpecIcon:SetTexCoord (L, R, T, B) end @@ -398,8 +433,8 @@ end if (playerTable.Talents) then for i = 1, #playerTable.Talents do local talent = playerTable.Talents [i] - local talentID, name, texture, selected, available = GetTalentInfoByID (talent) - line.TalentsRow:SetIcon (false, false, false, false, texture) + local talentID, name, texture, selected, available = GetTalentInfoByID(talent) + line.TalentsRow:SetIcon(false, false, false, false, texture) end end diff --git a/startup.lua b/startup.lua index 70b6feb87..675369ee6 100644 --- a/startup.lua +++ b/startup.lua @@ -468,11 +468,6 @@ function Details:StartMeUp() --I'll never stop! --force the group edit be always enabled when Details! starts _detalhes.options_group_edit = true - --enforce to use the new animation code - if (_detalhes.streamer_config) then - _detalhes.streamer_config.use_animation_accel = true - end - --shutdown pre-pot announcer Details.announce_prepots.enabled = false --disable the min healing to show