Thread Tools Display Modes
07-28-12, 06:05 AM   #1
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
List of all class bars/plugins

I'm currently gathering information on the bars that any class can have. I don't have that huge knowledge of all the classes thus I need some help completing the list.

If you got sth. to add please share.

Druid
Rogue
Deathknight
Shaman
  • ???

Priest
Paladin

Monk
Warlock
Warrior
  • ???

Other or non-unit specific (Vehicle, Boss etc.)
Some great examples can be taken from oUF_Phanx (MoP)
http://www.wowinterface.com/download...orMoPBeta.html
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)

Last edited by zork : 07-28-12 at 06:28 AM.
  Reply With Quote
07-28-12, 12:17 PM   #2
p3lim
A Pyroguard Emberseer
 
p3lim's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2007
Posts: 1,710
Warlock:
SoulShards (WIP beta)
Burning Ember (WIP beta)
Demonic Fury (WIP beta)

No idea how shamans works on beta, how they changed the totems etc.
  Reply With Quote
07-28-12, 01:29 PM   #3
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
There's oUF_boring_totembar for shamans. The API for totems (eg. detecting when it's cast, how long it lasts, when it expires or gets destroyed) has not changed in MoP. The only change is that shamans no longer get (in the default UI) a special additional action bar for casting totems; you now just have to drop the totems or totem flyouts from your spellbook onto your action bar, and the Blizzard flyouts suck in general.
__________________
Retired author of too many addons.
Message me if you're interested in taking over one of my addons.
Don’t message me about addon bugs or programming questions.
  Reply With Quote
07-29-12, 02:53 PM   #4
Lysiander
An Aku'mai Servant
Join Date: Dec 2007
Posts: 37
Are we talking in terms of useful information that can/should be displayed in bar form or just things that Blizzard has interface elements for?

Assuming the former, from the top of my head.
Druid: Savage Defense (useful currently, but won't be with MoP, I use a Lacerate counter in Bear Form where my Cat's combo points are.)
Deathknight: Bloodshield (current/max or baseline comfort value)
Priest: Evangelism stacks (up to 5, basically combo points with Archangel as a finisher for extra damage/ healing)
Shaman: Lightning shield stacks for elemental shaman. Sort of works like combo points with earth shock as a finisher. Dunno if this mechanic makes it into MoP though.

Hunters have some sort of proc mechanic where ICD Bars or stacks (depending on spec I think) could be usefull. I never played warriors, but as far as I know, they are the only class left that does not really have some sort of secondary power mechanic. Most classes rely on one form of stack generation or another to get their juices flowing.
  Reply With Quote
07-29-12, 07:02 PM   #5
p3lim
A Pyroguard Emberseer
 
p3lim's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2007
Posts: 1,710
Originally Posted by Lysiander View Post
Are we talking in terms of useful information that can/should be displayed in bar form or just things that Blizzard has interface elements for?
Just class-based bars and alike that is on the unit frames by default that oUF should replace.
  Reply With Quote
07-29-12, 07:19 PM   #6
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
Originally Posted by Lysiander View Post
... Lacerate ... Evangelism ... Lightning shield ...
Those are all just buffs. They're not really special class mechanics.

Originally Posted by Lysiander View Post
Lightning shield stacks ... Dunno if this mechanic makes it into MoP though.
It doesn't. Lightning Shield and Water Shield no longer have stacks; they just last 30 minutes (or maybe 1 hour, I forget) and have essentially unlimited "charges" during that time. They still do the same things when you get hit, though. You just don't have to refresh them all the time.

Originally Posted by Lysiander View Post
... Savage Defense ... Bloodshield ...
Also just buffs, and personally I don't think they're that useful to see. You can't actively control them (they just happen), you can't do anything with them (you don't have a special ability you can pop to consume stacks for some effect), and they don't really affect your actions (you're going to use the same abilities to tank regardless of how many "stacks" of these buffs you have).
__________________
Retired author of too many addons.
Message me if you're interested in taking over one of my addons.
Don’t message me about addon bugs or programming questions.
  Reply With Quote
07-30-12, 04:17 AM   #7
Lysiander
An Aku'mai Servant
Join Date: Dec 2007
Posts: 37
So were shadoworbs before blizzard turned them into a true secondary resource. Its beside the point since it seems to go beyond the scope of this threat, and I don't wanna derail so, so I'll just say I respectfully disagree.

Demo Warlocks have Demonic Fury instead of soulshards now, which seems to work differently from Soul Shards. As far as I understood it, its basically rage that builds up from casting spells and is burned of in Demon Form. Destro Warlocks Burning embers seem to be just renamed soul shards.
  Reply With Quote
07-31-12, 01:04 AM   #8
haste
Featured Artist
 
haste's Avatar
Premium Member
Featured
Join Date: Dec 2005
Posts: 1,027
Originally Posted by Lysiander View Post
So were shadoworbs before blizzard turned them into a true secondary resource. Its beside the point since it seems to go beyond the scope of this threat, and I don't wanna derail so, so I'll just say I respectfully disagree.
The ShadowOrbs element is a MoP element.

The scope of oUF is basically defined by what Blizzard provides.
__________________
「貴方は1人じゃないよ」
  Reply With Quote
08-08-12, 02:27 AM   #9
Sentacursa
A Deviate Faerie Dragon
 
Sentacursa's Avatar
Join Date: Aug 2012
Posts: 13
Originally Posted by p3lim View Post
Warlock:
SoulShards (WIP beta)
Burning Ember (WIP beta)
Demonic Fury (WIP beta)

No idea how shamans works on beta, how they changed the totems etc.
need a talent check option for this or a spell check cuz it goes by talents (sadly)
adding / replacing and updating specific options.
  Reply With Quote
09-02-12, 01:18 PM   #10
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
Going to share my implementation of the classbars here:

SHADOW ORBS

Result: http://imgur.com/a/vycLs

Lua Code:
  1. --update shadow orb power
  2.   local updateShadowOrbPower = function(self, event, unit, powerType)
  3.     if(self.unit ~= unit or (powerType and powerType ~= "SHADOW_ORBS")) then return end
  4.     local bar = self.ShadowOrbPowerBar
  5.     local num = UnitPower(unit, SPELL_POWER_SHADOW_ORBS)
  6.     local max = UnitPowerMax(unit, SPELL_POWER_SHADOW_ORBS)
  7.     if num < 1 then
  8.       if bar:IsShown() then bar:Hide() end
  9.       return
  10.     else
  11.       if not bar:IsShown() then bar:Show() end
  12.     end
  13.     --adjust the width of the shadow orb power frame
  14.     local w = 64*(max+2)
  15.     bar:SetWidth(w)
  16.     for i = 1, bar.maxOrbs do
  17.       local orb = self.ShadowOrbs[i]
  18.       if i > max then
  19.          if orb:IsShown() then orb:Hide() end
  20.       else
  21.         if not orb:IsShown() then orb:Show() end
  22.       end
  23.     end
  24.     for i = 1, max do
  25.       local orb = self.ShadowOrbs[i]
  26.       local full = num/max
  27.       if(i <= num) then
  28.         if full == 1 then
  29.           orb.fill:SetVertexColor(1,0,0)
  30.           orb.glow:SetVertexColor(1,0,0)
  31.         else
  32.           orb.fill:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  33.           orb.glow:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  34.         end
  35.         orb.fill:Show()
  36.         orb.glow:Show()
  37.         orb.highlight:Show()
  38.       else
  39.         orb.fill:Hide()
  40.         orb.glow:Hide()
  41.         orb.highlight:Hide()
  42.       end
  43.     end
  44.   end
  45.  
  46.   --create shadow orb power bar
  47.   local createShadowOrbPowerBar = function(self)
  48.  
  49.     self.ShadowOrbs = {}
  50.  
  51.     local t
  52.     local bar = CreateFrame("Frame","oUF_DiabloShadowOrbPower",self)
  53.     bar.maxOrbs = 3
  54.     local w = 64*(bar.maxOrbs+2) --create the bar for
  55.     local h = 64
  56.     --bar:SetPoint("CENTER", UIParent, "CENTER", 0, 0)
  57.     bar:SetPoint(self.cfg.shadoworbs.pos.a1,self.cfg.shadoworbs.pos.af,self.cfg.shadoworbs.pos.a2,self.cfg.shadoworbs.pos.x,self.cfg.shadoworbs.pos.y)
  58.     bar:SetWidth(w)
  59.     bar:SetHeight(h)
  60.  
  61.     --color
  62.     bar.color = self.cfg.shadoworbs.color
  63.  
  64.     --left edge
  65.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  66.     t:SetSize(64,64)
  67.     t:SetPoint("LEFT",0,0)
  68.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_left")
  69.     bar.leftEdge = t
  70.  
  71.     --right edge
  72.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  73.     t:SetSize(64,64)
  74.     t:SetPoint("RIGHT",0,0)
  75.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_right")
  76.     bar.rightEdge = t
  77.  
  78.     for i = 1, bar.maxOrbs do
  79.  
  80.       local orb = CreateFrame("Frame",nil,bar)
  81.       self.ShadowOrbs[i] = orb
  82.  
  83.       orb:SetSize(64,64)
  84.       orb:SetPoint("LEFT",i*64,0)
  85.  
  86.       local orbSizeMultiplier = 0.85
  87.  
  88.       --bar background
  89.       orb.barBg = orb:CreateTexture(nil,"BACKGROUND",nil,-8)
  90.       orb.barBg:SetSize(64,64)
  91.       orb.barBg:SetPoint("CENTER")
  92.       orb.barBg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_bar_bg")
  93.  
  94.       --orb background
  95.       orb.bg = orb:CreateTexture(nil,"BACKGROUND",nil,-7)
  96.       orb.bg:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  97.       orb.bg:SetPoint("CENTER")
  98.       orb.bg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_bg")
  99.  
  100.       --orb filling
  101.       orb.fill = orb:CreateTexture(nil,"BACKGROUND",nil,-6)
  102.       orb.fill:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  103.       orb.fill:SetPoint("CENTER")
  104.       orb.fill:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_fill1")
  105.       orb.fill:SetVertexColor(self.cfg.shadoworbs.color.r,self.cfg.shadoworbs.color.g,self.cfg.shadoworbs.color.b)
  106.       --orb.fill:SetBlendMode("ADD")
  107.  
  108.       --orb border
  109.       orb.border = orb:CreateTexture(nil,"BACKGROUND",nil,-5)
  110.       orb.border:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  111.       orb.border:SetPoint("CENTER")
  112.       orb.border:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_border")
  113.  
  114.       --orb glow
  115.       orb.glow = orb:CreateTexture(nil,"BACKGROUND",nil,-4)
  116.       orb.glow:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  117.       orb.glow:SetPoint("CENTER")
  118.       orb.glow:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_glow")
  119.       orb.glow:SetVertexColor(self.cfg.shadoworbs.color.r,self.cfg.shadoworbs.color.g,self.cfg.shadoworbs.color.b)
  120.       orb.glow:SetBlendMode("BLEND")
  121.  
  122.       --orb highlight
  123.       orb.highlight = orb:CreateTexture(nil,"BACKGROUND",nil,-3)
  124.       orb.highlight:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  125.       orb.highlight:SetPoint("CENTER")
  126.       orb.highlight:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_highlight")
  127.  
  128.     end
  129.  
  130.     bar:SetScale(self.cfg.shadoworbs.scale)
  131.     func.applyDragFunctionality(bar)
  132.  
  133.     self.ShadowOrbPowerBar = bar
  134.  
  135.   end
  136.  
  137.     --shadoworbs
  138.     if cfg.playerclass == "PRIEST" and self.cfg.shadoworbs.show then
  139.       createShadowOrbPowerBar(self)
  140.       self.ShadowOrbs.Override = updateShadowOrbPower
  141.     end
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-02-12, 01:19 PM   #11
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
HARMONY

Result: http://imgur.com/a/tLKoM

Lua Code:
  1. local SPELL_POWER_LIGHT_FORCE = SPELL_POWER_LIGHT_FORCE
  2.  
  3.   --update harmony power
  4.   local updateHarmonyPower = function(self, event, unit, powerType)
  5.     if(self.unit ~= unit or (powerType and powerType ~= "LIGHT_FORCE")) then return end
  6.     local bar = self.HarmonyPowerBar
  7.     local num = UnitPower(unit, SPELL_POWER_LIGHT_FORCE)
  8.     local max = UnitPowerMax(unit, SPELL_POWER_LIGHT_FORCE)
  9.     if num < 1 then
  10.       if bar:IsShown() then bar:Hide() end
  11.       return
  12.     else
  13.       if not bar:IsShown() then bar:Show() end
  14.     end
  15.     --adjust the width of the harmony power frame
  16.     local w = 64*(max+2)
  17.     bar:SetWidth(w)
  18.     for i = 1, bar.maxOrbs do
  19.       local orb = self.Harmony[i]
  20.       if i > max then
  21.          if orb:IsShown() then orb:Hide() end
  22.       else
  23.         if not orb:IsShown() then orb:Show() end
  24.       end
  25.     end
  26.     for i = 1, max do
  27.       local orb = self.Harmony[i]
  28.       local full = num/max
  29.       if(i <= num) then
  30.         if full == 1 then
  31.           orb.fill:SetVertexColor(1,0,0)
  32.           orb.glow:SetVertexColor(1,0,0)
  33.         else
  34.           orb.fill:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  35.           orb.glow:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  36.         end
  37.         orb.fill:Show()
  38.         orb.glow:Show()
  39.         orb.highlight:Show()
  40.       else
  41.         orb.fill:Hide()
  42.         orb.glow:Hide()
  43.         orb.highlight:Hide()
  44.       end
  45.     end
  46.   end
  47.  
  48.   --create harmony power bar
  49.   local createHarmonyPowerBar = function(self)
  50.  
  51.     self.Harmony = {}
  52.  
  53.     local t
  54.     local bar = CreateFrame("Frame","oUF_DiabloHarmonyPower",self)
  55.     bar.maxOrbs = 5
  56.     local w = 64*(bar.maxOrbs+2) --create the bar for
  57.     local h = 64
  58.     --bar:SetPoint("CENTER", UIParent, "CENTER", 0, 0)
  59.     bar:SetPoint(self.cfg.harmony.pos.a1,self.cfg.harmony.pos.af,self.cfg.harmony.pos.a2,self.cfg.harmony.pos.x,self.cfg.harmony.pos.y)
  60.     bar:SetWidth(w)
  61.     bar:SetHeight(h)
  62.  
  63.     --color
  64.     bar.color = self.cfg.harmony.color
  65.  
  66.     --left edge
  67.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  68.     t:SetSize(64,64)
  69.     t:SetPoint("LEFT",0,0)
  70.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_left")
  71.     bar.leftEdge = t
  72.  
  73.     --right edge
  74.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  75.     t:SetSize(64,64)
  76.     t:SetPoint("RIGHT",0,0)
  77.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_right")
  78.     bar.rightEdge = t
  79.  
  80.     for i = 1, bar.maxOrbs do
  81.  
  82.       local orb = CreateFrame("Frame",nil,bar)
  83.       self.Harmony[i] = orb
  84.  
  85.       orb:SetSize(64,64)
  86.       orb:SetPoint("LEFT",i*64,0)
  87.  
  88.       local orbSizeMultiplier = 0.85
  89.  
  90.       --bar background
  91.       orb.barBg = orb:CreateTexture(nil,"BACKGROUND",nil,-8)
  92.       orb.barBg:SetSize(64,64)
  93.       orb.barBg:SetPoint("CENTER")
  94.       orb.barBg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_bar_bg")
  95.  
  96.       --orb background
  97.       orb.bg = orb:CreateTexture(nil,"BACKGROUND",nil,-7)
  98.       orb.bg:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  99.       orb.bg:SetPoint("CENTER")
  100.       orb.bg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_bg")
  101.  
  102.       --orb filling
  103.       orb.fill = orb:CreateTexture(nil,"BACKGROUND",nil,-6)
  104.       orb.fill:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  105.       orb.fill:SetPoint("CENTER")
  106.       orb.fill:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_fill1")
  107.       orb.fill:SetVertexColor(self.cfg.harmony.color.r,self.cfg.harmony.color.g,self.cfg.harmony.color.b)
  108.       --orb.fill:SetBlendMode("ADD")
  109.  
  110.       --orb border
  111.       orb.border = orb:CreateTexture(nil,"BACKGROUND",nil,-5)
  112.       orb.border:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  113.       orb.border:SetPoint("CENTER")
  114.       orb.border:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_border")
  115.  
  116.       --orb glow
  117.       orb.glow = orb:CreateTexture(nil,"BACKGROUND",nil,-4)
  118.       orb.glow:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  119.       orb.glow:SetPoint("CENTER")
  120.       orb.glow:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_glow")
  121.       orb.glow:SetVertexColor(self.cfg.harmony.color.r,self.cfg.harmony.color.g,self.cfg.harmony.color.b)
  122.       orb.glow:SetBlendMode("BLEND")
  123.  
  124.       --orb highlight
  125.       orb.highlight = orb:CreateTexture(nil,"BACKGROUND",nil,-3)
  126.       orb.highlight:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  127.       orb.highlight:SetPoint("CENTER")
  128.       orb.highlight:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_highlight")
  129.  
  130.     end
  131.  
  132.     bar:SetScale(self.cfg.harmony.scale)
  133.     func.applyDragFunctionality(bar)
  134.  
  135.     self.HarmonyPowerBar = bar
  136.  
  137.   end
  138.  
  139.     --harmony
  140.     if cfg.playerclass == "MONK" and self.cfg.harmony.show then
  141.       createHarmonyPowerBar(self)
  142.       self.Harmony.Override = updateHarmonyPower
  143.     end
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-02-12, 01:22 PM   #12
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
HOLYPOWER

Result: http://imgur.com/a/lrtJj

Lua Code:
  1. local SPELL_POWER_HOLY_POWER = SPELL_POWER_HOLY_POWER
  2.  
  3.   --update holy power
  4.   local updateHolyPower = function(self, event, unit, powerType)
  5.     if(self.unit ~= unit or (powerType and powerType ~= "HOLY_POWER")) then return end
  6.     local bar = self.HolyPowerBar
  7.     local num = UnitPower("player", SPELL_POWER_HOLY_POWER)
  8.     local maxHolyPower = UnitPowerMax("player", SPELL_POWER_HOLY_POWER)
  9.     if num < 1 then
  10.       if bar:IsShown() then bar:Hide() end
  11.       return
  12.     else
  13.       if not bar:IsShown() then bar:Show() end
  14.     end
  15.     --adjust the width of the holy power frame
  16.     local w = 64*(maxHolyPower+2)
  17.     bar:SetWidth(w)
  18.     for i = 1, bar.maxOrbs do
  19.       local orb = self.HolyPower[i]
  20.       if i > maxHolyPower then
  21.          if orb:IsShown() then orb:Hide() end
  22.       else
  23.         if not orb:IsShown() then orb:Show() end
  24.       end
  25.     end
  26.     for i = 1, maxHolyPower do
  27.       local orb = self.HolyPower[i]
  28.       local full = num/maxHolyPower
  29.       if(i <= num) then
  30.         if full == 1 then
  31.           orb.fill:SetVertexColor(1,0,0)
  32.           orb.glow:SetVertexColor(1,0,0)
  33.         else
  34.           orb.fill:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  35.           orb.glow:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  36.         end
  37.         orb.fill:Show()
  38.         orb.glow:Show()
  39.         orb.highlight:Show()
  40.       else
  41.         orb.fill:Hide()
  42.         orb.glow:Hide()
  43.         orb.highlight:Hide()
  44.       end
  45.     end
  46.   end
  47.  
  48.   --create holy power bar
  49.   local createHolyPowerBar = function(self)
  50.  
  51.     self.HolyPower = {}
  52.  
  53.     local t
  54.     local bar = CreateFrame("Frame","oUF_DiabloHolyPower",self)
  55.     bar.maxOrbs = 5
  56.     local w = 64*(bar.maxOrbs+2) --create the bar for
  57.     local h = 64
  58.     --bar:SetPoint("CENTER", UIParent, "CENTER", 0, 0)
  59.     bar:SetPoint(self.cfg.holypower.pos.a1,self.cfg.holypower.pos.af,self.cfg.holypower.pos.a2,self.cfg.holypower.pos.x,self.cfg.holypower.pos.y)
  60.     bar:SetWidth(w)
  61.     bar:SetHeight(h)
  62.  
  63.     --color
  64.     bar.color = self.cfg.holypower.color
  65.  
  66.     --left edge
  67.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  68.     t:SetSize(64,64)
  69.     t:SetPoint("LEFT",0,0)
  70.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_left")
  71.     bar.leftEdge = t
  72.  
  73.     --right edge
  74.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  75.     t:SetSize(64,64)
  76.     t:SetPoint("RIGHT",0,0)
  77.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_right")
  78.     bar.rightEdge = t
  79.  
  80.     for i = 1, bar.maxOrbs do
  81.  
  82.       local orb = CreateFrame("Frame",nil,bar)
  83.       self.HolyPower[i] = orb
  84.  
  85.       orb:SetSize(64,64)
  86.       orb:SetPoint("LEFT",i*64,0)
  87.  
  88.       local orbSizeMultiplier = 0.85
  89.  
  90.       --bar background
  91.       orb.barBg = orb:CreateTexture(nil,"BACKGROUND",nil,-8)
  92.       orb.barBg:SetSize(64,64)
  93.       orb.barBg:SetPoint("CENTER")
  94.       orb.barBg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_bar_bg")
  95.  
  96.       --orb background
  97.       orb.bg = orb:CreateTexture(nil,"BACKGROUND",nil,-7)
  98.       orb.bg:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  99.       orb.bg:SetPoint("CENTER")
  100.       orb.bg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_bg")
  101.  
  102.       --orb filling
  103.       orb.fill = orb:CreateTexture(nil,"BACKGROUND",nil,-6)
  104.       orb.fill:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  105.       orb.fill:SetPoint("CENTER")
  106.       orb.fill:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_fill1")
  107.       orb.fill:SetVertexColor(self.cfg.holypower.color.r,self.cfg.holypower.color.g,self.cfg.holypower.color.b)
  108.       --orb.fill:SetBlendMode("ADD")
  109.  
  110.       --orb border
  111.       orb.border = orb:CreateTexture(nil,"BACKGROUND",nil,-5)
  112.       orb.border:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  113.       orb.border:SetPoint("CENTER")
  114.       orb.border:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_border")
  115.  
  116.       --orb glow
  117.       orb.glow = orb:CreateTexture(nil,"BACKGROUND",nil,-4)
  118.       orb.glow:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  119.       orb.glow:SetPoint("CENTER")
  120.       orb.glow:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_glow")
  121.       orb.glow:SetVertexColor(self.cfg.holypower.color.r,self.cfg.holypower.color.g,self.cfg.holypower.color.b)
  122.       orb.glow:SetBlendMode("BLEND")
  123.  
  124.       --orb highlight
  125.       orb.highlight = orb:CreateTexture(nil,"BACKGROUND",nil,-3)
  126.       orb.highlight:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  127.       orb.highlight:SetPoint("CENTER")
  128.       orb.highlight:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_highlight")
  129.  
  130.     end
  131.  
  132.     bar:SetScale(self.cfg.holypower.scale)
  133.     func.applyDragFunctionality(bar)
  134.  
  135.     self.HolyPowerBar = bar
  136.  
  137.   end
  138.  
  139.     --holypower
  140.     if cfg.playerclass == "PALADIN" and self.cfg.holypower.show then
  141.       createHolyPowerBar(self)
  142.       self.HolyPower.Override = updateHolyPower
  143.     end
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-02-12, 01:23 PM   #13
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
COMBOPOINTS

Result: http://imgur.com/a/vMZ7d

Lua Code:
  1. --update combo
  2.   local function updateCombo(self, event, unit)
  3.     if unit == "pet" then return end
  4.     local bar = self.ComboBar
  5.  
  6.     local cp = 0
  7.     if(UnitExists("vehicle") and GetComboPoints("vehicle") >= 1) then
  8.       cp = GetComboPoints("vehicle")
  9.     else
  10.       cp = GetComboPoints("player")
  11.     end
  12.  
  13.     if cp < 1 then
  14.       bar:Hide()
  15.       return
  16.     else
  17.       bar:Show()
  18.     end
  19.  
  20.     for i=1, MAX_COMBO_POINTS do
  21.       local orb = self.CPoints[i]
  22.       local full = cp/MAX_COMBO_POINTS
  23.       if(i <= cp) then
  24.         if full == 1 then
  25.           orb.fill:SetVertexColor(1,0,0)
  26.           orb.glow:SetVertexColor(1,0,0)
  27.         else
  28.           orb.fill:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  29.           orb.glow:SetVertexColor(bar.color.r,bar.color.g,bar.color.b)
  30.         end
  31.         orb.fill:Show()
  32.         orb.glow:Show()
  33.         orb.highlight:Show()
  34.       else
  35.         orb.fill:Hide()
  36.         orb.glow:Hide()
  37.         orb.highlight:Hide()
  38.       end
  39.     end
  40.  
  41.   end
  42.  
  43.   --create combo
  44.   local createComboBar = function(self)
  45.  
  46.     self.CPoints = {}
  47.  
  48.     local t
  49.     local bar = CreateFrame("Frame","oUF_DiabloComboPoints",self)
  50.     local w = 64*(MAX_COMBO_POINTS+2)
  51.     local h = 64
  52.     --bar:SetPoint("CENTER", UIParent, "CENTER", 0, 0)
  53.     bar:SetPoint(self.cfg.combobar.pos.a1,self.cfg.combobar.pos.af,self.cfg.combobar.pos.a2,self.cfg.combobar.pos.x,self.cfg.combobar.pos.y)
  54.     bar:SetWidth(w)
  55.     bar:SetHeight(h)
  56.  
  57.     --color
  58.     bar.color = self.cfg.combobar.color
  59.  
  60.     --left edge
  61.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  62.     t:SetSize(64,64)
  63.     t:SetPoint("LEFT",0,0)
  64.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_left")
  65.     bar.leftEdge = t
  66.  
  67.     --right edge
  68.     t = bar:CreateTexture(nil,"BACKGROUND",nil,-8)
  69.     t:SetSize(64,64)
  70.     t:SetPoint("RIGHT",0,0)
  71.     t:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_right")
  72.     bar.rightEdge = t
  73.  
  74.     for i = 1, MAX_COMBO_POINTS do
  75.  
  76.       local orb = CreateFrame("Frame",nil,bar)
  77.       self.CPoints[i] = orb
  78.  
  79.       orb:SetSize(64,64)
  80.       orb:SetPoint("LEFT",i*64,0)
  81.  
  82.       local orbSizeMultiplier = 0.85
  83.       if i == MAX_COMBO_POINTS then
  84.         --orbSizeMultiplier = 0.9
  85.       end
  86.  
  87.       --bar background
  88.       orb.barBg = orb:CreateTexture(nil,"BACKGROUND",nil,-8)
  89.       orb.barBg:SetSize(64,64)
  90.       orb.barBg:SetPoint("CENTER")
  91.       orb.barBg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_bar_bg")
  92.  
  93.       --orb background
  94.       orb.bg = orb:CreateTexture(nil,"BACKGROUND",nil,-7)
  95.       orb.bg:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  96.       orb.bg:SetPoint("CENTER")
  97.       orb.bg:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_bg")
  98.  
  99.       --orb filling
  100.       orb.fill = orb:CreateTexture(nil,"BACKGROUND",nil,-6)
  101.       orb.fill:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  102.       orb.fill:SetPoint("CENTER")
  103.       orb.fill:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_fill1")
  104.       orb.fill:SetVertexColor(self.cfg.combobar.color.r,self.cfg.combobar.color.g,self.cfg.combobar.color.b)
  105.       --orb.fill:SetBlendMode("ADD")
  106.  
  107.       --orb border
  108.       orb.border = orb:CreateTexture(nil,"BACKGROUND",nil,-5)
  109.       orb.border:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  110.       orb.border:SetPoint("CENTER")
  111.       orb.border:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_border")
  112.  
  113.       --orb glow
  114.       orb.glow = orb:CreateTexture(nil,"BACKGROUND",nil,-4)
  115.       orb.glow:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  116.       orb.glow:SetPoint("CENTER")
  117.       orb.glow:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_glow")
  118.       orb.glow:SetVertexColor(self.cfg.combobar.color.r,self.cfg.combobar.color.g,self.cfg.combobar.color.b)
  119.       orb.glow:SetBlendMode("BLEND")
  120.  
  121.       --orb highlight
  122.       orb.highlight = orb:CreateTexture(nil,"BACKGROUND",nil,-3)
  123.       orb.highlight:SetSize(128*orbSizeMultiplier,128*orbSizeMultiplier)
  124.       orb.highlight:SetPoint("CENTER")
  125.       orb.highlight:SetTexture("Interface\\AddOns\\oUF_Diablo\\media\\combo_orb_highlight")
  126.  
  127.     end
  128.  
  129.     bar:SetScale(self.cfg.combobar.scale)
  130.     func.applyDragFunctionality(bar)
  131.     self.ComboBar = bar
  132.  
  133.   end
  134.  
  135.     --combobar
  136.     if self.cfg.combobar.show then
  137.       createComboBar(self)
  138.       self.CPoints.Override = updateCombo
  139.     end
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-03-12, 12:34 AM   #14
Phanx
Cat.
 
Phanx's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2006
Posts: 5,617
Just curious, why do you bother with:
Code:
        if orb:IsShown() then orb:Hide() end
      else
        if not orb:IsShown() then orb:Show() end
instead of just:
Code:
        orb:Hide()
      else
        orb:Show()
I don't think there's any overhead associated with calling Show() on a frame that's already visible. It doesn't even trigger the frame's OnShow script. Same goes for OnHide. Unless there's some hidden overhead you know about (in which case, please share ) you should probably just save yourself the extra function calls.
__________________
Retired author of too many addons.
Message me if you're interested in taking over one of my addons.
Don’t message me about addon bugs or programming questions.
  Reply With Quote
09-03-12, 01:39 AM   #15
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
Because it tickles me to open a door that is already open.
But you may be right.
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-03-12, 03:05 AM   #16
Barjack
A Black Drake
AddOn Author - Click to view addons
Join Date: Apr 2009
Posts: 89
Warlocks use the totem bar for their demonic portals in the default UI. I'm not sure if this is well-supported by any existing plugins, I had to do some edits to oUF_boring_totembar to get it to work right (mainly just things assumed I was a Shaman or that my totems were Shaman totems, if I recall).
  Reply With Quote
09-03-12, 03:25 AM   #17
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
Seems like Blizzard is going crazy on warlocks. They have tons of bars.
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote
09-03-12, 06:44 AM   #18
Talyrius
An Onyxian Warder
 
Talyrius's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2008
Posts: 363
I know, right? IMO, Warlocks almost feel like an entirely new class now.
  Reply With Quote
09-03-12, 09:30 AM   #19
Rainrider
A Firelord
AddOn Author - Click to view addons
Join Date: Nov 2008
Posts: 454
Blizz uses the totem bar for DK's ghoul and Druid's mushrooms too. Just for the sake of completeness
  Reply With Quote
09-03-12, 09:46 AM   #20
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2008
Posts: 1,740
For real?
I kicked the totemframe out of rActionBarStyler...thought that thing is gone. Or are you mixing Petbar and multiCastActionBar? Need to check this later.
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
  Reply With Quote

WoWInterface » Featured Projects » oUF (Otravi Unit Frames) » List of all class bars/plugins


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off