Elitist Jerks
Register
Blogs
Chat
Forums
New Posts


Go Back   Elitist Jerks > Public Discussion > User Interface and AddOns

Welcome to Elitist Jerks
If this is your first visit, please be sure to check out the FAQ and the forum rules. Users must register to post and new registrations are subject to a one day "mute" period to get acquainted with the community. To start viewing messages, select the forum that you want to visit from the selection below.

Reply
 
LinkBack (110) Thread Tools
Old 05/21/08, 2:18 PM   #251 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Originally Posted by Adoriele View Post
Have you tried Elkano's Buff Bars yet? It's great at filtering buffs/debuffs (with the caveat that in order to filter them, you must have seen them at least once since you installed it).
I am at work right now so I cannot directly test them but this sounds like it could work. Can you display Elk's as icons without the name? I am trying to limit some of the space usage and I don't really care about the duration or name I just want to know when they have the buff/debuff.
 
User is offline.
Reply With Quote
Old 05/21/08, 2:19 PM   #252 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
@Tecknologik

Using code similar to this should work for what you're trying to do...

(if (HasAura("Divine Shield") then
"DS":Yellow
end) (if (HasAura("Divine Illumination") then
"DI":Green
end) (if (HasAura("Innervate") then
"In":Blue

end) (if (HasAura("insertbuffhere") or HasAura("otherbuffhere")) then
".":Yellow << would be for like motw and gotw

The "DS", "DI" and color after it could be dots, *'s, whatever you want to use for a symbol or placeholder. It should only show up if they have it, and in the color denoted.

If you go to page 1 in this thread, the first post, it has this setup for their buffs, so you can see what it looks like with .'s as placeholders. You can go as far as writing out the word. If there is more than 1 it should just expand. Those buffs don't last very long and are situational, so it could be helpful. Depends really on how and why you're doing it.

You should be able to do it with the icons... i'm just not entirely sure how. If you got that part figured out, you should be able to string them along like above.

Last edited by Ohi : 05/21/08 at 2:25 PM. Reason: added more info
 
User is offline.
Reply With Quote
Old 05/21/08, 2:34 PM   #253 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Originally Posted by Ohi View Post
If you go to page 1 in this thread, the first post, it has this setup for their buffs, so you can see what it looks like with .'s as placeholders. You can go as far as writing out the word. If there is more than 1 it should just expand. Those buffs don't last very long and are situational, so it could be helpful. Depends really on how and why you're doing it.
Thanks, when I read the first post again and the few after it, it makes more sense to me now.

The reason I want to set this up on my focus is for a purge focus macro or rapid target change to my focus without re-targeting it to find out what it has. Most of the buff/debuffs they can have I don't care about except ones that help with mana or allow them to become invulnerable to damage ex. Ice Block and Divine Shield. Forbearance/Hypothermia prevent those from being applied again for their duration.

I also would use it for my focus shock macro specifically on paladins so I know when they have activated divine shield and are immune to earth shock.
 
User is offline.
Reply With Quote
Old 05/21/08, 2:43 PM   #254 (permalink)
Chronic Apopheniac
 
Adoriele's Avatar
 
Night Elf Druid
 
Eldre'Thalas
Originally Posted by Tecknologik View Post
I am at work right now so I cannot directly test them but this sounds like it could work. Can you display Elk's as icons without the name? I am trying to limit some of the space usage and I don't really care about the duration or name I just want to know when they have the buff/debuff.
You can, it's how I have it set up right now. The only problem might be that I'm not sure if it inherently can access your focus, though it wouldn't be too hard to hack in if I'm not mistaken. I worked with the code a while back to add in the ability to display cooldown spirals, and it was fairly easy to read through.
 
User is offline.
Reply With Quote
Old 05/21/08, 2:48 PM   #255 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
Ya using that code, and just replacing the symbol/placeholder/word, for the actual icon code you had originally, I don't see why it wouldn't work fine.

Just make sure you have

end) before you start the next (if
 
User is offline.
Reply With Quote
Old 05/21/08, 2:57 PM   #256 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
I think I have it, just not positive about syntax. Do I need to have end specified on the next line before the next buff/debuff, or can it be on the same line? Also is there actually returns in the code or could/would it just be one big line? This is what I have right now, syntaxed so its easier to read:

[(if HasAura("Divine Shield") then "Interface/Icons/Spell_Holy_DivineIntervention":Icon end)
(if HasAura("Divine Illumination") then "Interface/Icons/Spell_Holy_DivineIllumination":Icon end)
(if HasAura("Power Infusion") then "Interface/Icons/Spell_Holy_PowerInfusion":Icon end)
(if HasAura("Innervate") then "Interface/Icons/Spell_Nature_Lightning":Icon end)]

[(if HasAura("Forbearance") then "Interface/Icons/Spell_Holy_RemoveCurse":Icon end)
(if HasAura("Hypothermia") then "Interface/Icons/Spell_Fire_BlueImmolation":Icon end)]

EDIT for clarification of position:

I want to put the buff frame icons above the focus frame on the left side expanding right and put the debuff frame icons on the right hand side expanding left. Probably need to add some left/right commands into it to specify this but I can deal with that when the time comes.

Last edited by Tecknologik : 05/21/08 at 3:04 PM.
 
User is offline.
Reply With Quote
Old 05/21/08, 3:07 PM   #257 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
(if HasAura("Divine Shield") then 
["Interface/Icons/Spell_Holy_DivineIntervention":Icon]
end)
(if HasAura("Divine Illumination") then 
["Interface/Icons/Spell_Holy_DivineIllumination":Icon]
end)
(if HasAura("Power Infusion") then 
["Interface/Icons/Spell_Holy_PowerInfusion":Icon]
end)
(if HasAura("Innervate") then 
["Interface/Icons/Spell_Nature_Lightning":Icon]
end)
(if HasDebuffType("Forbearance") then 
["Interface/Icons/Spell_Holy_RemoveCurse":Icon]
end)
(if HasDebuffType("Hypothermia") then 
["Interface/Icons/Spell_Fire_BlueImmolation":Icon]
end)

If that is the correct code for the icons then this should work...

 HasDebuffType(type, unit="player") <<  Code for debuffs which Forbearance and Hypothermia is
    Return True if friendly unit is has a debuff of type 
    [HasDebuffType(Poison)] => "True"; [HasDebuffType(Poison)] => ""
Is the code for the icons..
 Icon(data, size=0)
    Return an icon using the given path 
    ["Interface\Buttons\WHITE8X8":Icon] => "|TInterface\Buttons\WHITE8X8:0|t"

Last edited by Ohi : 05/21/08 at 3:11 PM. Reason: Put thing in code tags or it wonked out the post.
 
User is offline.
Reply With Quote
Old 05/21/08, 3:11 PM   #258 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Originally Posted by Ohi View Post
(if HasAura("Divine Shield") then 
["Interface/Icons/Spell_Holy_DivineIntervention":Icon]
end)
(if HasAura("Divine Illumination") then 
["Interface/Icons/Spell_Holy_DivineIllumination":Icon]
end)
(if HasAura("Power Infusion") then 
["Interface/Icons/Spell_Holy_PowerInfusion":Icon]
end)
(if HasAura("Innervate") then 
["Interface/Icons/Spell_Nature_Lightning":Icon]
end)
(if HasDebuffType("Forbearance") then 
["Interface/Icons/Spell_Holy_RemoveCurse":Icon]
end)
(if HasDebuffType("Hypothermia") then 
["Interface/Icons/Spell_Fire_BlueImmolation":Icon]
end)

If that is the correct code for the icons then this should work...

HasDebuffType(type, unit="player") << Code for debuffs which Forbearance and Hypothermia is
Return True if friendly unit is has a debuff of type
[HasDebuffType(Poison)] => "True"; [HasDebuffType(Poison)] => ""
Is the code for the icons..
Icon(data, size=0)
Return an icon using the given path
["Interface\Buttons\WHITE8X8":Icon] => "|TInterface\Buttons\WHITE8X8:0|t"
I knew I needed to change it to hasdebuff but totally forgot lol. Thank you for the syntax fix.
 
User is offline.
Reply With Quote
Old 05/21/08, 3:14 PM   #259 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
Ya, you can do it no problem with the buffs on the right and the debuffs on the left or vice versa, just make 2 separate code entries and align them as needed.
 
User is offline.
Reply With Quote
Old 05/21/08, 3:24 PM   #260 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
If that is the correct code for the icons then this should work...
I currently have icon's setup like that and they appear to work. The icon code listing is a little strange and hard to interpret since the syntax appears to work in two different forms.

Icon(data, size=0)
Return an icon using the given path
["Interface\Buttons\WHITE8X8":Icon] => "|TInterface\Buttons\WHITE8X8:0|t"
The one above says it should be like "Icon(*path*, size=X)" but below it has "*path*:icon". Little bit hazzy on which is the "proper" form and where you adjust size of the icon in the ladder syntax line.

Ex. Both of these appear to work to show icons:

if HasAura("Polymorph") then
"Interface/Icons/Spell_Nature_Polymorph":Icon

if AuraDuration("Hamstring", unit="target") >= 11 then
Icon("Interface/Icons/Ability_Shockwave", size=20)
 
User is offline.
Reply With Quote
Old 05/21/08, 3:56 PM   #261 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
That came from the dogtag wiki page, which is sometimes as hard as reading greek without being fluent.

LibDogTag-3.0 - WowAce Wiki

Sorry to confuse you but ya I just looked at that again myself and thought, well I think what I typed was wrong.

As long as it's working I wouldn't worry too much about it.
 
User is offline.
Reply With Quote
Old 05/21/08, 9:03 PM   #262 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Ok, so I got to test it. The buff frame works great but the debuff frame does not work. Not sure if I can make it work I can only find hasdebufftype friendly target actions, not hostile actions. Here is the Buff frame:

[(if HasAura("Divine Shield") then
Icon("Interface/Icons/Spell_Holy_DivineIntervention", size=40)
end)
(if HasAura("Divine Illumination") then
Icon("Interface/Icons/Spell_Holy_DivineIllumination", size=40)
end)
(if HasAura("Power Infusion") then
Icon("Interface/Icons/Spell_Holy_PowerInfusion", size=40)
end)
(if HasAura("Innervate") then
Icon("Interface/Icons/Spell_Nature_Lightning", size=40)
end)]

Here is what I have for the debuff frame:

[(if HasDebuffType("Forbearance") then
Icon("Interface/Icons/Spell_Holy_RemoveCurse", size=40)
end) (if HasDebuffType("Hypothermia") then
Icon("Interface/Icons/Spell_Fire_BlueImmolation", size=40)
end)]

Not sure what to do to fix the debuff frame. It has no errors I can see, it just doesn't do anything.
 
User is offline.
Reply With Quote
Old 05/21/08, 9:06 PM   #263 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
Go to the wiki, you may have to be more specific on the debuff type. Look under auras theres tags that are more specific.

In example you may have to use this for Hypothermia.

 HasIceBlock(unit="player")
    Return True if the unit has the Ice Block buff 
    [HasIceBlock] => "True"; [HasIceBlock] => ""
Not positive, but that may be a solution.
 
User is offline.
Reply With Quote
Old 05/22/08, 3:24 PM   #264 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Here is the work around I came up with for the debuff frame. The if clause is a little fuzzy. I have a feeling the AuraDuration needs to be somewhere for this to work right.

[(if HasAura("Divine Shield") ((AuraDuration("Divine Shield") + 48) > 0) then
Icon("Interface/Icons/Spell_Holy_RemoveCurse", size=40)
end)
(if HasIceBlock ((AuraDuration("Ice Block") + 18) > 0) then
Icon("Interface/Icons/Spell_Fire_BlueImmolation", size=40)
end)]

Does the AuraDuration command kick in the instant the duration appears? If it does, then

if ((AuraDuration("Divine Shield") + 48) > 0)

would return true when the target gains divine shield. Then I don't need the HasAura(...) or HasIceBlock(...)

Actually thinking about it that way seems like its the only way AuraDuration could work. I am going to post this anyway in case I missed something.
 
User is offline.
Reply With Quote
Old 05/22/08, 3:53 PM   #265 (permalink)
Chronic Apopheniac
 
Adoriele's Avatar
 
Night Elf Druid
 
Eldre'Thalas
Originally Posted by Tecknologik View Post
Here is the work around I came up with for the debuff frame. The if clause is a little fuzzy. I have a feeling the AuraDuration needs to be somewhere for this to work right.

[(if HasAura("Divine Shield") ((AuraDuration("Divine Shield") + 48) > 0) then
Icon("Interface/Icons/Spell_Holy_RemoveCurse", size=40)
end)
(if HasIceBlock ((AuraDuration("Ice Block") + 18) > 0) then
Icon("Interface/Icons/Spell_Fire_BlueImmolation", size=40)
end)]

Does the AuraDuration command kick in the instant the duration appears? If it does, then

if ((AuraDuration("Divine Shield") + 48) > 0)

would return true when the target gains divine shield. Then I don't need the HasAura(...) or HasIceBlock(...)

Actually thinking about it that way seems like its the only way AuraDuration could work. I am going to post this anyway in case I missed something.
You're going at this the wrong way. Tags are periodically refreshed, and when they are, the functions you place in them are called. So on refresh of a tag, you would call AuraDuration("Divine Shield"). If the target has Divine Shield, the function will return the duration in seconds. If not, it returns "nil". Any attempt to add "nil" to another number will throw an error, and even if it didn't, 0+48 is always greater than 0, so your tag would always show the icon. Unfortunately, there is no history involved with tags, so you'll never be able to use Divine Shield as a flag after it's gone.

Looking at your previous attempt, HasDebuffType("Forbearance") is not a useful tag. HasDebuffType() checks for a type of debuff, i.e. magic, curse, poison, etc. I could write
(if HasDebuffType(curse) then "Decurse Me!" end)
and it would pop up the text if I had Curse of Tongues, Weakness, etc. on me (or whoever the target is). Using HasDebuffType("Forbearance") returns nothing because there is no debuff of the type Forbearance. You really do want HasAura("Forbearance") for that, and it should work as intended.
 
User is offline.
Reply With Quote
Old 05/22/08, 4:18 PM   #266 (permalink)
Ohi
I have evil ovaries.
 
Ohi's Avatar
 
Gnome Mage
 
Thunderlord
That makes sense. I apologize for giving the wrong information. It just made sense since Forbearance and Hypothermia were technically debuffs, they would use the debuff coding.
 
User is offline.
Reply With Quote
Old 05/22/08, 5:00 PM   #267 (permalink)
Glass Joe
 
Orc Shaman
 
Ysondre
Originally Posted by Ohi View Post
That makes sense. I apologize for giving the wrong information. It just made sense since Forbearance and Hypothermia were technically debuffs, they would use the debuff coding.
Its ok. Made sense to me too.

So it should be:

[(if HasAura("Forbearance") then
Icon("Interface/Icons/Spell_Holy_RemoveCurse", size=40)
end)
(if HasAura("Hypothermia") then
Icon("Interface/Icons/Spell_Fire_BlueImmolation", size=40)
end)]
 
User is offline.
Reply With Quote
Old 05/23/08, 7:03 PM   #268 (permalink)
Glass Joe
 
sanny's Avatar
 
Gnome Mage
 
Aggramar (EU)
Looking for a DogTag which makes the name on my CowTip show as class color if its a player, and colors npcs with hostility colors. Can't get it to work :/
 
User is offline.
Reply With Quote
Old 05/24/08, 4:50 AM   #269 (permalink)
Glass Joe
 
Undead Warrior
 
Laughing Skull (EU)
Originally Posted by sanny View Post
Looking for a DogTag which makes the name on my CowTip show as class color if its a player, and colors npcs with hostility colors. Can't get it to work :/
[IsPlayer ? Name:ClassColor ! Name:HostileColor]
 
User is offline.
Reply With Quote
Old 05/24/08, 9:20 AM   #270 (permalink)
Von Kaiser
 
Tauren Shaman
 
Neptulon (EU)
Is there any way to add an empty line in cowtip on the left side and display a tag on the other side? If I leave it empty it just shows the tag in a "half" line. Tried adding a " " but it just doen't get displayed.
 
User is offline.
Reply With Quote
Old 05/24/08, 10:46 AM   #271 (permalink)
Glass Joe
 
sanny's Avatar
 
Gnome Mage
 
Aggramar (EU)
Originally Posted by Evilnes View Post
[IsPlayer ? Name:ClassColor ! Name:HostileColor]
It's working perfectly! Thanks a lot!
 
User is offline.
Reply With Quote
Old 05/25/08, 7:04 PM   #272 (permalink)
Don Flamenco
 
Dwarf Hunter
 
Kul Tiras
Originally Posted by Aximous View Post
Is there any way to add an empty line in cowtip on the left side and display a tag on the other side? If I leave it empty it just shows the tag in a "half" line. Tried adding a " " but it just doen't get displayed.
Try putting:

[Alpha(0) "..."]

in the left column. That should make some invisible text.
 
User is offline.
Reply With Quote
Old 05/25/08, 7:50 PM   #273 (permalink)
Glass Joe
 
Tauren Druid
 
Blackrock
I'm trying to use the Dogtag feature of StatBlocks to display my ranged attack speed (in a format like "Speed: 2.61") but only when in combat. The normal RangedStats feature can show the speed like this, but I can't seem to figure out how to make it only show it in combat.

Is there a dogtag code for ranged attack speed? If so I can't seem to figure it out.

Thanks.
 
User is offline.
Reply With Quote
Old 05/25/08, 8:24 PM   #274 (permalink)
Don Flamenco