Renamed InstaciaCallFunction to InstanceCallDetailsFunc

This commit is contained in:
Tercio Jose
2023-07-19 09:57:00 -03:00
parent 8875c15b33
commit c3e931a459
6 changed files with 46 additions and 39 deletions
+4 -4
View File
@@ -99,11 +99,11 @@ end
---run a function on all enabled instances
---@param func function
---@vararg any
function Details:InstanciaCallFunction(func, ...)
function Details:InstanceCallDetailsFunc(func, ...)
for index, instance in ipairs(Details.tabela_instancias) do
---@cast instance instance
if (instance:IsEnabled()) then
func(_, instance, ...)
func(Details, instance, ...)
end
end
end
@@ -113,7 +113,7 @@ end
---@vararg any
function Details:InstanciaCallFunctionOffline(func, ...)
for index, instancia in ipairs(Details.tabela_instancias) do
func(_, instancia, ...)
func(Details, instancia, ...)
end
end
@@ -2512,7 +2512,7 @@ end
--handle internal details! events
local eventListener = Details:CreateEventListener()
eventListener:RegisterEvent("DETAILS_DATA_SEGMENTREMOVED", function()
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse)
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse)
end)
function Details:UpdateCombatObjectInUse(instance)
+19 -12
View File
@@ -342,6 +342,9 @@ function Details222.Combat.AddCombat(combatToBeAdded)
---@type number amount of segments currently stored
local amountSegmentsInUse = #segmentsTable
---@type table<combat, boolean> store references of combat objects removed
local removedCombats = {}
---@debug check if there's a destroyed segment within the segment container
if (amountSegmentsInUse > 0) then
for i = 1, amountSegmentsInUse do
@@ -360,11 +363,11 @@ function Details222.Combat.AddCombat(combatToBeAdded)
if (amountSegmentsInUse < maxSegmentsAllowed) then
--if there's no segment stored, then this as the first segment
if (amountSegmentsInUse == 0) then
Details:InstanciaCallFunction(Details.CheckFreeze, amountSegmentsInUse + 1, combatToBeAdded)
Details:InstanceCallDetailsFunc(Details.CheckFreeze, amountSegmentsInUse + 1, combatToBeAdded)
else
---@type combat
local oldestCombatObject = segmentsTable[amountSegmentsInUse]
Details:InstanciaCallFunction(Details.CheckFreeze, amountSegmentsInUse + 1, oldestCombatObject)
Details:InstanceCallDetailsFunc(Details.CheckFreeze, amountSegmentsInUse + 1, oldestCombatObject)
end
end
@@ -396,7 +399,7 @@ function Details222.Combat.AddCombat(combatToBeAdded)
end
end
---@type boolean user choise to remove trash combats or nor
---@type boolean user choise to remove trash combats or not
local bAutoRemoveTrashCombats = Details.trash_auto_remove
if (bAutoRemoveTrashCombats) then
---@type combat
@@ -411,9 +414,11 @@ function Details222.Combat.AddCombat(combatToBeAdded)
if (bCombatIsTrash or bCombatIsWorldTrash) then
---@type boolean, combat|nil
local bSegmentRemoved, combatObjectRemoved = Details:RemoveSegmentByCombatObject(combatToCheckForTrash)
if (bSegmentRemoved and combatObjectRemoved == combatToCheckForTrash) then
if (bSegmentRemoved and combatObjectRemoved and combatObjectRemoved == combatToCheckForTrash) then
Details:DestroyCombat(combatObjectRemoved)
bSegmentDestroyed = true
--add the combat reference to removed combats table
removedCombats[combatObjectRemoved] = true
end
end
end
@@ -433,9 +438,11 @@ function Details222.Combat.AddCombat(combatToBeAdded)
---@type boolean, combat|nil
local bSegmentRemoved, combatObjectRemoved = Details:RemoveSegmentByCombatObject(combatObjectToBeRemoved)
if (bSegmentRemoved and combatObjectRemoved == combatObjectToBeRemoved) then
if (bSegmentRemoved and combatObjectRemoved and combatObjectRemoved == combatObjectToBeRemoved) then
Details:DestroyCombat(combatObjectRemoved)
bSegmentDestroyed = true
--add the combat reference to removed combats table
removedCombats[combatObjectRemoved] = true
end
end
@@ -470,7 +477,7 @@ function Details222.Combat.AddCombat(combatToBeAdded)
Details:InstanceCall(function(instanceObject) instanceObject:RefreshCombat() end)
--update the combat shown on all instances
Details:InstanciaCallFunction(Details.AtualizaSegmentos_AfterCombat)
Details:InstanceCallDetailsFunc(Details.AtualizaSegmentos_AfterCombat)
if (bSegmentDestroyed) then
Details:SendEvent("DETAILS_DATA_SEGMENTREMOVED")
@@ -500,7 +507,7 @@ function segmentClass:AddCombat(combatObject)
if (not oldestCombatObject) then
oldestCombatObject = combatObject
end
Details:InstanciaCallFunction(Details.CheckFreeze, #segmentsTable + 1, oldestCombatObject)
Details:InstanceCallDetailsFunc(Details.CheckFreeze, #segmentsTable + 1, oldestCombatObject)
end
--add to the first index of the segment table
@@ -672,7 +679,7 @@ function segmentClass:AddCombat(combatObject)
Details:InstanceCall(function(instanceObject) instanceObject:RefreshCombat() end)
--update the combat shown on all instances
Details:InstanciaCallFunction(Details.AtualizaSegmentos_AfterCombat, self)
Details:InstanceCallDetailsFunc(Details.AtualizaSegmentos_AfterCombat, self)
if (bSegmentDestroyed) then
Details:SendEvent("DETAILS_DATA_SEGMENTREMOVED")
@@ -844,10 +851,10 @@ function segmentClass:ResetAllCombatData()
Details.schedule_hard_garbage_collect = true
end
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse) -- atualiza o instancia.showing para as novas tabelas criadas
Details:InstanciaCallFunction(Details.AtualizaSoloMode_AfertReset) -- verifica se precisa zerar as tabela da janela solo mode
Details:InstanciaCallFunction(Details.ResetaGump) --_detalhes:ResetaGump("de todas as instancias")
Details:InstanciaCallFunction(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse) -- atualiza o instancia.showing para as novas tabelas criadas
Details:InstanceCallDetailsFunc(Details.AtualizaSoloMode_AfertReset) -- verifica se precisa zerar as tabela da janela solo mode
Details:InstanceCallDetailsFunc(Details.ResetaGump) --_detalhes:ResetaGump("de todas as instancias")
Details:InstanceCallDetailsFunc(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:RefreshMainWindow(-1) --atualiza todas as instancias
+5 -5
View File
@@ -360,9 +360,9 @@
--check if there's a 'current segment in place', if not, re-create the overall data before creating the new segment
if (not segmentsTable[1]) then
Details.tabela_overall = Details.combate:NovaTabela()
Details:InstanciaCallFunction(Details.ResetaGump, nil, -1) --reseta scrollbar, iterators, rodap, etc
Details:InstanciaCallFunction(Details.InstanciaFadeBarras, -1) --esconde todas as barras
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse) --atualiza o showing
Details:InstanceCallDetailsFunc(Details.ResetaGump, nil, -1) --reseta scrollbar, iterators, rodap, etc
Details:InstanceCallDetailsFunc(Details.InstanciaFadeBarras, -1) --esconde todas as barras
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse) --atualiza o showing
end
--get the yet 'current' combat and lock the activity time on all actors
@@ -430,7 +430,7 @@
--if the window is showing current segment, switch it for the new combat
--also if the window has auto current, jump to current segment
Details:InstanciaCallFunction(Details.TrocaSegmentoAtual, Details.tabela_vigente.is_boss and true)
Details:InstanceCallDetailsFunc(Details.TrocaSegmentoAtual, Details.tabela_vigente.is_boss and true)
--clear hosts and make the cloud capture stuff
Details.host_of = nil
@@ -872,7 +872,7 @@
end
Details.tabela_vigente.resincked = true
Details:InstanciaCallFunction(Details.AtualizarJanela)
Details:InstanceCallDetailsFunc(Details.AtualizarJanela)
if (Details.solo) then --code to update "solo" plugins, there's no solo plugins for details! at the moment
if (Details.SoloTables.CombatID == Details:GetOrSetCombatId()) then --significa que o solo mode validou o combate, como matar um bixo muito low level com uma s porrada
+2 -2
View File
@@ -696,7 +696,7 @@ local classTypeUtility = Details.atributos.misc
--refresh nas janelas
if (amountActorRemoved > 0) then
Details:InstanciaCallFunction(Details.reset_window)
Details:InstanceCallDetailsFunc(Details.reset_window)
end
--cleanup backlisted pets within the handler of actor containers
@@ -870,7 +870,7 @@ local classTypeUtility = Details.atributos.misc
amountRemoved = amountRemoved + collectGarbage(overallCombatObject, overriteLastEvent)
if (amountRemoved > 0) then
Details:InstanciaCallFunction(Details.ScheduleUpdate)
Details:InstanceCallDetailsFunc(Details.ScheduleUpdate)
Details:RefreshMainWindow(-1)
end
+12 -12
View File
@@ -158,10 +158,10 @@ function DetailsMythicPlusFrame.MergeSegmentsOnEnd()
Details:SairDoCombate()
--update all windows
Details:InstanciaCallFunction(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse)
Details:InstanciaCallFunction(Details.AtualizaSoloMode_AfertReset)
Details:InstanciaCallFunction(Details.ResetaGump)
Details:InstanceCallDetailsFunc(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse)
Details:InstanceCallDetailsFunc(Details.AtualizaSoloMode_AfertReset)
Details:InstanceCallDetailsFunc(Details.ResetaGump)
Details:RefreshMainWindow(-1, true)
if (DetailsMythicPlusFrame.DevelopmentDebug) then
@@ -271,10 +271,10 @@ function DetailsMythicPlusFrame.MergeTrashCleanup (isFromSchedule)
Details:SendEvent("DETAILS_DATA_SEGMENTREMOVED")
--update all windows
Details:InstanciaCallFunction(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse)
Details:InstanciaCallFunction(Details.AtualizaSoloMode_AfertReset)
Details:InstanciaCallFunction(Details.ResetaGump)
Details:InstanceCallDetailsFunc(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse)
Details:InstanceCallDetailsFunc(Details.AtualizaSoloMode_AfertReset)
Details:InstanceCallDetailsFunc(Details.ResetaGump)
Details:RefreshMainWindow(-1, true)
else
Details222.MythicPlus.LogStep("MergeTrashCleanup | no segments to merge.")
@@ -373,10 +373,10 @@ function DetailsMythicPlusFrame.MergeRemainingTrashAfterAllBossesDone()
end
--update all windows
Details:InstanciaCallFunction(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse)
Details:InstanciaCallFunction(Details.AtualizaSoloMode_AfertReset)
Details:InstanciaCallFunction(Details.ResetaGump)
Details:InstanceCallDetailsFunc(Details.FadeHandler.Fader, "IN", nil, "barras")
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse)
Details:InstanceCallDetailsFunc(Details.AtualizaSoloMode_AfertReset)
Details:InstanceCallDetailsFunc(Details.ResetaGump)
Details:RefreshMainWindow(-1, true)
end
+4 -4
View File
@@ -1374,10 +1374,10 @@ function SlashCmdList.DETAILS (msg, editbox)
--clear memory
collectgarbage()
Details:InstanciaCallFunction(Details.FadeHandler.Fader, "in", nil, "barras")
Details:InstanciaCallFunction(Details.UpdateCombatObjectInUse)
Details:InstanciaCallFunction(Details.AtualizaSoloMode_AfertReset)
Details:InstanciaCallFunction(Details.ResetaGump)
Details:InstanceCallDetailsFunc(Details.FadeHandler.Fader, "in", nil, "barras")
Details:InstanceCallDetailsFunc(Details.UpdateCombatObjectInUse)
Details:InstanceCallDetailsFunc(Details.AtualizaSoloMode_AfertReset)
Details:InstanceCallDetailsFunc(Details.ResetaGump)
Details:RefreshMainWindow(-1, true)
elseif (msg == "ej") then