From f9ec234b050a7709fc2aea5ece539b952b10bdfd Mon Sep 17 00:00:00 2001 From: F16Gaming Date: Mon, 19 Dec 2011 04:13:07 +0100 Subject: [PATCH] Fixed major bug: Kills not being tracked. FIXED: Now properly tracks kills again (damn you blizzard and your stupid API). --- KillTrack.lua | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/KillTrack.lua b/KillTrack.lua index 333937e..848f7aa 100644 --- a/KillTrack.lua +++ b/KillTrack.lua @@ -40,6 +40,8 @@ local KT = KillTrack local KTT = KillTrack_Tools +local DamageTrack = {} + if KT.Version == "@" .. "project-version" .. "@" then KT.Version = "Development" end @@ -81,18 +83,23 @@ end function KT.Events.COMBAT_LOG_EVENT_UNFILTERED(self, ...) local event = (select(2, ...)) + if event == "SWING_DAMAGE" or event == "RANGED_DAMAGE" or event == "SPELL_DAMAGE" then + local s_name = tostring((select(5, ...))) + local t_id = tonumber(KTT:GUIDToID((select(8, ...)))) + DamageTrack[t_id] = s_name + end if event ~= "UNIT_DIED" then return end -- Perform solo/group checks - local source = tostring((select(5, ...))) + local id = KTT:GUIDToID((select(8, ...))) + local name = tostring((select(9, ...))) + local lastDamage = DamageTrack[id] or "" local pass if self.Global.COUNT_GROUP then - pass = self:IsInGroup(source) + pass = self:IsInGroup(lastDamage) else - pass = UnitName("player") == source + pass = UnitName("player") == lastDamage end if not pass then return end - local id = KTT:GUIDToID((select(8, ...))) - local name = tostring((select(9, ...))) if id == 0 then return end self:AddKill(id, name) if self.Timer:IsRunning() then -- 1.7.9.5