What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

How to detect debuff stacks

Stree

New Member
Joined
Jun 9, 2011
Messages
276
Reaction score
2
Hello. I am looking to find out how I can detect the number of stacks of a debuff is up on the target (for executioner, or sunder armor, etc)?
 
Hello. I am looking to find out how I can detect the number of stacks of a debuff is up on the target (for executioner, or sunder armor, etc)?


ret => HasAuraStacks("Sunder Armor", 3) or something like that i think

You could also try if
Code:
(Me.CurrentTarget.HasAura["Sunder Armor"].StackCount < 3)
      if (CastSpell("Sunder Armor")==true)
 
Last edited:
here is an example...

Code:
private bool NeedStackEvangelism()
        {
            TimeSpan ts = new TimeSpan(0, 0, 0, 4, 0);
            if (!Me.HasAura("Evangelism")
                || (Me.HasAura("Evangelism")
                      && Me.Auras["Evangelism"].StackCount < 5
                      || Me.Auras["Evangelism"].TimeLeft < ts))
            {
                return true;
            }
            else
            {
                return false;
            }
        }

Make sure you check to see if you have the aura before you count the stacks.
 
here is an example...

Code:
private bool NeedStackEvangelism()
        {
            TimeSpan ts = new TimeSpan(0, 0, 0, 4, 0);
            if (!Me.HasAura("Evangelism")
                || (Me.HasAura("Evangelism")
                      && Me.Auras["Evangelism"].StackCount < 5
                      || Me.Auras["Evangelism"].TimeLeft < ts))
            {
                return true;
            }
            else
            {
                return false;
            }
        }
Make sure you check to see if you have the aura before you count the stacks.

Better way:
Code:
private bool NeedStackEvangelism()
{
	return !Me.HasAura("Evangelism") || Me.Auras["Evangelism"].StackCount < 5 || Me.Auras["Evangelism"].TimeLeft.Seconds < 4;
}
 
So then by using

Code:
private bool NeedStackExecutioner()
{
	return !Me.HasAura("Executioner") || Me.Auras["Executioner"].StackCount < 5 || Me.Auras["Executioner"].TimeLeft.Seconds < 4;
}

To actually use it in a rotation would be something like
Code:
if (NeedStackExecutioner() == true)
    if (CastSpell ("Execute") == true)
        Logging.Write(Color.Teal, "">> Execute for Stacks <<");

??
 
So then by using

Code:
private bool NeedStackExecutioner()
{
	return !Me.HasAura("Executioner") || Me.Auras["Executioner"].StackCount < 5 || Me.Auras["Executioner"].TimeLeft.Seconds < 4;
}

To actually use it in a rotation would be something like
Code:
if (NeedStackExecutioner() == true)
    if (CastSpell ("Execute") == true)
        Logging.Write(Color.Teal, "">> Execute for Stacks <<");

??

There is no need for the == true,

Code:
if (boolean)

NeedStackExecutioner() returns a boolean.

So you can just do:

Code:
if (NeedStackExecutioner())
 
Back
Top