- Fixed pets with the owner name showing twice in the pet name.
- Fixed tooltips not showing pets for the end segment created after a mythic dungeon.
This commit is contained in:
@@ -4010,7 +4010,6 @@ function atributo_damage:MontaInfoDamageDone()
|
||||
info:SetTopRightTexts()
|
||||
end
|
||||
|
||||
|
||||
--> add pets
|
||||
local ActorPets = self.pets
|
||||
--local class_color = RAID_CLASS_COLORS [self.classe] and RAID_CLASS_COLORS [self.classe].colorStr
|
||||
@@ -5014,9 +5013,10 @@ end
|
||||
|
||||
function atributo_damage:r_connect_shadow (actor, no_refresh, combat_object)
|
||||
|
||||
--check if there's a custom combat, if not just use the overall container
|
||||
local host_combat = combat_object or _detalhes.tabela_overall
|
||||
|
||||
--> criar uma shadow desse ator se ainda n�o tiver uma
|
||||
--check if the host combat object has a shadow actor for this actor, if not, just create one new
|
||||
local overall_dano = host_combat [1]
|
||||
local shadow = overall_dano._ActorTable [overall_dano._NameIndexTable [actor.nome]]
|
||||
|
||||
@@ -5036,7 +5036,7 @@ end
|
||||
shadow.end_time = time()
|
||||
end
|
||||
|
||||
--> restaura a meta e indexes ao ator
|
||||
--check if need to restore meta tables and indexes for this actor
|
||||
if (not no_refresh) then
|
||||
_detalhes.refresh:r_atributo_damage (actor, shadow)
|
||||
end
|
||||
@@ -5049,7 +5049,12 @@ end
|
||||
|
||||
local tempo = end_time - actor.start_time
|
||||
shadow.start_time = shadow.start_time - tempo
|
||||
|
||||
|
||||
--> pets (add unique pet names)
|
||||
for _, petName in _ipairs (actor.pets) do
|
||||
DetailsFramework.table.addunique (shadow.pets, petName)
|
||||
end
|
||||
|
||||
--> total de dano (captura de dados)
|
||||
shadow.total = shadow.total + actor.total
|
||||
shadow.totalabsorbed = shadow.totalabsorbed + actor.totalabsorbed
|
||||
@@ -5114,7 +5119,7 @@ end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
--> copia o container de friendly fire (captura de dados)
|
||||
for target_name, ff_table in _pairs (actor.friendlyfire) do
|
||||
--> cria ou pega a shadow
|
||||
|
||||
@@ -1422,6 +1422,11 @@ end
|
||||
_detalhes.refresh:r_atributo_energy (actor, shadow)
|
||||
end
|
||||
|
||||
--> pets (add unique pet names)
|
||||
for _, petName in _ipairs (actor.pets) do
|
||||
DetailsFramework.table.addunique (shadow.pets, petName)
|
||||
end
|
||||
|
||||
--> total das energias (captura de dados)
|
||||
shadow.total = shadow.total + actor.total
|
||||
shadow.received = shadow.received + actor.received
|
||||
|
||||
@@ -2473,6 +2473,11 @@ end
|
||||
local tempo = end_time - actor.start_time
|
||||
shadow.start_time = shadow.start_time - tempo
|
||||
|
||||
--> pets (add unique pet names)
|
||||
for _, petName in _ipairs (actor.pets) do
|
||||
DetailsFramework.table.addunique (shadow.pets, petName)
|
||||
end
|
||||
|
||||
--> total de cura (captura de dados)
|
||||
shadow.total = shadow.total + actor.total
|
||||
--> total de overheal (captura de dados)
|
||||
|
||||
@@ -2473,6 +2473,11 @@ function atributo_misc:r_connect_shadow (actor, no_refresh, combat_object)
|
||||
if (not no_refresh) then
|
||||
_detalhes.refresh:r_atributo_misc (actor, shadow)
|
||||
end
|
||||
|
||||
--> pets (add unique pet names)
|
||||
for _, petName in _ipairs (actor.pets) do
|
||||
DetailsFramework.table.addunique (shadow.pets, petName)
|
||||
end
|
||||
|
||||
if (actor.spell_cast) then
|
||||
if (not shadow.spell_cast) then
|
||||
|
||||
@@ -18,6 +18,8 @@
|
||||
local _ipairs = ipairs --lua local
|
||||
local _pairs = pairs --lua local
|
||||
|
||||
local AddUnique = DetailsFramework.table.addunique --framework
|
||||
|
||||
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
--> constants
|
||||
|
||||
@@ -485,7 +487,6 @@
|
||||
|
||||
if (container_pets [serial]) then --> � um pet reconhecido
|
||||
--[[statistics]]-- _detalhes.statistics.container_pet_calls = _detalhes.statistics.container_pet_calls + 1
|
||||
|
||||
local nome_dele, dono_nome, dono_serial, dono_flag = _detalhes.tabela_pets:PegaDono (serial, nome, flag)
|
||||
if (nome_dele and dono_nome) then
|
||||
nome = nome_dele
|
||||
@@ -541,7 +542,7 @@
|
||||
read_actor_flag (novo_objeto, dono_do_pet, serial, flag, nome, "damage")
|
||||
|
||||
if (dono_do_pet) then
|
||||
dono_do_pet.pets [#dono_do_pet.pets+1] = nome
|
||||
AddUnique (dono_do_pet.pets, nome)
|
||||
end
|
||||
|
||||
if (self.shadow) then
|
||||
@@ -575,7 +576,7 @@
|
||||
read_actor_flag (novo_objeto, dono_do_pet, serial, flag, nome, "heal")
|
||||
|
||||
if (dono_do_pet) then
|
||||
dono_do_pet.pets [#dono_do_pet.pets+1] = nome
|
||||
AddUnique (dono_do_pet.pets, nome)
|
||||
end
|
||||
|
||||
if (self.shadow) then
|
||||
@@ -602,7 +603,7 @@
|
||||
read_actor_flag (novo_objeto, dono_do_pet, serial, flag, nome, "energy")
|
||||
|
||||
if (dono_do_pet) then
|
||||
dono_do_pet.pets [#dono_do_pet.pets+1] = nome
|
||||
AddUnique (dono_do_pet.pets, nome)
|
||||
end
|
||||
|
||||
if (novo_objeto.classe == "UNGROUPPLAYER") then --> is a player
|
||||
@@ -620,11 +621,9 @@
|
||||
|
||||
local shouldScanOnce = get_actor_class (novo_objeto, nome, flag, serial)
|
||||
read_actor_flag (novo_objeto, dono_do_pet, serial, flag, nome, "misc")
|
||||
|
||||
--local teste_classe =
|
||||
|
||||
|
||||
if (dono_do_pet) then
|
||||
dono_do_pet.pets [#dono_do_pet.pets+1] = nome
|
||||
AddUnique (dono_do_pet.pets, nome)
|
||||
end
|
||||
|
||||
if (novo_objeto.classe == "UNGROUPPLAYER") then --> is a player
|
||||
|
||||
@@ -43,7 +43,19 @@ function container_pets:PegaDono (pet_serial, pet_nome, pet_flags)
|
||||
--> buscar pelo pet no container de pets
|
||||
local busca = self.pets [pet_serial]
|
||||
if (busca) then
|
||||
return pet_nome .." <"..busca[1]..">", busca[1], busca[2], busca[3] --> [1] dono nome [2] dono serial [3] dono flag
|
||||
|
||||
--in merging operations, make sure to not add the owner name a second time in the name
|
||||
|
||||
--check if the pet name already has the owner name in, if not, add it
|
||||
if (not pet_nome:find ("<")) then
|
||||
--get the owner name
|
||||
local ownerName = busca[1]
|
||||
--add the owner name to the pet name
|
||||
pet_nome = pet_nome .. " <".. ownerName ..">"
|
||||
end
|
||||
|
||||
return pet_nome, busca[1], busca[2], busca[3] --> [1] dono nome [2] dono serial [3] dono flag
|
||||
|
||||
end
|
||||
|
||||
--> buscar pelo pet na raide
|
||||
@@ -93,7 +105,12 @@ function container_pets:PegaDono (pet_serial, pet_nome, pet_flags)
|
||||
|
||||
if (dono_nome) then
|
||||
self.pets [pet_serial] = {dono_nome, dono_serial, dono_flags, _detalhes._tempo, true} --> adicionada a flag emulada
|
||||
return pet_nome .." <"..dono_nome..">", dono_nome, dono_serial, dono_flags
|
||||
|
||||
if (not pet_nome:find ("<")) then
|
||||
pet_nome = pet_nome .. " <".. dono_nome ..">"
|
||||
end
|
||||
|
||||
return pet_nome, dono_nome, dono_serial, dono_flags
|
||||
else
|
||||
|
||||
if (pet_flags and _bit_band (pet_flags, OBJECT_TYPE_PET) ~= 0) then --> � um pet
|
||||
@@ -225,8 +242,9 @@ end
|
||||
function _detalhes:LimparPets()
|
||||
--> elimina pets antigos
|
||||
local _new_PetTable = {}
|
||||
--> minimum of 90 minutes to clean a pet from the pet table data
|
||||
for PetSerial, PetTable in _pairs (_detalhes.tabela_pets.pets) do
|
||||
if ( (PetTable[4] + _detalhes.intervalo_coleta > _detalhes._tempo + 1) or (PetTable[5] and PetTable[4] + 43200 > _detalhes._tempo) ) then
|
||||
if ( (PetTable[4] + 5400 > _detalhes._tempo + 1) or (PetTable[5] and PetTable[4] + 43200 > _detalhes._tempo) ) then
|
||||
_new_PetTable [PetSerial] = PetTable
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user