fix for DotDotDot to work with patch 3.0.2 #1


  • New
  • Patch
Open
Assigned to _ForgeUser1097915
  • _ForgeUser1296580 created this issue Oct 24, 2008

    What does the provided patch do?

    These changes will fix the problems with the reported time being wrong and showing other players' DoTs that were caused by the changes to the ShowDebuff function in the WoW 3.0.2 patch "Echoes of Doom". (See http://forums.worldofwarcraft.com/thread.html?topicId=10043170854&sid=1 for description of the changes to the API in 3.0.2.)

    Please provide any additional information below.

    To fix DotDotDot in the most recent release r74120.11, replace the UpdateDebuffs function in core.lua with the following:

    function DotDotDot:UpdateDebuffs(unit)
        self = DotDotDot
        if (UnitExists(unit)) then
            for num = 1, 40 do
                local name, rank, icon, count, debuffType, duration, expirationTime, isMine, isStealable = UnitDebuff(unit, num)
                if (isMine) then
                    if (duration) then
                        if (self.shortcode[name]) then
                            local guid = (UnitGUID(unit) .. "-" .. self.shortcode[name])
                            local timeLeft = expirationTime - GetTime()
                            if unit == "target" then
                                self:ShowCandyBar(self.shortcode[name].." - "..(UnitName(unit) or ""), guid, timeLeft, BS:GetSpellIcon(name), true, self.db.profile.highcolor)
                            else
                                self:ShowCandyBar(self.shortcode[name].." - "..(UnitName(unit) or ""), guid, timeLeft, BS:GetSpellIcon(name), false, self.db.profile.basecolor)
                            end
                        end
                    end
                end
            end
        end
    end

    Or, implement this list of changes (to the original DotDotDot r74120.11 core.lua):
    line 392: replace line with "local name, rank, icon, count, debuffType, duration, expirationTime, isMine, isStealable = UnitDebuff(unit, num)"
    line 393: replace line with "if (isMine) then"
    line 396: insert prefix "local "
    line 397: add new line "local timeLeft = expirationTime - GetTime()"
    line 405: add new line "end"

  • _ForgeUser1296580 added the tags New Patch Oct 24, 2008

To post a comment, please login or register a new account.