PitBull Unit Frames 4.0
PitBull Unit Frames 4.0
Woof. Arf. Yip.
Getting Started:
You can help translate PitBull for your language with the localization tool.
Classic
PitBull works with WoW Classic! Classic Era/Vanilla is supported in
v4.3.x-vanilla releases. Cataclysm Classic is supported in v4.2.x releases
(the same releases retail use).
Classic Era caveats:
- Aura duration is not available from the API, so PitBull uses LibClassicDurations to show them. The duration can be inaccurate if it's affected by rank or talents.
- Cast info is only available for your spells from the API. PitBull uses LibClassicCasterino to show cast bars for other units, but this can be inaccurate since there is a lot of guess-work involved.
Download
CurseForge: https://www.curseforge.com/wow/addons/pitbull-unit-frames-4-0
Wago: https://addons.wago.io/addons/pitbull4
WoWInterface: https://www.wowinterface.com/downloads/info20021
-
View User Profile
-
Send Message
Posted Jul 27, 2016Thank you for fixing the DK runes (if you got the time can you make it so it shows the spec specific runes instead of death runes? ie frost runes for frost etc)
Also for some reason the totem bar is showing on my druid
-
View User Profile
-
Send Message
Posted Jul 27, 2016There is only one kind of rune now.
-
View User Profile
-
Send Message
Posted Jul 28, 2016I thought they still had the spec colors tho, I was wrong. Any way to change the color then? The constant pink gets a bit annoying.
-
View User Profile
-
Send Message
Posted Jul 27, 2016great addon!^^ big thanks ! :)
add "[81749] = true, -- Atonement"
\Interface\Addons\PitBull4_Aura\Filter.lua
-- PRIEST
friend_buffs.PRIEST = {
[121557] = true, -- Angelic Feather
[152118] = true, -- Clarity of Will
[47753] = not legion_700 or nil, -- Divine Aegis
[64843] = true, -- Divine Hymn
[77489] = true, -- Echo of Light
[157146] = not legion_700 or nil, -- Enhanced Leap of Faith
[6346] = not legion_700 or nil, -- Fear Ward
[47788] = true, -- Guardian Spirit
[1706] = true, -- Levitate
[7001] = not legion_700 or nil, -- Lightwell Renew
[49868] = not legion_700 or nil, -- Mind Quickening
[81782] = true, -- Power Word: Barrier
[21562] = not legion_700 or nil, -- Power Word: Fortitude
[17] = true, -- Power Word: Shield
[123258] = true, -- Power Word: Shield (Divine Insight)
[21562] = not legion_700 or nil, -- Prayer of Fortitude
[33206] = true, -- Pain Suppression
[41635] = true, -- Prayer of Mending
[123262] = not legion_700 or nil, -- Prayer of Mending (Divine Insight)
[139] = true, -- Renew
[81749] = true, -- Atonement
}
-
View User Profile
-
Send Message
Posted Jul 27, 2016Is there a way to offset combo points, chi and holy power from the point ?
If not is it possible to add one ?
Thanks
-
View User Profile
-
Send Message
Posted Jul 26, 2016For some reason the icons for debuffs on the target frame are just blank/black with the timer in the middle.
EDIT: appears to be a conflict with masque
-
View User Profile
-
Send Message
Posted Jul 25, 2016On my Warlock, only 4 Soul Shard icons are displayed, instead of the correct 5.
Everything else seems to be functioning correctly.
-
View User Profile
-
Send Message
Posted Jul 25, 2016Actually, just fixed this myself. Here's the code for SoulShards.lua
if select(5, GetAddOnInfo("PitBull4_" .. (debugstack():match("[o%.][d%.][u%.]les\\(.-)\\") or ""))) ~= "MISSING" then return end if select(2, UnitClass("player")) ~= "WARLOCK" then return end local PitBull4 = _G.PitBull4 if not PitBull4 then error("PitBull4_SoulShards requires PitBull4") end -- CONSTANTS ---------------------------------------------------------------- local STANDARD_SIZE = 15 local BORDER_SIZE = 3 local SPACING = 3 local HALF_STANDARD_SIZE = STANDARD_SIZE / 2 local CONTAINER_HEIGHT = STANDARD_SIZE + BORDER_SIZE * 2 ----------------------------------------------------------------------------- local L = PitBull4.L local PitBull4_SoulShards = PitBull4:NewModule("SoulShards", "AceEvent-3.0") PitBull4_SoulShards:SetModuleType("indicator") PitBull4_SoulShards:SetName(L["Soul shards"]) PitBull4_SoulShards:SetDescription(L["Show Warlock Soul shards."]) PitBull4_SoulShards:SetDefaults({ attach_to = "root", location = "out_top", position = 1, vertical = false, click_through = false, size = 1.5, background_color = { 0, 0, 0, 0.5 } }) function PitBull4_SoulShards:OnEnable() self:RegisterEvent("UNIT_POWER_FREQUENT") self:RegisterEvent("UNIT_DISPLAYPOWER") self:RegisterEvent("PLAYER_ENTERING_WORLD") end local function update_player(self) for frame in PitBull4:IterateFramesForUnitID("player") do self:Update(frame) end end function PitBull4_SoulShards:UNIT_POWER_FREQUENT(event, unit, power_type) if unit ~= "player" or power_type ~= "SOUL_SHARDS" then return end update_player(self) end function PitBull4_SoulShards:UNIT_DISPLAYPOWER(event, unit) if unit ~= "player" then return end update_player(self) end function PitBull4_SoulShards:PLAYER_ENTERING_WORLD(event) update_player(self) end function PitBull4_SoulShards:ClearFrame(frame) local container = frame.SoulShards if not container then return false end for i = 1, 5 do container[i] = container[i]:Delete() end container.bg = container.bg:Delete() frame.SoulShards = container:Delete() return true end local function update_container_size(container, vertical, max_shards) local width = STANDARD_SIZE * max_shards + BORDER_SIZE * 2 + SPACING * (max_shards - 1) if not vertical then container:SetWidth(width) container:SetHeight(CONTAINER_HEIGHT) container.height = 1 else container:SetWidth(CONTAINER_HEIGHT) container:SetHeight(width) container.height = width / CONTAINER_HEIGHT end container.max_shards = max_shards end function PitBull4_SoulShards:UpdateFrame(frame) if frame.unit ~= "player" then return self:ClearFrame(frame) end local db = self:GetLayoutDB(frame) local vertical = db.vertical local container = frame.SoulShards if not container then container = PitBull4.Controls.MakeFrame(frame) frame.SoulShards = container container:SetFrameLevel(frame:GetFrameLevel() + 13) for i = 1, 5 do local soul_shard = PitBull4.Controls.MakeSoulShard(container, i) container[i] = soul_shard soul_shard:UpdateTexture() soul_shard:ClearAllPoints() soul_shard:EnableMouse(not db.click_through) if not vertical then soul_shard:SetPoint("CENTER", container, "LEFT", BORDER_SIZE + (i - 1) * (SPACING + STANDARD_SIZE) + HALF_STANDARD_SIZE, 0) else soul_shard:SetPoint("CENTER", container, "BOTTOM", 0, BORDER_SIZE + (i - 1) * (SPACING + STANDARD_SIZE) + HALF_STANDARD_SIZE) end end update_container_size(container, vertical, 5) local bg = PitBull4.Controls.MakeTexture(container, "BACKGROUND") container.bg = bg bg:SetColorTexture(unpack(db.background_color)) bg:SetAllPoints(container) end local num_soul_shards = UnitPower("player", SPELL_POWER_SOUL_SHARDS) local max_shards = UnitPowerMax("player", SPELL_POWER_SOUL_SHARDS) if max_shards ~= container.max_shards then update_container_size(container, vertical, max_shards) end for i = 1, 5 do local soul_shard = container[i] if i > max_shards then soul_shard:Hide() elseif i <= num_soul_shards then soul_shard:Show() soul_shard:Activate() else soul_shard:Show() soul_shard:Deactivate() end end container:Show() return true end PitBull4_SoulShards:SetLayoutOptionsFunction(function(self) return 'vertical', { type = 'toggle', name = L["Vertical"], desc = L["Show the icons stacked vertically instead of horizontally."], get = function(info) return PitBull4.Options.GetLayoutDB(self).vertical end, set = function(info, value) PitBull4.Options.GetLayoutDB(self).vertical = value for frame in PitBull4:IterateFramesForUnitID("player") do self:Clear(frame) self:Update(frame) end end, order = 100, }, 'click_through', { type = 'toggle', name = L["Click-through"], desc = L["Disable capturing clicks on icons, allowing the click to fall through to the window underneath the icon."], get = function(info) return PitBull4.Options.GetLayoutDB(self).click_through end, set = function(info, value) PitBull4.Options.GetLayoutDB(self).click_through = value for frame in PitBull4:IterateFramesForUnitID("player") do self:Clear(frame) self:Update(frame) end end, order = 101, }, 'background_color', { type = 'color', hasAlpha = true, name = L["Background color"], desc = L["The background color behind the icons."], get = function(info) return unpack(PitBull4.Options.GetLayoutDB(self).background_color) end, set = function(info, r, g, b, a) local color = PitBull4.Options.GetLayoutDB(self).background_color color[1], color[2], color[3], color[4] = r, g, b, a for frame in PitBull4:IterateFramesForUnitID("player") do self:Clear(frame) self:Update(frame) end end, order = 103, } end)-
View User Profile
-
Send Message
Posted Jul 25, 2016You need to fix the rune display for DK asap, It's not showing and I get lag spikes if I have it on and use a rune using ability. (Besides that it also seems to make my fps drop to 20)
-
View User Profile
-
Send Message
Posted Jul 24, 2016I am having trouble with this addon ever since the update, but Only for DK. All other classes are fine, but for some reason the DK is broken. This is what it should look like. This is what it looks like on DK. Any idea what is going on here?
-
View User Profile
-
Send Message
Posted Jul 24, 2016I'm also having problems on my DK only. The player unit frames aren't working properly with no text showing.
-
View User Profile
-
Send Message
Posted Jul 25, 2016This is because the Rune Module is currently broken, In the PitBull options go to Layout editor > Indicators > Runes and untick the Enable box, this will fix the healthbar text etc but you'll have to find another way to display your runes until this issue is fixed.
-
View User Profile
-
Send Message
Posted Jul 26, 2016You are the best, I use magic runes anyways so its perfect for me, thank you so much!
-
View User Profile
-
Send Message
Posted Jul 27, 2016Disabling the runes worked for me a few days ago; after updating 2 days ago, however, the DK is back to having blank unit frames on all her units, and disabling the runes via the in-game config or before fully logging in does nothing anymore. Any ideas? She's my main, and it makes it really hard to play with blank unit frames; I don't want to have to stop using Pitbull. Trying to copy another toon's profile does not work either, and in fact, I can't log into any other toon and save their individual profile under their name-I have to choose "default" to get each toon's setup to work.
-
View User Profile
-
Send Message
Posted Jul 27, 2016Also, it is working correctly on my DK on another server. It is ONLY my main, of my many toons on many servers, that is having this issue. IDK if this has anything to do with it, but there are no options in the text selection dropdown under the layout editor for this toon:
http://imgur.com/a/CDYNU
-
View User Profile
-
Send Message
Posted Jul 27, 2016Well, problem solved-I had to enable every single Pitbull dependency to show text on my unit frames, which I don't have to do on any other toon. I don't load warlock shards on my hunter, for example, but I had to on my DK main. W/E!
FYI!
-
View User Profile
-
Send Message
Posted Jul 24, 2016hmm, i'm trying to figure out the portrait option, before the patch i had it enabled and now even though it's enabled, it still doesn't display a portrait.
anyone know if i'm missing something? in one of the setting?
-
View User Profile
-
Send Message
Posted Jul 24, 2016Not sure if this is a Pitbull bug or some change Blizzard made that I need to turn off somewhere (couldn't find an option though). Besides dungeon bosses showing up as my target unit frame, I get default WoW unit frames for bosses along the right side of the screen since 7.x. I'm running the latest version of Pitbull.
-
View User Profile
-
Send Message
Posted Jul 24, 2016Go into the hide blizzard frames module and check next to boss
-
View User Profile
-
Send Message
Posted Jul 25, 2016