Advertisement
Guest User

oUF_aftermathh

a guest
Dec 20th, 2010
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 34.01 KB | None | 0 0
  1. local _, class = UnitClass('player')
  2. local playerColor = RAID_CLASS_COLORS[select(2, UnitClass('player'))]
  3.  
  4. local texture = 'Interface\\AddOns\\oUF_Aftermathh\\media\\texture.tga'
  5. local border = 'Interface\\AddOns\\oUF_Aftermathh\\media\\border.tga'
  6. local font = 'Interface\\AddOns\\oUF_Aftermathh\\media\\font.ttf'
  7. local borderbg = 'Interface\\AddOns\\oUF_Aftermathh\\media\\borderBackground.tga'
  8.  
  9. local Debuffs = true
  10. local Buffs = true
  11. local DebuffType = true
  12.  
  13. local PvPIcon = true
  14. local Portraits = true
  15.  
  16. local CastBars = true
  17. local Safezone = true
  18. local Latency = true
  19. local ClassColor = false
  20. local FocusShowInterruptHighlight = true
  21. local TargetShowInterruptHighlight = true
  22. local FocusCastBarIcon = true
  23.  
  24. local RaidClassColor = false
  25. local RaidNoneClassColor = true
  26.  
  27. local backdrop = {
  28.     bgFile = [=[Interface\ChatFrame\ChatFrameBackground]=],
  29.     insets = {top = -1, left = -1, bottom = -1, right = -1},
  30. }
  31.  
  32. local function UpdateChannelStart(self, event, unit, name, rank, text)
  33.     if (self.Latency) then
  34.         self.Latency:ClearAllPoints()
  35.         self.Latency:SetPoint('LEFT', self, 'BOTTOMLEFT', 1, -1)
  36.  
  37.         local _, _, ms = GetNetStats()
  38.         self.Latency:SetFormattedText('%dms', ms)
  39.     end
  40.  
  41.     if (self.SafeZone) then
  42.         self.SafeZone:SetDrawLayer('ARTWORK')
  43.         self.SafeZone:SetPoint('TOPLEFT', self)
  44.         self.SafeZone:SetPoint('BOTTOMLEFT', self)
  45.     end
  46. end
  47.  
  48. local function UpdateCastStart(self, event, unit, name, rank, text, castid)
  49.     if (self.Latency) then
  50.         self.Latency:ClearAllPoints()
  51.         self.Latency:SetPoint('RIGHT', self, 'BOTTOMRIGHT', -1, 1)
  52.  
  53.         local _, _, ms = GetNetStats()
  54.         self.Latency:SetFormattedText('%dms', ms)
  55.     end
  56.  
  57.     if (self.SafeZone) then
  58.         self.SafeZone:SetDrawLayer('BORDER')
  59.         self.SafeZone:SetPoint('TOPRIGHT', self)
  60.         self.SafeZone:SetPoint('BOTTOMRIGHT', self)
  61.     end
  62. end
  63.  
  64. local menu = function(self)
  65.     local unit = self.unit:sub(1, -2)
  66.     local cunit = self.unit:gsub('(.)', string.upper, 1)
  67.  
  68.     if(unit == 'party' or unit == 'partypet') then
  69.         ToggleDropDownMenu(1, nil, _G['PartyMemberFrame'..self.id..'DropDown'], 'cursor', 0, 0)
  70.     elseif(_G[cunit..'FrameDropDown']) then
  71.         ToggleDropDownMenu(1, nil, _G[cunit..'FrameDropDown'], 'cursor', 0, 0)
  72.     end
  73. end
  74.  
  75. local updateRIcon = function(self, event)
  76.     local index = GetRaidTargetIndex(self.unit)
  77.     if(index) then
  78.         self.RIcon:SetText(ICON_LIST[index]..'22|t')
  79.     else
  80.         self.RIcon:SetText()
  81.     end
  82. end
  83.  
  84. local function ShortenValue(value)
  85.     if(value >= 1e6) then
  86.         return ('%.2fm'):format(value / 1e6):gsub('%.?0+([km])$', '%1')
  87.     elseif(value >= 1e4) then
  88.         return ('%.1fk'):format(value / 1e3):gsub('%.?0+([km])$', '%1')
  89.     else
  90.         return value
  91.     end
  92. end
  93.  
  94. oUF.Tags['Afterpower'] = function(unit)
  95.     local power = UnitPower(unit)
  96.     if(power > 0 and not UnitIsDeadOrGhost(unit)) then
  97.         local _, type = UnitPowerType(unit)
  98.         local colors = _COLORS.power
  99.         return ('%s%d'):format(Hex(colors[type] or colors['RUNES']), power)
  100.     end
  101. end
  102. oUF.TagEvents['Afterpower'] = 'UNIT_POWER'
  103.  
  104. oUF.Tags['Afterhealth'] = function(unit)
  105.     local min, max = UnitHealth(unit), UnitHealthMax(unit)
  106.     local status = not UnitIsConnected(unit) and 'Offline' or UnitIsGhost(unit) and 'Ghost' or UnitIsDead(unit) and 'Dead'
  107.  
  108.     if(status) then
  109.         return status
  110.     elseif(unit == 'target' and UnitCanAttack('player', unit)) then
  111.         return ('%s | %d %%'):format(ShortenValue(min), min / max * 100)
  112.     elseif(unit == 'player' and min ~= max) then
  113.         return ('%d | %d%%'):format(min - max, min / max * 100)
  114.     elseif(min ~= max) then
  115.         return ('%s | %s'):format(ShortenValue(min), ShortenValue(max))
  116.     else
  117.         return max
  118.     end
  119. end
  120. oUF.TagEvents['Afterhealth'] = 'UNIT_HEALTH'
  121.  
  122. local auraIcon = function(icons, button)
  123.    
  124.     if(DebuffType) then
  125.       icons.showDebuffType = true
  126.     end
  127.    
  128.     button.icon:SetTexCoord(0.03, 0.97, 0.03, 0.97)
  129.    
  130.     button.overlay:SetTexture(border)
  131.     button.overlay:SetTexCoord(0, 1, 0, 1)
  132.     button.overlay:ClearAllPoints()
  133.     button.overlay:SetPoint('TOPRIGHT', button, 1.35, 1.35)
  134.     button.overlay:SetPoint('BOTTOMLEFT', button, -1.35, -1.35)
  135.     button.overlay.Hide = function(self) self:SetVertexColor(0.35, 0.35, 0.35, 1) end
  136.  
  137.     button.cd.noCooldownCount = true
  138.     button.cd:SetReverse()
  139.     button.cd:ClearAllPoints()
  140.     button.cd:SetPoint('TOPRIGHT', button.icon, 'TOPRIGHT', -1, -1)
  141.     button.cd:SetPoint('BOTTOMLEFT', button.icon, 'BOTTOMLEFT', 1, 1)
  142.  
  143.     button.count:SetFont(font, 14, 'THINOUTLINE')
  144.     button.count:ClearAllPoints()
  145.     button.count:SetPoint('BOTTOMRIGHT', 1, 1)
  146.    
  147.     button.background = button:CreateTexture(nil, 'BACKGROUND')
  148.     button.background:SetPoint('TOPLEFT', button.icon, 'TOPLEFT', -4, 4)
  149.     button.background:SetPoint('BOTTOMRIGHT', button.icon, 'BOTTOMRIGHT', 4, -4)
  150.     button.background:SetTexture(borderbg)
  151.     button.background:SetVertexColor(0, 0, 0, 1)
  152.    
  153. end
  154.  
  155. local Shared = function(self, unit)
  156.  
  157.     self:SetScript('OnEnter', UnitFrame_OnEnter)
  158.     self:SetScript('OnLeave', UnitFrame_OnLeave)
  159.     self:RegisterForClicks'AnyDown'
  160.     self:SetAttribute('*type2', 'menu')
  161.    
  162.     self.menu = menu
  163.    
  164.     self.disallowVehicleSwap = true
  165.    
  166.     self.DebuffHighlightBackdrop = true
  167.     self.DebuffHighlightFilter = true
  168.    
  169.     self:SetBackdrop(backdrop)
  170.     self:SetBackdropColor(R, G, B)
  171.     self:SetBackdropBorderColor(R, G, B)
  172.    
  173.     CreateBorder(self, 12, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4)
  174.  
  175.     local health = CreateFrame('StatusBar', nil, self)
  176.     health:SetHeight(27*.85)
  177.     health:SetStatusBarTexture(texture)
  178.     health:SetStatusBarColor(.25, .25, .25)
  179.     health:SetParent(self)
  180.     health:SetPoint'TOP'
  181.     health:SetPoint'LEFT'
  182.     health:SetPoint'RIGHT'
  183.    
  184.     health.Smooth = true
  185.     health.frequentUpdates = true
  186.    
  187.     self.Health = health
  188.  
  189.     local healthbg = health:CreateTexture(nil, 'BORDER')
  190.     healthbg:SetAllPoints(health)
  191.     healthbg:SetTexture(texture)
  192.     healthbg:SetVertexColor(0, 0, 0, 0.5)
  193.     healthbg.multiplier = .3
  194.  
  195.     local healthtext = health:CreateFontString(nil, 'OVERLAY')
  196.     healthtext:SetFont(font, 15, 'THINOUTLINE')
  197.     healthtext:SetPoint('RIGHT', health, -2, 0)
  198.     self:Tag(healthtext, '[raidcolor][Afterhealth]')
  199.  
  200.     if(unit == 'focus' or unit == 'pet' or unit == 'targettarget' or unit == 'focustarget' or unit == 'party' or unit == 'player' or unit == 'target') then
  201.    
  202.         local power = CreateFrame('StatusBar', nil, self)
  203.         power:SetHeight(27*.11)
  204.         power:SetStatusBarTexture(texture)
  205.         power:SetParent(self)
  206.         power:SetPoint('BOTTOM')
  207.         power:SetPoint('LEFT', .2, 0)
  208.         power:SetPoint('RIGHT', -.2, 0)
  209.  
  210.         power.Smooth = true
  211.         power.frequentUpdates = true
  212.         power.colorTapowering = true
  213.         power.colorHapoweriness = true
  214.         power.colorClass = true
  215.         power.colorReaction = true
  216.        
  217.         self.Power = power
  218.  
  219.         local powerbg = power:CreateTexture(nil, 'BORDER')
  220.         powerbg:SetAllPoints(power)
  221.         powerbg:SetTexture(texture)
  222.         powerbg.multiplier = .3
  223.        
  224.         power.bg = powerbg
  225.  
  226.         local powertext = power:CreateFontString(nil, 'OVERLAY')
  227.         powertext:SetFont(font, 15, 'THINOUTLINE')
  228.         powertext:SetPoint('LEFT', healthtext, 'RIGHT', -265, 0)
  229.         self:Tag(powertext, '[Afterpower]')
  230.        
  231.         self.colors.power.MANA = {0, 144/255, 1}
  232.         self.colors.power.RUNIC_POWER = {0, 0.82, 1}
  233.        
  234.         self.Range = {
  235.             insideAlpha = 1,
  236.             outsideAlpha = 0.3,
  237.         }
  238.    
  239.         self.SpellRange = {
  240.             insideAlpha = 1,
  241.             outsideAlpha = 0.3,
  242.         }
  243.    
  244.         if(unit == 'focus' or unit == 'pet' or unit == 'targettarget' or unit == 'focustarget' or unit == 'party') then
  245.            powertext:Hide()
  246.            healthtext:Hide()
  247.         end
  248.        
  249.         if(unit == 'focus' or unit == 'pet' or unit == 'targettarget' or unit == 'focustarget') then
  250.            self:SetSize(150, 27)
  251.         end
  252.        
  253.         if(unit == 'player' or unit == 'target') then
  254.            self:SetSize(270, 27)
  255.         end
  256.    
  257.         if(unit == 'focus' or unit == 'pet') then
  258.            self:SetScale(0.95)
  259.         end
  260.     end
  261.    
  262.     if(CastBars)then
  263.         if(unit == 'player' or unit == 'focus' or unit == 'target' or unit == 'pet') then
  264.             self.Castbar = CreateFrame('StatusBar', nil, self)
  265.             self.Castbar:SetStatusBarTexture(texture)
  266.             self.Castbar:SetScale(1.139)
  267.             self.Castbar:SetStatusBarColor(.25, .25, .25)
  268.        
  269.             CreateBorder(self.Castbar, 11, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  270.  
  271.             self.Castbar.Bg = self.Castbar:CreateTexture(nil, 'BACKGROUND')
  272.             self.Castbar.Bg:SetAllPoints(self.Castbar)
  273.             self.Castbar.Bg:SetTexture(texture)
  274.             self.Castbar.Bg:SetVertexColor(0, 0, 0, 0.7)
  275.            
  276.             if(unit == 'player')then
  277.            
  278.                 self.Castbar:SetPoint('BOTTOM', UIParent, -13, 80)
  279.                 self.Castbar:SetHeight(25)
  280.                 self.Castbar:SetWidth(309)
  281.                 self.Castbar:SetParent(self)
  282.  
  283.                 if(ClassColor) then
  284.                    self.Castbar:SetStatusBarColor(playerColor.r, playerColor.g, playerColor.b)
  285.                    self.Castbar.Bg:SetVertexColor(playerColor.r*0.3, playerColor.g*0.3, playerColor.b*0.3, 0.8)
  286.                 end
  287.                
  288.                 if(Safezone) then
  289.                     self.Castbar.SafeZone = self.Castbar:CreateTexture(nil, 'BORDER')
  290.                     self.Castbar.SafeZone:SetTexture('Interface\\Buttons\\WHITE8x8')
  291.                     self.Castbar.SafeZone:SetVertexColor(1, 0.5, 0, 1)
  292.                 end
  293.  
  294.                 if(Latency) then
  295.                     self.Castbar.Latency = self:CreateFontString(nil, 'ARTWORK')
  296.                     self.Castbar.Latency:SetFont(font, 12, 'OUTLINE')
  297.                     self.Castbar.Latency:SetParent(self.Castbar)
  298.                     self.Castbar.Latency:SetDrawLayer('OVERLAY')
  299.                     self.Castbar.Latency:SetVertexColor(0.6, 0.6, 0.6)
  300.                     self.Castbar.Latency:SetAlpha(1)
  301.                 end
  302.  
  303.                 self.Castbar.PostCastStart = UpdateCastStart
  304.                 self.Castbar.PostChannelStart = UpdateChannelStart
  305.             end
  306.  
  307.             self.Castbar.CustomDelayText = function(self, duration)
  308.                 self.Time:SetFormattedText('(|cffff0000-%.1f|r) %.1f | %.1f', self.delay, duration, self.max)
  309.             end
  310.    
  311.             self.Castbar.CustomTimeText = function(self, duration)
  312.                 self.Time:SetFormattedText('%.1f | %.1f', duration, self.max)
  313.             end
  314.  
  315.             self.Castbar.Time = self:CreateFontString(nil, 'ARTWORK')
  316.             self.Castbar.Time:SetFont(font, 13, 'THINOUTLINE')
  317.             self.Castbar.Time:SetPoint('RIGHT', self.Castbar, 'RIGHT', -7, 0)
  318.             self.Castbar.Time:SetHeight(25)
  319.             self.Castbar.Time:SetParent(self.Castbar)
  320.             self.Castbar.Time:SetJustifyH('RIGHT')
  321.  
  322.             self.Castbar.Text = self:CreateFontString(nil, 'ARTWORK')
  323.             self.Castbar.Text:SetFont(font, 13, 'THINOUTLINE')
  324.             self.Castbar.Text:SetPoint('LEFT', self.Castbar, 4, 0)
  325.             self.Castbar.Text:SetPoint('RIGHT', self.Castbar.Time, 'LEFT', -7, 0)
  326.             self.Castbar.Text:SetHeight(25)
  327.             self.Castbar.Text:SetParent(self.Castbar)
  328.             self.Castbar.Text:SetJustifyH('LEFT')
  329.            
  330.             if(unit == 'focus') then
  331.                 self.Castbar:SetWidth(260)
  332.                 self.Castbar:SetHeight(25)
  333.                 self.Castbar:SetScale(1.210)
  334.                 self.Castbar:SetStatusBarColor(.25, .25, .25)
  335.                 self.Castbar:SetPoint('CENTER', UIParent, 'CENTER', -10, -10)
  336.                
  337.                 if(FocusCastBarIcon) then
  338.                   self.Castbar.Icon = self.Castbar:CreateTexture(nil, 'ARTWORK')
  339.                    self.Castbar.Icon:SetHeight(39)
  340.                    self.Castbar.Icon:SetWidth(39)
  341.                    self.Castbar.Icon:SetPoint('LEFT', -48, 3)
  342.                    self.IconOverlay = self.Castbar:CreateTexture(nil, 'OVERLAY')
  343.                    self.IconOverlay:SetPoint('TOPLEFT', self.Castbar.Icon, 'TOPLEFT')
  344.                    self.IconOverlay:SetPoint('BOTTOMRIGHT', self.Castbar.Icon, 'BOTTOMRIGHT')
  345.                    self.IconOverlay:SetTexture(border)
  346.                    self.IconOverlay:SetVertexColor(0.35, 0.35, 0.35, 1)
  347.                    self.Castbar.IconBack = self.Castbar:CreateTexture(nil, 'BACKGROUND')
  348.                    self.Castbar.IconBack:SetPoint('TOPLEFT',self.Castbar.Icon,'TOPLEFT',-5,5)
  349.                    self.Castbar.IconBack:SetPoint('BOTTOMRIGHT',self.Castbar.Icon,'BOTTOMRIGHT',5,-5)
  350.                    self.Castbar.IconBack:SetTexture(borderbg)
  351.                   self.Castbar.IconBack:SetVertexColor(0, 0, 0, 9)
  352.                 end
  353.            
  354.             elseif(unit == 'target') then
  355.                 self.Castbar:SetWidth(230)
  356.                 self.Castbar:SetHeight(26)
  357.                 self.Castbar:SetStatusBarColor(.25, .25, .25)
  358.                 self.Castbar:SetPoint('TOPRIGHT', self, 'BOTTOMRIGHT', 141, 97)
  359.             elseif(unit == 'pet') then
  360.                 self.Castbar:SetHeight(22)
  361.                 self.Castbar:SetWidth(200)
  362.                 self.Castbar:SetStatusBarColor(.25, .25, .25)
  363.                 self.Castbar:SetPoint('TOPRIGHT', self, 'BOTTOMRIGHT', -12, 56)
  364.             end
  365.         end
  366.        
  367.         if(unit == 'target' or unit == 'focus') then
  368.             if ((unit == 'target' and TargetShowInterruptHighlight) or (unit == 'focus' and FocusShowInterruptHighlight)) then
  369.                 self.Shadow = {}
  370.                
  371.                 for i = 1, 8 do
  372.                     self.Shadow[i] = self.Castbar:CreateTexture(nil, 'BACKGROUND')
  373.                     self.Shadow[i]:SetParent(self.Castbar)
  374.                     self.Shadow[i]:SetTexture(borderbg)
  375.                     self.Shadow[i]:SetWidth(20)
  376.                     self.Shadow[i]:SetHeight(20)
  377.                     self.Shadow[i]:SetVertexColor(1, 0, 1)
  378.                 end
  379.                
  380.                 self.Shadow[1]:SetTexCoord(0, 1/3, 0, 1/3)
  381.                 self.Shadow[1]:SetPoint('TOPLEFT', self.Castbar, -10, 10)
  382.  
  383.                 self.Shadow[2]:SetTexCoord(2/3, 1, 0, 1/3)
  384.                 self.Shadow[2]:SetPoint('TOPRIGHT', self.Castbar, 10, 10)
  385.  
  386.                 self.Shadow[3]:SetTexCoord(0, 1/3, 2/3, 1)
  387.                 self.Shadow[3]:SetPoint('BOTTOMLEFT', self.Castbar, -10, -10)
  388.  
  389.                 self.Shadow[4]:SetTexCoord(2/3, 1, 2/3, 1)
  390.                 self.Shadow[4]:SetPoint('BOTTOMRIGHT', self.Castbar, 10, -10)
  391.  
  392.                 self.Shadow[5]:SetTexCoord(1/3, 2/3, 0, 1/3)
  393.                 self.Shadow[5]:SetPoint('TOPLEFT', self.Shadow[1], 'TOPRIGHT')
  394.                 self.Shadow[5]:SetPoint('TOPRIGHT', self.Shadow[2], 'TOPLEFT')
  395.  
  396.                 self.Shadow[6]:SetTexCoord(1/3, 2/3, 2/3, 1)
  397.                 self.Shadow[6]:SetPoint('BOTTOMLEFT', self.Shadow[3], 'BOTTOMRIGHT')
  398.                 self.Shadow[6]:SetPoint('BOTTOMRIGHT', self.Shadow[4], 'BOTTOMLEFT')
  399.  
  400.                 self.Shadow[7]:SetTexCoord(0, 1/3, 1/3, 2/3)
  401.                 self.Shadow[7]:SetPoint('TOPLEFT', self.Shadow[1], 'BOTTOMLEFT')
  402.                 self.Shadow[7]:SetPoint('BOTTOMLEFT', self.Shadow[3], 'TOPLEFT')
  403.  
  404.                 self.Shadow[8]:SetTexCoord(2/3, 1, 1/3, 2/3)
  405.                 self.Shadow[8]:SetPoint('TOPRIGHT', self.Shadow[2], 'BOTTOMRIGHT')
  406.                 self.Shadow[8]:SetPoint('BOTTOMRIGHT', self.Shadow[4], 'TOPRIGHT')
  407.                
  408.                 self.hasShadow = true
  409.             else
  410.                 self.hasShadow = false
  411.             end
  412.            
  413.             local interruptFrame = CreateFrame('Frame')
  414.        
  415.             interruptFrame:RegisterEvent('UNIT_SPELLCAST_START')
  416.             interruptFrame:RegisterEvent('UNIT_SPELLCAST_DELAYED')
  417.             interruptFrame:RegisterEvent('UNIT_SPELLCAST_CHANNEL_START')
  418.             interruptFrame:RegisterEvent('UNIT_SPELLCAST_CHANNEL_UPDATE')
  419.             interruptFrame:RegisterEvent('PLAYER_TARGET_CHANGED')
  420.             interruptFrame:RegisterEvent('PLAYER_FOCUS_CHANGED')
  421.            
  422.             interruptFrame:SetScript('OnEvent', function()
  423.                 local name, _, _, _, _, _, _, _, interrupt = UnitCastingInfo(unit)
  424.            
  425.                 if (self.hasShadow) then  
  426.                     for i = 1, 8 do
  427.                         self.Shadow[i]:Hide()
  428.                     end
  429.                 end
  430.                
  431.                 if (name) then
  432.                     if (interrupt) then
  433.                    
  434.                         self.Castbar:SetStatusBarColor(.25, .25, .25)
  435.                         self.Castbar.Bg:SetVertexColor(1, 0, 1)
  436.                        
  437.                         if (self.hasShadow) then
  438.                             for i = 1, 8 do
  439.                                 self.Shadow[i]:Show()
  440.                             end
  441.                         end
  442.                     else
  443.                    
  444.                         self.Castbar:SetStatusBarColor(.25, .25, .25)
  445.                         self.Castbar.Bg:SetVertexColor(0, 0, 0, 0.6)
  446.                        
  447.                         if (self.hasShadow) then
  448.                             for i = 1, 8 do
  449.                                 self.Shadow[i]:Hide()
  450.                             end
  451.                         end
  452.                     end
  453.                 end
  454.             end)
  455.         end
  456.     end
  457.    
  458.     for _, bar in pairs({
  459.         'MirrorTimer1',
  460.         'MirrorTimer2',
  461.         'MirrorTimer3',
  462.     }) do
  463.    
  464.         for i, region in pairs({_G[bar]:GetRegions()}) do
  465.             if (region.GetTexture and region:GetTexture() == 'SolidTexture') then
  466.                 region:Hide()
  467.             end
  468.         end
  469.  
  470.         CreateBorder(_G[bar], 12, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  471.  
  472.         _G[bar..'Border']:Hide()
  473.  
  474.         _G[bar]:SetParent(UIParent)
  475.         _G[bar]:SetScale(1.132)
  476.         _G[bar]:SetHeight(22)
  477.         _G[bar]:SetWidth(280)
  478.  
  479.         _G[bar..'Background'] = _G[bar]:CreateTexture(bar..'Background', 'BACKGROUND', _G[bar])
  480.         _G[bar..'Background']:SetTexture('Interface\\Buttons\\WHITE8x8')
  481.         _G[bar..'Background']:SetAllPoints(bar)
  482.         _G[bar..'Background']:SetVertexColor(0, 0, 0, 0.5)
  483.  
  484.         _G[bar..'Text']:SetFont(font, 14, 'THINOUTLINE')
  485.         _G[bar..'Text']:ClearAllPoints()
  486.         _G[bar..'Text']:SetPoint('CENTER', MirrorTimer1StatusBar, 0, 1)
  487.  
  488.         _G[bar..'StatusBar']:SetAllPoints(_G[bar])
  489.        
  490.     end
  491.    
  492.     local RaidIcon = health:CreateFontString(nil, 'OVERLAY')
  493.     RaidIcon:SetFont(font, 11, 'THINOUTLINE')
  494.     RaidIcon:SetPoint('CENTER', health, 0, 12)
  495.     RaidIcon:SetHeight(32)
  496.     RaidIcon:SetWidth(32)
  497.     self.RIcon = RaidIcon
  498.     self:RegisterEvent('RAID_TARGET_UPDATE', updateRIcon)
  499.     table.insert(self.__elements, updateRIcon)
  500.    
  501.     if(PvPIcon) then
  502.        local PvP = health:CreateTexture(nil, 'OVERLAY')
  503.        PvP:SetPoint('BOTTOMRIGHT', health, 'TOPRIGHT', 18, -45)
  504.        PvP:SetHeight(28)
  505.        PvP:SetWidth(28)
  506.        self.PvP = PvP
  507.     end
  508.    
  509.     if(unit == 'player') then
  510.        local Combat = health:CreateTexture(nil, 'OVERLAY')
  511.        Combat:SetSize(25, 25)
  512.        Combat:SetPoint('CENTER', health, -3, 0)
  513.        self.Combat = Combat
  514.     end
  515.    
  516.     if(unit == 'player' or unit == 'party') then
  517.         local Leader = health:CreateTexture(nil, 'OVERLAY')
  518.         Leader:SetHeight(15)
  519.         Leader:SetWidth(15)
  520.         Leader:SetPoint('BOTTOMLEFT', health, 'TOPLEFT', -5, -2)
  521.         Leader:SetTexture('Interface\\GroupFrame\\UI-Group-LeaderIcon')
  522.         self.Leader = Leader
  523.    
  524.         local MasterLooter = health:CreateTexture(nil, 'OVERLAY')
  525.         MasterLooter:SetHeight(12)
  526.         MasterLooter:SetWidth(12)
  527.         MasterLooter:SetPoint('BOTTOMLEFT', health, 'TOPLEFT', 12, 0)
  528.         self.MasterLooter = MasterLooter
  529.     end
  530.    
  531.     if(unit == 'player' or unit == 'target') then
  532.         local CPoints = self:CreateFontString(nil, 'OVERLAY')
  533.         CPoints:SetFont(font, 26, 'THINOUTLINE')
  534.         CPoints:SetTextColor(playerColor.r, playerColor.g, playerColor.b)
  535.         CPoints:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  536.         CPoints:SetJustifyH('RIGHT')
  537.         self:Tag(CPoints, '[cpoints]')
  538.     end
  539.    
  540.     if(Portraits) then
  541.    
  542.         local Portrait = CreateFrame('PlayerModel', nil, self)
  543.             Portrait:SetBackdrop(backdrop)
  544.             Portrait:SetBackdropColor(0, 0, 0, .9)
  545.             Portrait:SetWidth(27*3)
  546.             Portrait:SetHeight(27*2)
  547.  
  548.             CreateBorder(Portrait, 12, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3)
  549.            
  550.             if(unit == 'player' or unit == 'focus' or unit == 'pet' or unit == 'party') then
  551.             Portrait:SetPoint('BOTTOMLEFT', self, 'BOTTOMLEFT', -92, -26)
  552.             elseif(unit == 'target') then
  553.             Portrait:SetPoint('BOTTOMLEFT', self, 'BOTTOMRIGHT', 11, -26)
  554.         end
  555.        
  556.         self.Portrait = Portrait       
  557.     end
  558.    
  559.     if unit then
  560.        
  561.         self.Name = health:CreateFontString(nil, 'OVERLAY')
  562.         self.Name:SetFont(font, 15, 'THINOUTLINE')
  563.  
  564.         if(unit == 'player') then
  565.             self.Name:Hide()
  566.         end
  567.        
  568.         if(unit == 'target')then
  569.             self.Name:SetPoint('LEFT', health, 'LEFT', -5, 26)             
  570.             self:Tag(self.Name,'[difficulty][level][shortclassification] [raidcolor][AfterName]')
  571.         end
  572.        
  573.         if(unit == 'targettarget' or unit == 'focus' or unit == 'pet' or unit =='focustarget' or unit == 'party') then
  574.             self.Name:SetPoint('CENTER')
  575.             self:Tag(self.Name, '[raidcolor][AfterShortName] [happiness]')
  576.         end
  577.    
  578.     end
  579.    
  580.     if(Buffs) then
  581.    
  582.         local Buffs = CreateFrame('Frame', nil, self)
  583.         Buffs:SetHeight(270)
  584.         Buffs:SetWidth(270)
  585.         Buffs.size = 28
  586.         Buffs.spacing = 3
  587.         Buffs.PostCreateIcon = auraIcon
  588.        
  589.         if(unit == 'party') then
  590.             Buffs.initialAnchor = 'TOPLEFT'
  591.             Buffs['growth-y'] = 'RIGHT'
  592.             Buffs['growth-x'] = 'DOWN'
  593.             Buffs:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', -3, -8)
  594.             Buffs.num = 5
  595.         end
  596.        
  597.         if(unit == 'pet' or unit == 'focus') then
  598.             Buffs.initialAnchor = 'TOPLEFT'
  599.             Buffs['growth-y'] = 'RIGHT'
  600.             Buffs['growth-x'] = 'DOWN'
  601.             Buffs:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', -3, -8)
  602.             Buffs.num = 6
  603.         end
  604.        
  605.         if(unit == 'target') then
  606.             Buffs.initialAnchor = 'TOPLEFT'
  607.             Buffs['growth-y'] = 'RIGHT'
  608.             Buffs['growth-x'] = 'DOWN'
  609.             Buffs:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', -3, -8)
  610.             Buffs.num = 9
  611.         end
  612.        
  613.         if(unit == 'targettarget' or unit == 'player' or unit == 'focustarget') then
  614.             Buffs.initialAnchor = 'TOPLEFT'
  615.             Buffs['growth-y'] = 'RIGHT'
  616.             Buffs['growth-x'] = 'DOWN'
  617.             Buffs:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', -3, -8)
  618.             Buffs.num = 0
  619.         end
  620.        
  621.         self.Buffs = Buffs
  622.     end
  623.  
  624.     if(Debuffs) then
  625.    
  626.         local Debuffs = CreateFrame('Frame', nil, self)
  627.         Debuffs:SetHeight(270)
  628.         Debuffs:SetWidth(270)
  629.         Debuffs.size = 32
  630.         Debuffs.spacing = 3
  631.         Debuffs.PostCreateIcon = auraIcon
  632.        
  633.         if(unit == 'pet'or unit == 'focus' or unit == 'party' or unit == 'focustarget') then
  634.             Debuffs:SetPoint('LEFT', self, 'RIGHT', 8, 0)
  635.             Debuffs['growth-x'] = 'RIGHT'
  636.             Debuffs.initialAnchor = 'LEFT'
  637.             Debuffs.num = 5
  638.             Debuffs.onlyShowPlayer = false
  639.         end
  640.        
  641.         if(unit == 'player' or unit == 'targettarget') then
  642.             Debuffs:SetPoint('LEFT', self, 'RIGHT', 20, 5)
  643.             Debuffs['growth-x'] = 'RIGHT'
  644.             Debuffs.initialAnchor = 'LEFT'
  645.             Debuffs.num = 0
  646.             Debuffs.onlyShowPlayer = false
  647.         end
  648.  
  649.         if(unit == 'target') then
  650.             Debuffs:SetPoint('BOTTOMLEFT', self, 'TOPLEFT', -3, 28)
  651.             Debuffs['growth-y'] = 'UP'
  652.             Debuffs.initialAnchor = 'BOTTOMLEFT'
  653.             Debuffs.num = 7
  654.             Debuffs.onlyShowPlayer = true
  655.         end
  656.        
  657.         self.Debuffs = Debuffs
  658.     end
  659.    
  660.     if(unit == 'player') then
  661.    
  662.         if(IsAddOnLoaded('oUF_Swing')) then
  663.             self.Swing = CreateFrame('StatusBar', nil, self)
  664.             self.Swing:SetPoint('TOP', self, 'BOTTOM', 335, -68)
  665.             self.Swing:SetStatusBarTexture(texture)
  666.             self.Swing:SetStatusBarColor(playerColor.r, playerColor.g, playerColor.b)
  667.             self.Swing:SetHeight(15)
  668.             self.Swing:SetWidth(270)
  669.             self.Swing:SetBackdrop(backdrop)
  670.             self.Swing:SetBackdropColor(0, 0, 0)
  671.    
  672.             self.Swing.disableMelee = false
  673.             self.Swing.disableRanged = false
  674.            
  675.             CreateBorder(self.Swing, 12, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  676.  
  677.             self.Swing.Text = self.Swing:CreateFontString(nil, 'OVERLAY')
  678.             self.Swing.Text:SetFont(font, 24, 'THINOUTLINE')
  679.             self.Swing.Text:SetPoint('CENTER', self.Swing)
  680.            
  681.             self.Swing.bg = self.Swing:CreateTexture(nil, 'BORDER')
  682.             self.Swing.bg:SetAllPoints(self.Swing)
  683.             self.Swing.bg:SetTexture(0, 0, 0, 0.1)
  684.         end
  685.    
  686.         if(IsAddOnLoaded('oUF_Experience')) then
  687.             self.Experience = CreateFrame('StatusBar', nil, self)
  688.             self.Experience:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', 0, 52)
  689.             self.Experience:SetStatusBarTexture(texture)
  690.             self.Experience:SetStatusBarColor(0,.7,1)
  691.             self.Experience:SetHeight(15)
  692.             self.Experience:SetWidth(235)
  693.             self.Experience:SetBackdrop(backdrop)
  694.             self.Experience:SetBackdropColor(0, 0, 0, .5)
  695.             self.Experience.Tooltip = true
  696.  
  697.             CreateBorder(self.Experience, 12, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  698.  
  699.             self.Experience.Text = self.Experience:CreateFontString(nil, 'OVERLAY')
  700.             self.Experience.Text:SetFont(font, 15, 'THINOUTLINE')
  701.             self.Experience.Text:SetPoint('CENTER', self.Experience)
  702.  
  703.             self.Experience.bg = self.Experience:CreateTexture(nil, 'BORDER')
  704.             self.Experience.bg:SetAllPoints(self.Experience)
  705.             self.Experience.bg:SetTexture(0, 0, 0, .5)
  706.         end
  707.    
  708.         if IsAddOnLoaded('oUF_TotemBar') and class == 'SHAMAN' then
  709.        
  710.             self.TotemBar = {}
  711.             self.TotemBar.Destroy = true
  712.            
  713.             for i = 1, 4 do
  714.            
  715.                 self.TotemBar[i] = CreateFrame('StatusBar', nil, self)
  716.                 self.TotemBar[i]:SetHeight(12)
  717.                 self.TotemBar[i]:SetWidth(265/4 - 5)
  718.                
  719.                 if (i == 1) then
  720.                     self.TotemBar[i]:SetPoint('TOPRIGHT', self, 'BOTTOMRIGHT', -1, -9)
  721.                 else
  722.                     self.TotemBar[i]:SetPoint('RIGHT', self.TotemBar[i-1], 'LEFT', -8, 0)
  723.                 end
  724.  
  725.                 CreateBorder(self.TotemBar[i], 12, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  726.  
  727.                 self.TotemBar[i]:SetStatusBarTexture(texture)
  728.                 self.TotemBar[i]:SetBackdrop(backdrop)
  729.                 self.TotemBar[i]:SetBackdropColor(0,0,0,6)
  730.                 self.TotemBar[i]:SetMinMaxValues(0, 1)
  731.  
  732.                 self.TotemBar[i].bg = self.TotemBar[i]:CreateTexture(nil, 'BORDER')
  733.                 self.TotemBar[i].bg:SetAllPoints(self.TotemBar[i])
  734.                 self.TotemBar[i].bg:SetTexture(texture)
  735.                 self.TotemBar[i].bg.multiplier = 0.3
  736.             end
  737.         end
  738.  
  739.         if(class == 'DEATHKNIGHT') then
  740.        
  741.             self.Runes = CreateFrame('Frame', nil, self)
  742.            
  743.             for i = 1, 6 do
  744.            
  745.                 self.Runes[i] = CreateFrame('StatusBar', self:GetName()..'_Runes'..i, self)
  746.                 self.Runes[i]:SetHeight(10)
  747.                 self.Runes[i]:SetWidth(250/6 - 0.85)
  748.                
  749.                 if(i == 1) then
  750.                     self.Runes[i]:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', 0, -8)
  751.                 else
  752.                     self.Runes[i]:SetPoint('TOPLEFT', self.Runes[i-1], 'TOPRIGHT', 5, 0)
  753.                 end
  754.                
  755.                 CreateBorder(self.Runes[i], 11, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3)
  756.                
  757.                 self.Runes[i]:SetStatusBarTexture(texture)
  758.                 self.Runes[i]:SetBackdrop(backdrop)
  759.                 self.Runes[i]:SetBackdropColor(0, 0, 0)
  760.                 self.Runes[i]:SetMinMaxValues(0, 1)
  761.  
  762.                 self.Runes[i].bg = self.Runes[i]:CreateTexture(nil, 'BORDER')
  763.                 self.Runes[i].bg:SetAllPoints(self.Runes[i])
  764.                 self.Runes[i].bg:SetTexture(0.1, 0.1, 0.1)
  765.                 self.Runes[i].bg.multiplier = 0.2
  766.                
  767.                 RuneFrame:Hide()
  768.             end
  769.         end
  770.        
  771.         if(class == 'DRUID') then
  772.             local EclipseBar = CreateFrame('Frame', nil, self)
  773.             EclipseBar:SetPoint('TOPLEFT', self, 'BOTTOMLEFT', 0, -10)
  774.             EclipseBar:SetWidth(270)
  775.             EclipseBar:SetHeight(13)
  776.             EclipseBar:SetBackdrop(backdrop)
  777.             EclipseBar:SetBackdropColor(0, 0, 0, 0.8)
  778.        
  779.             CreateBorder(EclipseBar, 12, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4)
  780.            
  781.             self.EclipseBar = EclipseBar
  782.          
  783.             local LunarBar = CreateFrame('StatusBar', nil, EclipseBar)
  784.             LunarBar:SetPoint('LEFT', EclipseBar, 'LEFT', 0, 0)
  785.             LunarBar:SetWidth(270)
  786.             LunarBar:SetHeight(13)
  787.             LunarBar:SetStatusBarTexture(texture)
  788.             LunarBar:SetStatusBarColor(0.36, 0.45, 0.88)
  789.             EclipseBar.LunarBar = LunarBar
  790.  
  791.             local SolarBar = CreateFrame('StatusBar', nil, EclipseBar)
  792.             SolarBar:SetPoint('LEFT', LunarBar:GetStatusBarTexture(), 'RIGHT', 0, 0)
  793.             SolarBar:SetWidth(270)
  794.             SolarBar:SetHeight(13)
  795.             SolarBar:SetStatusBarTexture(texture)
  796.             SolarBar:SetStatusBarColor(0.85, 0.83, 0.1)
  797.             EclipseBar.SolarBar = SolarBar
  798.  
  799.             local EclipseBarText = SolarBar:CreateFontString(nil, 'OVERLAY')
  800.             EclipseBarText:SetPoint('CENTER', EclipseBar, 'CENTER', 0, 0)
  801.             EclipseBarText:SetFont(font, 15, 'THINOUTLINE')
  802.             self:Tag(EclipseBarText, '[pereclipse]%')
  803.         end
  804.    
  805.         if(class == 'WARRIOR') then
  806.             local ThunderStruck = self:CreateFontString(nil, 'OVERLAY')
  807.             ThunderStruck:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  808.             ThunderStruck:SetFont(font, 24, 'THINOUTLINE')
  809.             ThunderStruck:SetTextColor(playerColor.r, playerColor.g, playerColor.b)
  810.             ThunderStruck:SetJustifyH('CENTER')
  811.             self:Tag(ThunderStruck, '[Aftermathh:ThunderStruck]')
  812.         end
  813.    
  814.         if(class == 'PRIEST') then
  815.             local ShadowOrbs = self:CreateFontString(nil, 'OVERLAY')
  816.             ShadowOrbs:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  817.             ShadowOrbs:SetFont(font, 24, 'THINOUTLINE')
  818.             ShadowOrbs:SetTextColor(playerColor.r, playerColor.g, playerColor.b)
  819.             ShadowOrbs:SetJustifyH('CENTER')
  820.             self:Tag(ShadowOrbs, '[Aftermathh:ShadowOrbs]')
  821.         end
  822.        
  823.         --[[if(class == 'PRIEST') then
  824.             local Evangelism = self:CreateFontString(nil, 'OVERLAY')
  825.             Evangelism:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  826.             Evangelism:SetFont(font, 24, 'THINOUTLINE')
  827.             Evangelism:SetTextColor(playerColor.r, playerColor.g, playerColor.b)
  828.             Evangelism:SetJustifyH('CENTER')
  829.             self:Tag(Evangelism, '[Aftermathh:Evangelism]')
  830.         end--]]
  831.        
  832.         if(class == 'WARLOCK') then
  833.             local Shards = self:CreateFontString(nil, 'OVERLAY')
  834.             Shards:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  835.             Shards:SetFont(font, 24, 'THINOUTLINE')
  836.             Shards:SetJustifyH('CENTER')
  837.             self:Tag(Shards, '[Aftermathh:Shards]')
  838.         end
  839.        
  840.         if(class == 'PALADIN') then
  841.             local HolyPower = self:CreateFontString(nil, 'OVERLAY')
  842.             HolyPower:SetPoint('CENTER', self, 'RIGHT', -5, 32)
  843.             HolyPower:SetFont(font, 24, 'THINOUTLINE')
  844.             HolyPower:SetJustifyH('CENTER')
  845.             self:Tag(HolyPower, '[Aftermathh:HolyPower]')
  846.         end
  847.     end
  848.  
  849.     return self
  850. end
  851.  
  852. CompactRaidFrameManager:UnregisterAllEvents()
  853. CompactRaidFrameManager:Hide()
  854. CompactRaidFrameContainer:UnregisterAllEvents()
  855. CompactRaidFrameContainer:Hide()
  856. CompactRaidFrameContainer:Hide()
  857.  
  858. local function menu(self)
  859.     if(self.unit:match('party')) then
  860.         ToggleDropDownMenu(1, nil, _G['PartyMemberFrame'..self.id..'DropDown'], 'cursor')
  861.     else
  862.         FriendsDropDown.unit = self.unit
  863.         FriendsDropDown.id = self.id
  864.         FriendsDropDown.initialize = RaidFrameDropDown_Initialize
  865.         ToggleDropDownMenu(1, nil, FriendsDropDown, 'cursor')
  866.     end
  867. end
  868.  
  869. local function UpdateThreat(self, _, unit)
  870.     if (self.unit ~= unit) then
  871.         return
  872.     end
  873.  
  874.     if (self.Aggro) then
  875.         local threat = UnitThreatSituation(self.unit)
  876.         if (threat == 3) then
  877.             self.Aggro:SetText('|cFFFF0000AGGRO')
  878.             self.Health:SetBackdropColor(0.9, 0, 0)
  879.         else
  880.             self.Aggro:SetText('')
  881.             self.Health:SetBackdropColor(0, 0, 0)
  882.         end
  883.     end
  884. end
  885.  
  886. local function RaidFrames(self, unit)
  887.  
  888.     self.menu = menu
  889.     self:RegisterForClicks('AnyDown')
  890.     self:SetScript('OnEnter', UnitFrame_OnEnter)
  891.     self:SetScript('OnLeave', UnitFrame_OnLeave)
  892.     self:SetAttribute('*type2', 'menu')
  893.  
  894.     CreateBorder(self, 11, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4)
  895.  
  896.     self:SetBackdrop({bgFile = [=[Interface\ChatFrame\ChatFrameBackground]=], insets = {top = -1.5, left = -1.5, bottom = -1.5, right = -1.5}})
  897.     self:SetBackdropColor(0, 0, 0, 0.8)
  898.  
  899.     self.DebuffHighlightBackdrop = true
  900.     self.DebuffHighlightFilter = true
  901.    
  902.     self.Health = CreateFrame('StatusBar', nil, self)
  903.     self.Health:SetStatusBarTexture(texture)
  904.     self.Health:SetParent(self)
  905.     self.Health:SetAllPoints(self)
  906.     self.Health.colorClass = false
  907.     self.Health.Smooth = true
  908.    
  909.     if(RaidClassColor) then
  910.       self.Health.colorClass = true
  911.     end
  912.    
  913.     if(RaidNoneClassColor) then
  914.       self.Health:SetStatusBarColor(.25, .25, .25)
  915.     end
  916.    
  917.     self.Health:SetOrientation('HORIZONTAL')
  918.     self.Health:SetOrientation('VERTICAL')
  919.    
  920.     self.Health.bg = self.Health:CreateTexture(nil, 'BORDER')
  921.     self.Health.bg:SetAllPoints(self.Health)
  922.     self.Health.bg:SetTexture(texture)
  923.     self.Health.bg:SetAlpha(0.4)
  924.    
  925.     self.Name = self.Health:CreateFontString(nil, 'OVERLAY')
  926.     self.Name:SetPoint('TOP', 0, -12)
  927.     self.Name:SetFont(font, 11, 'THINOUTLINE')
  928.     self:Tag(self.Name, '[raidcolor][AfterRaidName]')
  929.    
  930.     self.MasterLooter = self.Health:CreateTexture('$parentMasterLooterIcon', 'OVERLAY', self)
  931.     self.MasterLooter:SetHeight(12)
  932.     self.MasterLooter:SetWidth(12)
  933.     self.MasterLooter:SetPoint('RIGHT', self.Health, 'TOPRIGHT', 2, 2)
  934.  
  935.     self.Leader = self.Health:CreateTexture('$parentLeaderIcon', 'OVERLAY', self)
  936.     self.Leader:SetHeight(14)
  937.     self.Leader:SetWidth(14)
  938.     self.Leader:SetPoint('LEFT', self.Health, 'TOPLEFT', -5, 2)
  939.  
  940.     self.RaidIcon = self.Health:CreateTexture(nil, 'OVERLAY')
  941.     self.RaidIcon:SetHeight(17)
  942.     self.RaidIcon:SetWidth(17)
  943.     self.RaidIcon:SetPoint('CENTER', self, 'TOP')
  944.     self.RaidIcon:SetTexture('Interface\\TargetingFrame\\UI-RaidTargetingIcons')
  945.  
  946.     self.ReadyCheck = self.Health:CreateTexture(nil, 'OVERLAY')
  947.     self.ReadyCheck:SetPoint('TOPRIGHT', self.Health, -7, -7)
  948.     self.ReadyCheck:SetPoint('BOTTOMLEFT', self.Health, 7, 7)
  949.     self.ReadyCheck.delayTime = 4
  950.     self.ReadyCheck.fadeTime = 1
  951.    
  952.     self.Aggro = self.Health:CreateFontString(nil, 'OVERLAY')
  953.     self.Aggro:SetPoint('CENTER', self.Health, 'BOTTOM')
  954.     self.Aggro:SetFont(font, 11, 'THINOUTLINE')
  955.    
  956.     table.insert(self.__elements, UpdateThreat)
  957.     self:RegisterEvent('PLAYER_TARGET_CHANGED', UpdateThreat)
  958.     self:RegisterEvent('UNIT_THREAT_LIST_UPDATE', UpdateThreat)
  959.     self:RegisterEvent('UNIT_THREAT_SITUATION_UPDATE', UpdateThreat)
  960.  
  961.     self.Range = {
  962.         insideAlpha = 1,
  963.         outsideAlpha = 0.3,
  964.     }
  965.    
  966.     self.SpellRange = {
  967.         insideAlpha = 1,
  968.         outsideAlpha = 0.3,
  969.     }
  970.    
  971.     return self
  972. end
  973.  
  974. oUF:RegisterStyle('AftermathhRaid', RaidFrames)
  975.  
  976. oUF:Factory(function(self)
  977.   oUF:SetActiveStyle'AftermathhRaid'
  978.  
  979.     local raid = self:SpawnHeader('AftermathhRaid', nil, 'solo,party,raid',
  980.         'showPlayer', true,
  981.         'showRaid', true,
  982.         'showParty', false,
  983.         'showSolo', false,
  984.         'xoffset', 12,
  985.         'yOffset', -5,
  986.         'point', 'LEFT',
  987.         'groupFilter', '1,2,3,4,5,6,7,8',
  988.         'groupingOrder', '1,2,3,4,5,6,7,8',
  989.         'groupBy', 'GROUP',
  990.         'maxColumns', 12,
  991.         'unitsPerColumn', 5,
  992.         'columnSpacing', 12,
  993.         'columnAnchorPoint', 'TOP',
  994.         'oUF-initialConfigFunction', [[
  995.             self:SetHeight(38)
  996.             self:SetWidth(42)
  997.             self:SetScale(1)
  998.         ]]
  999.     )
  1000.     raid:SetPoint('TOPLEFT', UIParent, 10, -9)
  1001.    
  1002. end)
  1003.  
  1004. oUF:RegisterStyle('Aftermathh', Shared)
  1005.  
  1006. oUF:Factory(function(self)
  1007.   oUF:SetActiveStyle'Aftermathh'
  1008.    
  1009.     self:Spawn'Player':SetPoint('BOTTOMLEFT', UIParent, 196, 186)
  1010.     self:Spawn'Target':SetPoint('BOTTOMRIGHT', UIParent, -226, 186)
  1011.     self:Spawn'Targettarget':SetPoint('RIGHT', UIParent, -64, -188)
  1012.     self:Spawn'Pet':SetPoint('LEFT', UIParent, 105, -156)
  1013.     self:Spawn'Focus':SetPoint('LEFT', UIParent, 108, -45)
  1014.     self:Spawn'Focustarget':SetPoint('LEFT', UIParent, 17, -3)
  1015.    
  1016.     local party = self:SpawnHeader('AftermathhParty', nil, 'party',
  1017.         'showParty', true,
  1018.         'showPlayer', true,
  1019.         'xoffset', 12,
  1020.         'yOffset', -52,
  1021.         'oUF-initialConfigFunction', [[
  1022.             self:SetHeight(27)
  1023.             self:SetWidth(150)
  1024.             self:SetScale(0.95)
  1025.         ]]
  1026.     )
  1027.     party:SetPoint('TOPLEFT', UIParent, 92, -12)
  1028.    
  1029. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement