Skip to content

Commit

Permalink
More fixes for patch 10.2 combatlog changes
Browse files Browse the repository at this point in the history
  • Loading branch information
Tercioo committed Nov 10, 2023
1 parent 60819b9 commit d95ff2b
Show file tree
Hide file tree
Showing 9 changed files with 38 additions and 40 deletions.
4 changes: 2 additions & 2 deletions boot.lua
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
local addonName, Details222 = ...
local version, build, date, tocversion = GetBuildInfo()

Details.build_counter = 12029
Details.alpha_build_counter = 12029 --if this is higher than the regular counter, use it instead
Details.build_counter = 12030
Details.alpha_build_counter = 12030 --if this is higher than the regular counter, use it instead
Details.dont_open_news = true
Details.game_version = version
Details.userversion = version .. " " .. Details.build_counter
Expand Down
1 change: 0 additions & 1 deletion classes/container_pets.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ local addonName, Details222 = ...

local UnitGUID = _G.UnitGUID
local UnitName = _G.UnitName
local GetUnitName = _G.GetUnitName
local IsInRaid = _G.IsInRaid
local IsInGroup = _G.IsInGroup
local GetNumGroupMembers = _G.GetNumGroupMembers
Expand Down
1 change: 0 additions & 1 deletion classes/custom_damagedone.lua
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ local IsInGroup = IsInGroup -- api local
local GetNumGroupMembers = GetNumGroupMembers -- api local
local _GetNumPartyMembers = GetNumPartyMembers or GetNumSubgroupMembers -- api local
local _GetNumRaidMembers = GetNumRaidMembers or GetNumGroupMembers -- api local
local _GetUnitName = GetUnitName -- api local

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--constants
Expand Down
1 change: 0 additions & 1 deletion classes/custom_healingdone.lua
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
local GetNumGroupMembers = GetNumGroupMembers -- api local
local _GetNumPartyMembers = GetNumPartyMembers or GetNumSubgroupMembers -- api local
local _GetNumRaidMembers = GetNumRaidMembers or GetNumGroupMembers -- api local
local _GetUnitName = GetUnitName -- api local

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--constants
Expand Down
10 changes: 5 additions & 5 deletions core/control.lua
Original file line number Diff line number Diff line change
Expand Up @@ -953,23 +953,23 @@
for i = 1, aliados-1 do
local role = UnitGroupRolesAssigned and UnitGroupRolesAssigned("party" .. i) or "DAMAGER"
if (role ~= "NONE" and UnitExists("party" .. i)) then
local name = GetUnitName("party" .. i, true)
Details.arena_table [name] = {role = role}
local unitName = Details:GetFullName("party" .. i)
Details.arena_table [unitName] = {role = role}
end
end

local role = UnitGroupRolesAssigned and UnitGroupRolesAssigned("player") or "DAMAGER"
if (role ~= "NONE") then
local name = GetUnitName("player", true)
Details.arena_table [name] = {role = role}
local playerName = Details:GetFullName("player")
Details.arena_table [playerName] = {role = role}
end

--enemies
local enemiesAmount = GetNumArenaOpponentSpecs and GetNumArenaOpponentSpecs() or 5
Details:Destroy(_detalhes.arena_enemies)

for i = 1, enemiesAmount do
local enemyName = _G.GetUnitName("arena" .. i, true)
local enemyName = Details:GetFullName("arena" .. i)
if (enemyName) then
_detalhes.arena_enemies[enemyName] = "arena" .. i
end
Expand Down
29 changes: 10 additions & 19 deletions core/gears.lua
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ local _detalhes = _G.Details
local addonName, Details222 = ...
local Loc = LibStub("AceLocale-3.0"):GetLocale ( "Details" )

local UnitName = UnitName
local UnitGUID = UnitGUID
local UnitGroupRolesAssigned = DetailsFramework.UnitGroupRolesAssigned
local select = select
Expand Down Expand Up @@ -465,7 +464,7 @@ function _detalhes:ResetSpecCache (forced)
local c_combat_dmg = _detalhes.tabela_vigente [1]
local c_combat_heal = _detalhes.tabela_vigente [2]
for i = 1, GetNumGroupMembers(), 1 do
local name = GetUnitName("raid" .. i, true)
local name = Details:GetFullName("raid" .. i)
local index = c_combat_dmg._NameIndexTable [name]
if (index) then
local actor = c_combat_dmg._ActorTable [index]
Expand Down Expand Up @@ -1753,29 +1752,23 @@ function Details.Database.StoreEncounter(combat)

if (UnitIsInMyGuild ("raid" .. i)) then
if (role == "DAMAGER" or role == "TANK") then
local player_name, player_realm = UnitName ("raid" .. i)
if (player_realm and player_realm ~= "") then
player_name = player_name .. "-" .. player_realm
end

local player_name = Details:GetFullName("raid" .. i)
local _, _, class = Details:GetUnitClassFull(player_name)

local damage_actor = damage_container_pool [damage_container_hash [player_name]]
if (damage_actor) then
local guid = UnitGUID(player_name) or UnitGUID(UnitName ("raid" .. i))
local guid = UnitGUID("raid" .. i)
this_combat_data.damage [player_name] = {floor(damage_actor.total), _detalhes.item_level_pool [guid] and _detalhes.item_level_pool [guid].ilvl or 0, class or 0}
end

elseif (role == "HEALER") then
local player_name, player_realm = UnitName ("raid" .. i)
if (player_realm and player_realm ~= "") then
player_name = player_name .. "-" .. player_realm
end
local player_name = Details:GetFullName("raid" .. i)

local _, _, class = Details:GetUnitClassFull(player_name)

local heal_actor = healing_container_pool [healing_container_hash [player_name]]
if (heal_actor) then
local guid = UnitGUID(player_name) or UnitGUID(UnitName ("raid" .. i))
local guid = UnitGUID("raid" .. i)
this_combat_data.healing [player_name] = {floor(heal_actor.total), _detalhes.item_level_pool [guid] and _detalhes.item_level_pool [guid].ilvl or 0, class or 0}
end
end
Expand Down Expand Up @@ -1822,7 +1815,7 @@ function Details.Database.StoreEncounter(combat)
my_role = "DAMAGER"
end
local raid_name = GetInstanceInfo()
local func = {_detalhes.OpenRaidHistoryWindow, _detalhes, raid_name, encounter_id, diff, my_role, guildName} --, 2, UnitName ("player")
local func = {_detalhes.OpenRaidHistoryWindow, _detalhes, raid_name, encounter_id, diff, my_role, guildName}
--local icon = {[[Interface\AddOns\Details\images\icons]], 16, 16, false, 434/512, 466/512, 243/512, 273/512}
local icon = {[[Interface\PvPRankBadges\PvPRank08]], 16, 16, false, 0, 1, 0, 1}

Expand Down Expand Up @@ -1966,7 +1959,6 @@ function ilvl_core:CalcItemLevel (unitid, guid, shout)
end

local average = item_level / item_amount
--print(UnitName (unitid), "ILVL:", average, unitid, "items:", item_amount)

--register
if (average > 0) then
Expand Down Expand Up @@ -2006,7 +1998,6 @@ function ilvl_core:CalcItemLevel (unitid, guid, shout)
if (talents [1]) then
_detalhes.cached_talents [guid] = talents
Details:SendEvent("UNIT_TALENTS", nil, unitid, talents, guid)
--print(UnitName (unitid), "talents:", unpack(talents))
end
end
--------------------------------------------------------------------------------------------------------
Expand Down Expand Up @@ -2103,7 +2094,7 @@ function ilvl_core:GetItemLevel (unitid, guid, is_forced, try_number)
--NotifyInspect (unitid)
end

local NotifyInspectHook = function(unitid)
local NotifyInspectHook = function(unitid) --not in use
local unit = unitid:gsub("%d+", "")

if ((IsInRaid() or IsInGroup()) and (_detalhes:GetZoneType() == "raid" or _detalhes:GetZoneType() == "party")) then
Expand Down Expand Up @@ -2144,14 +2135,14 @@ function ilvl_core:QueryInspect (unitName, callback, param1)

if (IsInRaid()) then
for i = 1, GetNumGroupMembers() do
if (GetUnitName("raid" .. i, true) == unitName) then
if (Details:GetFullName("raid" .. i, "none") == unitName) then
unitid = "raid" .. i
break
end
end
elseif (IsInGroup()) then
for i = 1, GetNumGroupMembers()-1 do
if (GetUnitName("party" .. i, true) == unitName) then
if (Details:GetFullName("party" .. i, "none") == unitName) then
unitid = "party" .. i
break
end
Expand Down
4 changes: 2 additions & 2 deletions core/parser.lua
Original file line number Diff line number Diff line change
Expand Up @@ -7154,7 +7154,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
actor.classe = classToken or "UNKNOW"

elseif (name ~= "Unknown" and type(name) == "string" and string.len(name) > 1) then
local guid = UnitGUID(name)
local guid = UnitGUID(Details:Ambiguate(name))
if (guid) then
local flag
if (Details.faction_id == faction) then --is from the same faction
Expand Down Expand Up @@ -7184,7 +7184,7 @@ local SPELL_POWER_PAIN = SPELL_POWER_PAIN or (PowerEnum and PowerEnum.Pain) or 1
actor.classe = classToken or "UNKNOW"

elseif (name ~= "Unknown" and type(name) == "string" and string.len(name) > 1) then
local guid = UnitGUID(name)
local guid = UnitGUID(Details:Ambiguate(name))
if (guid) then
local flag
if (Details.faction_id == faction) then --is from the same faction
Expand Down
26 changes: 18 additions & 8 deletions functions/classes.lua
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,8 @@ do
end
end

local _, _, _, toc = GetBuildInfo() --check game version to know which version of GetFullName to use

---return the class file name of the unit passed
local getFromCache = Details222.ClassCache.GetClassFromCache
local Ambiguate = Ambiguate
Expand All @@ -189,27 +191,35 @@ do
return classFileName
end

function Details:Ambiguate(unitName)
if (toc >= 100200) then
unitName = Ambiguate(unitName, "none")
end
return unitName
end

---return the class name, class file name and class id of the unit passed
function Details:GetUnitClassFull(unitId)
unitId = Ambiguate(unitId, "none")
local locClassName, classFileName, classId = UnitClass(unitId)
return locClassName, classFileName, classId
end

function Details:GetFullName(unitId)
--playerName, realmName = UnitFullName(unitId) --realm name already has spaces removed
--return playerName .. "-" .. realmName
local UnitFullName = UnitFullName
function Details:GetFullName(unitId, ambiguateString)
--UnitFullName is guarantee to return the realm name of the unit queried
local playerName, realmName = UnitFullName(unitId)
realmName = realmName:gsub("%s", "")

local playerName, realmName = UnitName(unitId)
playerName = playerName .. "-" .. realmName

if (not realmName) then
realmName = GetRealmName():gsub("%s", "")
if (ambiguateString) then
playerName = Ambiguate(playerName, ambiguateString)
end

return playerName .. "-" .. realmName
return playerName
end

local _, _, _, toc = GetBuildInfo() --check game version to know which version of GetFullName to use
if (toc < 100200) then
Details.GetFullName = Details.GetCLName
end
Expand Down
2 changes: 1 addition & 1 deletion functions/spec_augmentation.lua
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ local augmentationCache = Details222.SpecHelpers[1473].augmentation_cache

function augmentationFunctions.BuffIn(token, time, sourceSerial, sourceName, sourceFlags, targetSerial, targetName, targetFlags, targetFlags2, spellId, spellName, spellschool, auraType, amount)
if (spellId == 395152) then --ebom might on third parties
local auraName, texture, count, auraType, duration, expirationTime, sourceUnit, isStealable, nameplateShowPersonal, spellId, canApplyAura, isBossAura, isFromPlayerOrPlayerPet, nameplateShowAll, timeMod, v1, v2, v3, v4, v5 = Details:FindBuffCastedByUnitName(targetName, spellId, sourceName)
local auraName, texture, count, auraType, duration, expirationTime, sourceUnit, isStealable, nameplateShowPersonal, spellId, canApplyAura, isBossAura, isFromPlayerOrPlayerPet, nameplateShowAll, timeMod, v1, v2, v3, v4, v5 = Details:FindBuffCastedByUnitName(Ambiguate(targetName, "none"), spellId, Ambiguate(sourceName, "none"))
local attributeGained = v2

if (type(attributeGained) == "number") then
Expand Down

0 comments on commit d95ff2b

Please sign in to comment.