Better options for Real Time DPS

- Removed 'Real Time DPS' from the time measure dropdown.
- Added "Show 'Real Time' DPS" toggle to show real time dps while in combat.
- Added "Order Bars By Real Time DPS" toggle to order bars by the amount of real time dps.
- Added "Always Use Real Time in Arenas" toggle to always use real time dps in Arenas.
- Added .last_dps_realtime to player actors, caches the latest real time dps calculated.
This commit is contained in:
Tercio Jose
2023-07-24 16:43:34 -03:00
parent ae490f434d
commit 762c80669d
51 changed files with 2300 additions and 887 deletions
+322 -238
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -213,7 +213,7 @@ function healingClass:RefreshWindow (instancia, tabela_do_combate, forcar, expor
--no h barras para mostrar -- not have something to show
if (#showing._ActorTable < 1) then --no h barras para mostrar
--colocado isso recentemente para fazer as barras de dano sumirem na troca de atributo
return _detalhes:EsconderBarrasNaoUsadas (instancia, showing), "", 0, 0
return _detalhes:HideBarsNotInUse(instancia, showing), "", 0, 0
end
--total
@@ -309,7 +309,7 @@ function healingClass:RefreshWindow (instancia, tabela_do_combate, forcar, expor
end
if (#conteudo < 1) then
return _detalhes:EsconderBarrasNaoUsadas (instancia, showing), "", 0, 0
return _detalhes:HideBarsNotInUse(instancia, showing), "", 0, 0
end
_detalhes:ContainerSortHeal (conteudo, nil, keyName)
@@ -1992,7 +1992,7 @@ function healingClass:MontaInfoHealingDone()
local actorCombatTime
if (Details.time_type == 1 or not actorObject.grupo) then
actorCombatTime = actorObject:Tempo()
elseif (Details.time_type == 2 or Details.time_type == 3) then
elseif (Details.time_type == 2 or Details.use_realtimedps) then
actorCombatTime = breakdownWindowFrame.instancia.showing:GetCombatTime()
end
+2 -2
View File
@@ -3273,7 +3273,7 @@ local function GetDpsHps (_thisActor, key)
if (_thisActor [keyname]) then
return _thisActor [keyname]
else
if ((Details.time_type == 2 and _thisActor.grupo) or not Details:CaptureGet("damage") or Details.time_type == 3) then
if ((Details.time_type == 2 and _thisActor.grupo) or not Details:CaptureGet("damage") or Details.use_realtimedps) then
local dps = _thisActor.total / _thisActor:GetCombatTime()
_thisActor [keyname] = dps
return dps
@@ -3788,7 +3788,7 @@ function Details:envia_relatorio (linhas, custom)
end
--effective ou active time
if (Details.time_type == 2 or Details.time_type == 3) then
if (Details.time_type == 2 or Details.use_realtimedps) then
linhas[1] = linhas[1] .. " [" .. segmentTime .. " EF]"
else
linhas[1] = linhas[1] .. " [" .. segmentTime .. " AC]"
+1 -1
View File
@@ -283,7 +283,7 @@ function atributo_energy:RefreshWindow (instancia, tabela_do_combate, forcar, ex
local showing = tabela_do_combate [class_type]
if (#showing._ActorTable < 1) then --no h barras para mostrar
return _detalhes:EsconderBarrasNaoUsadas (instancia, showing), "", 0, 0
return _detalhes:HideBarsNotInUse(instancia, showing), "", 0, 0
end
local total = 0
+1 -1
View File
@@ -652,7 +652,7 @@ function atributo_misc:RefreshWindow(instance, combatObject, bIsForceRefresh, bI
local utilityActorContainer = combatObject[class_type]
if (#utilityActorContainer._ActorTable < 1) then --no h barras para mostrar
return _detalhes:EsconderBarrasNaoUsadas (instance, utilityActorContainer), "", 0, 0
return _detalhes:HideBarsNotInUse(instance, utilityActorContainer), "", 0, 0
end
local total = 0