Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- !!! DRAGONS BELOW !!!
- ]]
- -- Kill Interface Options
- TukuiDB.Kill(InterfaceOptionsRaidFramePanelRaidFrameHeightSlider)
- TukuiDB.Kill(InterfaceOptionsRaidFramePanelRaidFrameWidthSlider)
- TukuiDB.Kill(InterfaceOptionsRaidFramePanelDisplayBorder)
- TukuiDB.Kill(InterfaceOptionsRaidFramePanelDisplayClassColor)
- -- Kill Crappy Borders
- TukuiDB.Kill(CompactPartyFrameBorderFrame)
- for i = 1, MEMBERS_PER_RAID_GROUP do
- TukuiDB.Kill( _G["CompactPartyFrameMember"..i.."HorizTopBorder"])
- TukuiDB.Kill(_G["CompactPartyFrameMember"..i.."HorizBottomBorder"])
- TukuiDB.Kill(_G["CompactPartyFrameMember"..i.."VertLeftBorder"])
- TukuiDB.Kill(_G["CompactPartyFrameMember"..i.."VertRightBorder"])
- TukuiDB.Kill(_G["CompactPartyFrameMember"..i.."HorizDivider"])
- end
- local vertical_groups = false
- hooksecurefunc("DefaultCompactUnitFrameSetup", function(frame)
- -- pull from the blizzard settings in-game
- local options = DefaultCompactUnitFrameSetupOptions
- -- frame settings
- local healthheight = 30
- local powerheight = 0
- if options.displayPowerBar == true then
- powerheight = 5
- end
- frame:SetSize(100, healthheight+powerheight)
- -- health bar
- frame.healthBar:SetStatusBarTexture(TukuiCF["general"].game_texture)
- frame.healthBar:SetHeight(healthheight)
- frame.healthBar:ClearAllPoints()
- frame.healthBar:SetPoint("TOPLEFT", frame, "TOPLEFT")
- frame.healthBar:SetPoint("TOPRIGHT", frame, "TOPRIGHT")
- if (not frame.bg) then
- frame.bg = CreateFrame("Frame", nil, frame)
- TukuiDB.CreatePanel(frame.bg, 1, 1, "BOTTOMLEFT", frame.healthBar, "BOTTOMLEFT", TukuiDB.Scale(-2), TukuiDB.Scale(-2))
- frame.bg:SetPoint("TOPRIGHT", frame.healthBar, "TOPRIGHT", TukuiDB.Scale(2), TukuiDB.Scale(2))
- end
- -- power bar
- frame.powerBar:SetStatusBarTexture(TukuiCF["general"].game_texture)
- frame.powerBar:SetHeight(powerheight)
- frame.powerBar:ClearAllPoints()
- frame.powerBar:SetPoint("TOPLEFT", frame.healthBar, "BOTTOMLEFT", 0, -7)
- frame.powerBar:SetPoint("TOPRIGHT", frame.healthBar, "BOTTOMRIGHT", 0, -7)
- if (not frame.powerBarBg) then
- frame.powerBarBg = CreateFrame("Frame", nil, frame.powerBar)
- TukuiDB.CreatePanel(frame.powerBarBg, 1, 1, "BOTTOMLEFT", frame.powerBar, "BOTTOMLEFT", TukuiDB.Scale(-2), TukuiDB.Scale(-2))
- frame.powerBarBg:SetPoint("TOPRIGHT", frame.powerBar, "TOPRIGHT", TukuiDB.Scale(2), TukuiDB.Scale(2))
- end
- frame.background:Hide()
- frame.myHealPredictionBar:SetStatusBarTexture(TukuiCF["general"].game_texture)
- frame.otherHealPredictionBar:SetStatusBarTexture(TukuiCF["general"].game_texture)
- -- ready check
- frame.readyCheckIcon:ClearAllPoints()
- frame.readyCheckIcon:SetPoint("RIGHT", frame, "RIGHT", -3, 0)
- frame.readyCheckIcon:SetSize(15, 15)
- -- unit name
- frame.name:SetPoint("TOPLEFT", frame.roleIcon, "TOPRIGHT", 0, 2)
- frame.name:SetFont(TukuiCF["fonts"].unitframe_font, TukuiCF["fonts"].unitframe_font_size, TukuiCF["fonts"].unitframe_font_style)
- frame.name:SetShadowOffset(TukuiCF["fonts"].unitframe_font_shadow and 1 or 0, TukuiCF["fonts"].unitframe_font_shadow and -1 or 0)
- -- unit status text
- frame.statusText:ClearAllPoints()
- frame.statusText:SetPoint("CENTER", frame.healthBar, "CENTER", 0, 0)
- frame.statusText:SetFont(TukuiCF["fonts"].unitframe_font, TukuiCF["fonts"].unitframe_font_size, TukuiCF["fonts"].unitframe_font_style)
- frame.statusText:SetShadowOffset(TukuiCF["fonts"].unitframe_font_shadow and 1 or 0, TukuiCF["fonts"].unitframe_font_shadow and -1 or 0)
- -- buffs
- CompactUnitFrame_SetMaxBuffs(frame, 6)
- CompactUnitFrame_SetMaxDebuffs(frame, 6)
- frame.buffFrames[1]:ClearAllPoints()
- frame.buffFrames[1]:SetPoint("TOPRIGHT", frame, "TOPLEFT", -6, -1)
- for i = 1, frame.maxBuffs do
- if (not frame.buffFrames[i]) then
- frame.buffFrames[i] = CreateFrame("Button", frame:GetName() .. "Buff" .. i, frame, "CompactBuffTemplate")
- end
- if ( not frame.buffFrames[i].bg ) then
- frame.buffFrames[i].bg = CreateFrame("Frame", frame.buffFrames[i]:GetName() .. "BG", frame.buffFrames[i])
- TukuiDB.CreatePanel(frame.buffFrames[i].bg, 1, 1, "BOTTOMLEFT", frame.buffFrames[i], "BOTTOMLEFT", TukuiDB.Scale(-2), TukuiDB.Scale(-2))
- frame.buffFrames[i].bg:SetPoint("TOPRIGHT", frame.buffFrames[i], "TOPRIGHT", TukuiDB.Scale(2), TukuiDB.Scale(2))
- frame.buffFrames[i].bg:SetFrameStrata("LOW")
- frame.buffFrames[i].bg:SetFrameLevel(3)
- frame.buffFrames[i].icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
- end
- _G[frame:GetName().."Buff"..i.."Cooldown"]:SetFrameStrata("MEDIUM")
- if ( i > 1 ) then
- frame.buffFrames[i]:ClearAllPoints()
- if ((i/2) == math.ceil(i/2)) then
- frame.buffFrames[i]:SetPoint("TOP", frame.buffFrames[i - 1], "BOTTOM", 0, -7)
- else
- frame.buffFrames[i]:SetPoint("RIGHT", frame.buffFrames[i - 2], "LEFT", -7, 0)
- end
- end
- local size = ((frame:GetHeight()-1)/2) - 4
- frame.buffFrames[i]:SetSize(size, size)
- end
- frame.debuffFrames[1]:ClearAllPoints()
- frame.debuffFrames[1]:SetPoint("TOPLEFT", frame, "TOPRIGHT", 6, -1)
- for i = 1, frame.maxDebuffs do
- if (not frame.debuffFrames[i]) then
- frame.debuffFrames[i] = CreateFrame("Button", frame:GetName() .. "Debuff" .. i, frame, "CompactDebuffTemplate")
- end
- if ( not frame.debuffFrames[i].bg ) then
- frame.debuffFrames[i].bg = CreateFrame("Frame", frame.debuffFrames[i]:GetName() .. "BG", frame.debuffFrames[i])
- TukuiDB.CreatePanel(frame.debuffFrames[i].bg, 1, 1, "BOTTOMLEFT", frame.debuffFrames[i], "BOTTOMLEFT", TukuiDB.Scale(-2), TukuiDB.Scale(-2))
- frame.debuffFrames[i].bg:SetPoint("TOPRIGHT", frame.debuffFrames[i], "TOPRIGHT", TukuiDB.Scale(2), TukuiDB.Scale(2))
- frame.debuffFrames[i].bg:SetFrameStrata("LOW")
- frame.debuffFrames[i].bg:SetFrameLevel(3)
- frame.debuffFrames[i].icon:SetTexCoord(0.1, 0.9, 0.1, 0.9)
- frame.debuffFrames[i].border:Hide()
- end
- _G[frame:GetName().."Debuff"..i.."Cooldown"]:SetFrameStrata("MEDIUM")
- if ( i > 1 ) then
- frame.debuffFrames[i]:ClearAllPoints()
- frame.debuffFrames[i]:SetPoint("LEFT", frame.debuffFrames[i - 1], "RIGHT", 7, 0)
- end
- frame.debuffFrames[i].baseSize = frame:GetHeight() - 2
- end
- -- anchor frames
- for i = 2, MEMBERS_PER_RAID_GROUP do
- local uf = _G["CompactPartyFrameMember" .. i]
- local prev = _G["CompactPartyFrameMember" .. (i - 1)]
- if options.displayPowerBar == true then
- if vertical_groups == true then
- uf:SetPoint("TOP", prev, "BOTTOM", 0, -16)
- else
- uf:SetPoint("TOPLEFT", prev, "TOPRIGHT", 8, 0)
- end
- else
- if vertical_groups == true then
- uf:SetPoint("TOP", prev, "BOTTOM", 0, -8)
- else
- uf:SetPoint("TOPLEFT", prev, "TOPRIGHT", 8, 0)
- end
- end
- end
- end)
- hooksecurefunc("CompactUnitFrame_UpdateHealthColor", function(frame)
- local r, g, b
- local localizedClass, englishClass = UnitClass(frame.unit)
- local classColor = RAID_CLASS_COLORS[englishClass]
- if ( not UnitIsConnected(frame.unit) ) then
- r, g, b = 0.5, 0.5, 0.5
- else
- if TukuiCF["unitframes"].classcolor == true then
- r, g, b = classColor.r, classColor.g, classColor.b
- else
- r, g, b = .15, .15, .15
- end
- end
- frame.healthBar:SetStatusBarColor(r, g, b)
- end)
- hooksecurefunc("CompactUnitFrame_UpdatePowerColor", function(frame)
- local r, g, b
- local localizedClass, englishClass = UnitClass(frame.unit)
- local classColor = RAID_CLASS_COLORS[englishClass]
- if ( not UnitIsConnected(frame.unit) ) then
- r, g, b = 0.5, 0.5, 0.5
- else
- if TukuiCF["unitframes"].classcolor == true then
- local powerType, powerToken, altR, altG, altB = UnitPowerType(frame.displayedUnit)
- local prefix = _G[powerToken]
- local info = PowerBarColor[powerToken]
- if ( info ) then
- r, g, b = info.r, info.g, info.b
- else
- if ( not altR) then
- -- couldn't find a power token entry...default to indexing by power type or just mana if we don't have that either
- info = PowerBarColor[powerType] or PowerBarColor["MANA"]
- r, g, b = info.r, info.g, info.b
- else
- r, g, b = altR, altG, altB
- end
- end
- else
- r, g, b = classColor.r, classColor.g, classColor.b
- end
- end
- frame.powerBar:SetStatusBarColor(r, g, b)
- end)
- hooksecurefunc("CompactUnitFrame_UpdateSelectionHighlight", function(frame)
- TukuiDB.Kill(frame.selectionHighlight)
- if not frame.bg then return end
- if ( UnitIsUnit(frame.displayedUnit, "target") ) then
- frame.bg:SetBackdropBorderColor(.8, .8, .8)
- else
- frame.bg:SetBackdropBorderColor(unpack(TukuiCF["media"].bordercolor))
- end
- end)
- hooksecurefunc("CompactUnitFrame_UpdateAggroHighlight", function(frame)
- TukuiDB.Kill(frame.aggroHighlight)
- local status = UnitThreatSituation(frame.displayedUnit)
- if ( status and status > 0 ) then
- -- frame.name:SetTextColor(1, 0, 0)
- frame.healthBar:SetStatusBarColor(1, 0, 0)
- else
- CompactUnitFrame_UpdateHealthColor(frame)
- -- frame.name:SetTextColor(1, 1, 1)
- end
- end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement