Skip to content

UNIT


is

Parameters

  • UNIT1: The first unit to compare.
  • UNIT2: The second unit to compare.

Returns BOOL

  • true if the two units are the same, false otherwise.

Example:

{ACTION, "UNIT1.is(UNIT2)", UNIT1},
_A.DSL:Get("is")("UNIT1", "UNIT2")
UNIT1:Is(UNIT2)

groupSize

groupSize || group.members || num.members

Parameters

  • None

Returns NUMBER

  • The total number of group members (including the player). Returns 0 if not in a group.

Example:

{ACTION, "groupSize > 1"},
_A.DSL:Get("groupSize")()

IsSolo

Parameters

  • None

Returns BOOL

  • true if the player is not in a group, false otherwise.

Example:

{ACTION, "IsSolo"},
_A.DSL:Get("IsSolo")()

IsParty

Parameters

  • None

Returns BOOL

  • true if the player is in a party (1-5 members), false otherwise.

Example:

{ACTION, "IsParty"},
_A.DSL:Get("IsParty")()

IsRaid

Parameters

  • None

Returns BOOL

  • true if the player is in a raid (more than 5 members), false otherwise.

Example:

{ACTION, "IsRaid"},
_A.DSL:Get("IsRaid")()

groupType

Parameters

  • None

Returns NUMBER

  • Returns a numeric value representing the group type:
    • 3 = RAID
    • 2 = Party
    • 1 = SOLO

Example:

{ACTION, "group.type==3"},
_A.DSL:Get("groupType")() == 3

ingroup

Parameters

  • UNIT: The unit to check for group membership.

Returns BOOL

  • true if the specified unit is in the player's party or raid group, false otherwise.

Example:

{ACTION, "ingroup", UNIT},
_A.DSL:Get("ingroup")("UNIT")
UNIT:Ingroup()

incdmg

Parameters

  • UNIT: The unit to calculate incoming damage for.
  • seconds: The time frame in seconds to calculate incoming damage for (default is 3 seconds).

Returns NUMBER

  • The total damage taken by the unit in the specified time frame, or 0 if the target doesn't exist.

Example:

{ACTION, "UNIT.incdmg(3) > 10000", UNIT},
_A.DSL:Get("incdmg")("UNIT", "3") > 10000
UNIT:Incdmg(3) > 10000

incdmg.phys

Parameters

  • UNIT: The unit for which to calculate incoming physical damage.
  • seconds: The time frame in seconds to calculate incoming physical damage for (default is 3 seconds).

Returns NUMBER

  • The total damage taken by the unit in the specified time frame, or 0 if the target doesn't exist.

Example:

{ACTION, "UNIT.incdmg.phys(3) > 10000", UNIT},
_A.DSL:Get("incdmg.phys")("UNIT", "3") > 10000
UNIT:IncdmgPhys(3) > 10000

incdmg.magic

Parameters

  • UNIT: The unit for which to calculate incoming magic damage.
  • seconds: The time frame in seconds to calculate incoming magic damage for (default is 3 seconds).

Returns NUMBER

  • The total damage taken by the unit in the specified time frame, or 0 if the target doesn't exist.

Example:

{ACTION, "UNIT.incdmg.magic(3) > 10000", UNIT},
_A.DSL:Get("incdmg.magic")("UNIT", "3") > 10000
UNIT:IncdmgMagic(3) > 10000

incdmg.reset

!> DEPRECATED

  • This condition is no longer necessary as damage tracking now automatically resets. Calling this function has no effect.

Parameters

  • UNIT: The unit to reset the incoming damage counter for.

Returns NIL

  • This condition does not return a value.

Example:

{ACTION, "UNIT.incdmg.reset", UNIT}, -- No longer needed
_A.DSL:Get("incdmg.reset")("UNIT") -- No longer needed
UNIT:IncdmgReset() -- No longer needed

incdmg.phys.reset

!> DEPRECATED

  • This condition is no longer necessary as physical damage tracking now automatically resets. Calling this function has no effect.

Parameters

  • UNIT: The unit to reset the incoming physical damage counter for.

Returns NIL

  • This condition does not return a value.

Example:

{ACTION, "UNIT.incdmg.phys.reset", UNIT}, -- No longer needed
_A.DSL:Get("incdmg.phys.reset")("UNIT") -- No longer needed
UNIT:IncdmgPhysReset() -- No longer needed

incdmg.magic.reset

!> DEPRECATED

  • This condition is no longer necessary as magic damage tracking now automatically resets. Calling this function has no effect.

Parameters

  • UNIT: The unit to reset the incoming magic damage counter for.

Returns NIL

  • This condition does not return a value.

Example:

{ACTION, "UNIT.incdmg.magic.reset", UNIT}, -- No longer needed
_A.DSL:Get("incdmg.magic.reset")("UNIT") -- No longer needed
UNIT:IncdmgMagicReset() -- No longer needed

boss

boss || isBoss

Parameters

  • UNIT: The unit to check for boss status.

Returns BOOL

  • true if the unit is a boss, false otherwise.

Example:

{ACTION, "UNIT.boss", UNIT},
_A.DSL:Get("boss")("UNIT")
UNIT:Boss()

elite

Parameters

  • UNIT: The unit to check for elite classification.

Returns BOOL

  • true if the unit has an elite classification, false otherwise.

Example:

{ACTION, "UNIT.elite", UNIT},
_A.DSL:Get("elite")("UNIT")
UNIT:Elite()

classification

Parameters

  • UNIT: The unit to check for classification.
  • classif: The classification string to compare with. Multiple classifications can be separated by spaces or commas.

    classif
    worldboss
    rareelite
    elite
    rare
    normal
    trivial
    minus

Returns BOOL

  • true if the unit's classification matches any of the given classifications, false otherwise.

Example:

{ACTION, "UNIT.classification(rare)", UNIT},
_A.DSL:Get("classification")("UNIT", "rare")
UNIT:Classification("rare")

worldboss

Parameters

  • UNIT: The unit to check for world boss classification.

Returns BOOL

  • true if the unit is classified as a world boss, false otherwise.

Example:

{ACTION, "UNIT.worldboss", UNIT},
_A.DSL:Get("worldboss")("UNIT")
UNIT:Worldboss()

id

Parameters

  • UNIT: The unit whose ID will be checked.
  • ID_STRING: The expected numeric ID, passed as a string.

Returns BOOL

  • true if the unit's actual numeric ID matches the numeric ID parsed from the ID_STRING, false otherwise.

Example:

{ACTION, "UNIT.id(1589)", UNIT},
_A.DSL:Get("id")("UNIT", "1589")
UNIT:Id(1589)

reaction

Parameters

  • UNIT: The unit to check for reaction level.

Returns NUMBER

  • The reaction level of the unit towards the player:
    • 1 = Hated
    • 2 = Hostile
    • 3 = Unfriendly
    • 4 = Neutral
    • 5 = Friendly
    • 6 = Honored
    • 7 = Revered
    • 8 = Exalted
    • 0 = Unknown or unit doesn't exist

Example:

{ACTION, "UNIT.reaction >= 4", UNIT},
_A.DSL:Get("reaction")("UNIT") >= 4
UNIT:Reaction() >= 4

hasReaction

Parameters

  • UNIT: The unit to check for the reaction.
  • reaction: The expected reaction level (can be a number or string name: "hated", "hostile", "unfriendly", "neutral", "friendly", "honored", "revered", "exalted").

Returns BOOL

  • true if the unit has the expected reaction level, false otherwise.

Example:

{ACTION, "UNIT.hasReaction(hostile)", UNIT},
{ACTION, "UNIT.hasReaction(2)", UNIT},
_A.DSL:Get("hasReaction")("UNIT", "hostile")
_A.DSL:Get("hasReaction")("UNIT", "2")
UNIT:HasReaction("hostile")
UNIT:HasReaction(2)

threat

Parameters

  • UNIT: The unit to check for threat percentage towards the player.

Returns NUMBER

  • The unit's threat percentage against the player. At 100% the player will become the primary target.

Example:

{ACTION, "UNIT.threat >= 80", UNIT},
_A.DSL:Get("threat")("UNIT") >= 80
UNIT:Threat() >= 80

aggro

Parameters

  • UNIT: The unit to check for aggro on the player.

Returns BOOL

  • true if the target has aggro on the player, false otherwise.

Example:

{ACTION, "UNIT.aggro", UNIT},
_A.DSL:Get("aggro")("UNIT")
UNIT:Aggro()

UnitThreatSituation

Parameters

  • UNIT1: The first unit to check threat situation.
  • UNIT2: The second unit to check threat situation against.

Returns NUMBER | NIL

  • Returns the threat situation status between two units, or nil if either unit doesn't exist.
    • 0 = Unit does not have threat
    • 1 = Unit has threat but is not tanking (another unit has higher threat)
    • 2 = Unit has highest threat (is tanking)
    • 3 = Unit has threat and is tanking, but another unit is about to gain threat

Example:

{ACTION, "UNIT1.UnitThreatSituation(UNIT2) >= 2", UNIT1},
_A.DSL:Get("UnitThreatSituation")("UNIT1", "UNIT2")
UNIT1:UnitThreatSituation(UNIT2)

speed

Parameters

  • UNIT: The unit whose speed to retrieve.

Returns NUMBER

  • The speed of the unit in yards per second. Returns 0 if the unit doesn't exist.

Example:

{ACTION, "UNIT.speed > 0", UNIT},
_A.DSL:Get("speed")("UNIT") > 0
UNIT:Speed() > 0

moving

Parameters

  • UNIT: The unit to check if is currently moving

Returns BOOL

  • true if the unit is moving, false otherwise.

Example:

{ACTION, "UNIT.moving", UNIT},
_A.DSL:Get("moving")("UNIT")
UNIT:Moving()

IsMovingForward

Parameters

  • UNIT: The unit to check if it is moving forward.

Returns BOOL

  • true if the unit is moving forward, false otherwise.

Example:

{ACTION, "UNIT.IsMovingForward", UNIT},
_A.DSL:Get("IsMovingForward")("UNIT")
UNIT:IsMovingForward()

IsMovingBackward

Parameters

  • UNIT: The unit to check if it is moving backward.

Returns BOOL

  • true if the unit is moving backward, false otherwise.

Example:

{ACTION, "UNIT.IsMovingBackward", UNIT},
_A.DSL:Get("IsMovingBackward")("UNIT")
UNIT:IsMovingBackward()

IsStrafeLeft

Parameters

  • UNIT: The unit to check if it is strafing left.

Returns BOOL

  • true if the unit is strafing left, false otherwise.

Example:

{ACTION, "UNIT.IsStrafeLeft", UNIT},
_A.DSL:Get("IsStrafeLeft")("UNIT")
UNIT:IsStrafeLeft()

IsStrafeRight

Parameters

  • UNIT: The unit to check if it is strafing right.

Returns BOOL

  • true if the unit is strafing right, false otherwise.

Example:

{ACTION, "UNIT.IsStrafeRight", UNIT},
_A.DSL:Get("IsStrafeRight")("UNIT")
UNIT:IsStrafeRight()

predictPosition

Parameters

  • UNIT: The unit whose position is to be predicted.
  • seconds: The time in seconds into the future for which to predict the unit's position.

Returns NUMBER, NUMBER, NUMBER | NIL

  • The predicted x, y, z coordinates of the unit, or nil if the prediction cannot be made.

Example:

{ACTION, "UNIT.predictPosition(3)", UNIT},
_A.DSL:Get("predictPosition")("UNIT", "3")
UNIT:PredictPosition(3)

currentSpeed

Parameters

  • UNIT: The unit whose current speed to retrieve.

Returns NUMBER

  • The current speed of the unit in yards per second.

Example:

{ACTION, "UNIT.currentSpeed > 5", UNIT},
_A.DSL:Get("currentSpeed")("UNIT") > 5
UNIT:CurrentSpeed() > 5

walkSpeed

Parameters

  • UNIT: The unit whose walking speed to retrieve.

Returns NUMBER

  • The walking speed of the unit in yards per second.

Example:

{ACTION, "UNIT.walkSpeed > 2", UNIT},
_A.DSL:Get("walkSpeed")("UNIT") > 2
UNIT:WalkSpeed() > 2

runSpeed

Parameters

  • UNIT: The unit whose running speed to retrieve.

Returns NUMBER

  • The running speed of the unit in yards per second.

Example:

{ACTION, "UNIT.runSpeed > 7", UNIT},
_A.DSL:Get("runSpeed")("UNIT") > 7
UNIT:RunSpeed() > 7

backSpeed

Parameters

  • UNIT: The unit whose backward speed to retrieve.

Returns NUMBER

  • The backward speed of the unit in yards per second.

Example:

{ACTION, "UNIT.backSpeed > 3", UNIT},
_A.DSL:Get("backSpeed")("UNIT") > 3
UNIT:BackSpeed() > 3

swimSpeed

Parameters

  • UNIT: The unit whose swimming speed to retrieve.

Returns NUMBER

  • The swimming speed of the unit in yards per second.

Example:

{ACTION, "UNIT.swimSpeed > 4", UNIT},
_A.DSL:Get("swimSpeed")("UNIT") > 4
UNIT:SwimSpeed() > 4

target

Parameters

  • UNIT1: The unit whose target will be checked.
  • UNIT2: The unit to compare the target against.

Returns BOOL

  • true if the target of the specified unit1 matches the given unit2, false otherwise.

Example:

{ACTION, "UNIT1.target(UNIT2)", UNIT1},
_A.DSL:Get("target")("UNIT1", "UNIT2")
UNIT1:Target(UNIT2)

targetme

  • This condition checks if the specified unit is targeting the player.

Parameters

  • UNIT: The unit to check for targeting.

Returns BOOL

  • true if the unit is targeting the player, otherwise false.

Examples:

{ACTION, "UNIT.targetme", UNIT},
_A.DSL:Get("targetme")("UNIT")
UNIT:IsTargetMe()

isplayer

isplayer || player

Parameters

  • UNIT: The unit to be checked.

Returns BOOL

  • true if the unit is a player-controlled unit, false otherwise.

Example:

{ACTION, "UNIT.isplayer", UNIT},
_A.DSL:Get("isplayer")("UNIT")
UNIT:Isplayer()

inphase

Parameters

  • UNIT: The unit to be checked for being in the same phase.

Returns BOOL

  • true if the unit is in the same phase as the player, false otherwise.

Example:

{ACTION, "UNIT.inphase", UNIT},
_A.DSL:Get("inphase")("UNIT")
UNIT:Inphase()

exists

Parameters

  • UNIT: The unit to be checked for existence.

Returns BOOL

  • true if the unit exists, false otherwise.

Example:

{ACTION, "UNIT.exists", UNIT},
_A.DSL:Get("exists")("UNIT")
UNIT:Exists()

guid

Parameters

  • UNIT: The unit for which to retrieve the GUID.

Returns STRING

  • The GUID of the target, or nil if the target is not valid.

Example:

_A.DSL:Get("guid")("UNIT")
UNIT.guid
or
UNIT:Guid()

visible

Parameters

  • UNIT: The unit to check for visibility.

Returns BOOL

  • true if the unit is visible, false otherwise.

Example:

{ACTION, "UNIT.visible", UNIT},
_A.DSL:Get("visible")("UNIT")
UNIT:Visible()

dead

Parameters

  • UNIT: The unit to check for death or ghost state.

Returns BOOL

  • true if the unit is dead or a ghost, false otherwise.

Example:

{ACTION, "UNIT.dead", UNIT},
_A.DSL:Get("dead")("UNIT")
UNIT:Dead()

alive

Parameters

  • UNIT: The unit to check for being alive.

Returns BOOL

  • true if the unit is alive, false if it is dead or a ghost.

Example:

{ACTION, "UNIT.alive", UNIT},
_A.DSL:Get("alive")("UNIT")
UNIT:Alive()

infront

Parameters

  • UNIT: The unit to check if the player is facing.

Returns BOOL

  • true if the player is facing the unit, false otherwise.

Example:

{ACTION, "UNIT.infront", UNIT},
_A.DSL:Get("infront")("UNIT")
UNIT:Infront()

infrontof

Parameters

  • UNIT1: The unit that is checked to be in front.
  • UNIT2: The unit to check if it is facing UNIT.

Returns BOOL

  • true if unit2 is facing unit1, false otherwise.

Example:

{ACTION, "UNIT1.infrontof(UNIT2)", UNIT1},
_A.DSL:Get("infrontof")("UNIT1", "UNIT2")
UNIT1:Infrontof(UNIT2)

behind

Parameters

  • UNIT: The unit to check if the player is behind.

Returns BOOL

  • true if player is behind the unit, false otherwise.

Example:

{ACTION, "UNIT.behind", UNIT},
_A.DSL:Get("behind")("UNIT")
UNIT:Behind()

behindof

Parameters

  • UNIT1: The unit to check if it is behind unit2.
  • UNIT2: The reference unit.

Returns BOOL

  • true if unit1 is behind unit2, false otherwise.

Example:

{ACTION, "UNIT1.behindof(UNIT2)", UNIT1},
_A.DSL:Get("behindof")("UNIT1", "UNIT2")
UNIT1:Behindof(UNIT2)

inConeOf

Parameters

  • UNIT1: The unit to check if it is within the cone.
  • UNIT2_ANGLE: The reference unit and the cone angle (optional, default angle is 180 degrees). Provide as a string in the format "unit2, angle".

Returns BOOL

  • true if unit1 is within the specified cone angle in front of unit2, false otherwise.

Example:

{ACTION, "UNIT1.inConeOf(UNIT2, 120)", UNIT},
_A.DSL:Get("inConeOf")("UNIT1", "UNIT2, 120")
UNIT1:InConeOf(UNIT2, 120)

lastmoved

Parameters

  • UNIT: The unit to check for movement.

Returns NUMBER

  • The time in seconds since the unit was last moved, or 0 if the unit is not valid or has not moved.

Example:

{ACTION, "UNIT.lastmoved", UNIT},
_A.DSL:Get("lastmoved")("UNIT")
UNIT:Lastmoved()

movingfor

Parameters

  • UNIT: The unit to check for movement.

Returns NUMBER

  • The time in seconds that the unit has been continuously moving, or 0 if the unit is not valid or is not moving.

Example:

{ACTION, "UNIT.movingfor", UNIT},
_A.DSL:Get("movingfor")("UNIT")
UNIT:Movingfor()

movingToward

Parameters

  • UNIT1: The unit to check if it is moving toward another unit.
  • UNIT2_ANGLE_SEC: A string containing the target unit, optional angle (default 30 degrees), and optional time threshold (default 0 seconds) separated by commas (e.g., "unit2, 45, 0.5").

Returns BOOL

  • true if unit1 is moving toward unit2 within the specified angle and has been moving for at least the specified seconds, false otherwise.

Example:

{ACTION, "UNIT1.movingToward(UNIT2, 30, 0.5)", UNIT1},
_A.DSL:Get("movingToward")("UNIT1", "UNIT2, 30, 0.5")
UNIT1:MovingToward("UNIT2", 30, 0.5)

movingAwayFrom

Parameters

  • UNIT1: The unit to check if another unit is moving away from it.
  • UNIT2_ANGLE_SEC: A string containing the moving unit, optional angle (default 220 degrees), and optional time threshold (default 0 seconds) separated by commas (e.g., "unit2, 220, 0.5").

Returns BOOL

  • true if unit2 is moving away from unit1 within the specified angle and has been moving for at least the specified seconds, false otherwise.

Example:

{ACTION, "UNIT1.movingAwayFrom(UNIT2, 220, 0.5)", UNIT1},
_A.DSL:Get("movingAwayFrom")("UNIT1", "UNIT2, 220, 0.5")
UNIT1:MovingAwayFrom("UNIT2", 220, 0.5)

pvp

Parameters

  • UNIT: The unit to check for PvP flag with the player.

Returns BOOL

  • true if the unit is flagged for PvP, false otherwise.

Example:

{ACTION, "UNIT.pvp", UNIT},
_A.DSL:Get("pvp")("UNIT")
UNIT:Pvp()

friend

Parameters

  • UNIT: The unit to check for friendly status.

Returns BOOL

  • true if the unit is friendly, false otherwise.

Example:

{ACTION, "UNIT.friend", UNIT},
_A.DSL:Get("friend")("UNIT")
UNIT:Friend()

canassist

Parameters

  • UNIT: The unit to check for assist eligibility.

Returns BOOL

  • true if the player can assist the unit, false otherwise.

Example:

{ACTION, "UNIT.canassist", UNIT},
_A.DSL:Get("canassist")("UNIT")
UNIT:Canassist()

enemy

enemy || isenemy || canattack

Parameters

  • UNIT: The unit to check for enemy status or attack eligibility.

Returns BOOL

  • true if the unit is an enemy, false otherwise.

Example:

{ACTION, "UNIT.enemy", UNIT},
_A.DSL:Get("enemy")("UNIT")
UNIT:Enemy()

range

Parameters

  • UNIT: The unit to measure combat range against.
  • TIPO (optional): The type of range to check. 1 for default/melee range, 2 for caster range. Defaults to 1.

Returns NUMBER

  • The combat range between the player and the unit, or 999 if the range cannot be determined.

Example:

{ACTION, "UNIT.range < 20", UNIT},
{ACTION, "UNIT.range(2) < 30", UNIT},
_A.DSL:Get("range")("UNIT") < 20
_A.DSL:Get("range")("UNIT", "2") < 30
UNIT:Range() < 20
UNIT:Range(2) < 30

rangefrom

Parameters

  • UNIT1: The first unit to measure combat range from.
  • UNIT2_TIPO: The second unit to measure combat range to, and an optional type. Provide as a string in the format "unit2, tipo". tipo can be 1 for default/melee range, or 2 for caster range. Defaults to 1.

Returns NUMBER

  • The combat range between the two units, or 999 if the range cannot be determined.

Example:

{ACTION, "UNIT1.rangefrom(UNIT2) < 20", UNIT},
{ACTION, "UNIT1.rangefrom(UNIT2, 2) < 30", UNIT},
_A.DSL:Get("rangefrom")("UNIT1", "UNIT2") < 20
_A.DSL:Get("rangefrom")("UNIT1", "UNIT2, 2") < 30
UNIT1:Rangefrom(UNIT2) < 20
UNIT1:Rangefrom("UNIT2, 2") < 30

distance

Parameters

  • UNIT: The unit to measure distance against.

Returns NUMBER

  • The distance between the player and the unit, or 999 if the distance cannot be determined.

Example:

{ACTION, "UNIT.distance < 20", UNIT},
_A.DSL:Get("distance")("UNIT") < 20
UNIT:Distance() < 20

distancefrom

Parameters

  • UNIT1: The first unit to measure distance from.
  • UNIT2: The second unit to measure distance to.

Returns NUMBER

  • The distance between the two units, or 999 if the range cannot be determined.

Example:

{ACTION, "UNIT1.distancefrom(UNIT2) < 20", UNIT},
_A.DSL:Get("distancefrom")("UNIT1", "UNIT2") < 20
UNIT1:Distancefrom(UNIT2) < 20

petrange

Parameters

  • UNIT: The unit to measure pet's combat range against.

Returns NUMBER

  • The combat range between the player's pet and the unit, or 999 if the range cannot be determined.

Example:

{ACTION, "UNIT.petrange < 5", UNIT},
_A.DSL:Get("petrange")("UNIT") < 5
UNIT:Petrange() < 5

petdistance

Parameters

  • UNIT: The unit to measure pet's distance against.

Returns NUMBER

  • The distance between the player's pet and the unit, or 999 if the distance cannot be determined.

Example:

{ACTION, "UNIT.petdistance < 10", UNIT},
_A.DSL:Get("petdistance")("UNIT") < 10
UNIT:Petdistance() < 10

level

Parameters

  • UNIT: The unit whose level to retrieve.

Returns NUMBER

  • The level of the unit, or -1 if the level cannot be determined.

Example:

{ACTION, "UNIT.level >= 45", UNIT},
_A.DSL:Get("level")("UNIT") >= 45
UNIT:Level() >= 45

combat

Parameters

  • UNIT: The unit to check for combat status.

Returns BOOL

  • true if the unit is in combat, false otherwise.

Example:

{ACTION, "UNIT.combat", UNIT},
_A.DSL:Get("combat")("UNIT")
UNIT:Combat()

role

Parameters

  • UNIT: The unit whose role to retrieve.

Returns STRING

  • The role assigned to the target unit: "TANK", "HEALER", "DAMAGER", or "UNKNOWN" if the role cannot be determined.

    For WOTLK version

    For WOTLK version returns TANK, HEALER, DAMAGER, MELEE, CASTER, NONE

Example:

_A.DSL:Get("role")("UNIT") == "HEALER"
UNIT.role == "HEALER"
or
UNIT:Role() == "HEALER"

hasrole

Parameters

  • UNIT: The unit to check for the role.
  • expectedRole The expected role to search for within the unit's role. Multiple roles can be separated by "||".

    "TANK", "HEALER", "DAMAGER", or "UNKNOWN"

Returns BOOL

  • true if the unit has a role containing the expected name, false otherwise.

Example:

{ACTION, "UNIT.hasrole(TANK)", UNIT},
_A.DSL:Get("hasrole")("UNIT", "TANK")
UNIT:Hasrole("TANK")

name

Parameters

  • UNIT: The unit whose name to retrieve.

Returns STRING

  • The name of the unit, or Unknown if the name cannot be determined.

Example:

_A.DSL:Get("name")("UNIT") == "Gul'dan"
UNIT.name == "Gul'dan"
or
UNIT:Name() == "Gul'dan"

hasname

Parameters

  • UNIT: The unit to check for the name.
  • expectedName The expected name to search for within the unit's name. Multiple names can be separated by "||".

Returns BOOL

  • true if the unit has a name containing the expected name, false otherwise.

Example:

{ACTION, "UNIT.hasname(Gul'dan)", UNIT},
_A.DSL:Get("hasname")("UNIT", "Gul'dan")
UNIT:Hasname("Gul'dan")

creature.type

creature.type || creatureType

Parameters

  • UNIT: The unit whose creature type to retrieve.

Returns STRING

  • The localized creature type of the unit, or nil if the creature type cannot be determined.

    • enUS "Aberration", "Beast", "Critter", "Demon", "Dragonkin", "Elemental", "Gas Cloud", "Giant", "Humanoid", "Mechanical", "Non-combat Pet", "Not specified", "Totem", "Undead", "Wild Pet"

Example:

_A.DSL:Get("creature.type")("UNIT") ~= "Undead"
UNIT:CreatureType() ~= "Undead"

hascreature.type

hascreature.type || hascreatureType

Parameters

  • UNIT: The unit to check for the creature type.
  • expectedType The localized expected creature type to compare with. Multiple types can be separated by "||".

Returns BOOL

  • true if the unit has the expected creature type, false otherwise.

Example:

{ACTION, "UNIT.hascreature.type(Humanoid)", UNIT},
_A.DSL:Get("hascreature.type")("UNIT", "Humanoid")
UNIT:HascreatureType("Humanoid")

hasclass

hasclass || class

Parameters

  • UNIT: The unit to check for the class.
  • expectedClass The expected class name or ID to compare with. Multiple classes can be separated by "||".

Returns BOOL

  • true if the unit belongs to the expected class, false otherwise.

Example:

{ACTION, "UNIT.hasclass(WARRIOR)", UNIT},
_A.DSL:Get("hasclass")("UNIT", "WARRIOR")
UNIT:Hasclass("WARRIOR")

hasRace

Parameters

  • UNIT: The unit to check for the race.
  • expectedRace: The expected race name to compare with. Multiple races can be separated by "||". Note: "undead" is internally converted to "scourge".

Returns BOOL

  • true if the unit belongs to the expected race, false otherwise.

Example:

{ACTION, "UNIT.hasRace(Human||Orc)", UNIT},
_A.DSL:Get("hasRace")("UNIT", "Human||Orc")
UNIT:HasRace("Human||Orc")

hasFaction

Parameters

  • UNIT: The unit to check for faction.
  • expectedFaction: The expected faction name ("Alliance" or "Horde").

Returns BOOL

  • true if the unit belongs to the expected faction, false otherwise.

Example:

{ACTION, "UNIT.hasFaction(Alliance)", UNIT},
_A.DSL:Get("hasFaction")("UNIT", "Alliance")
UNIT:HasFaction("Alliance")

combatReach

Parameters

  • UNIT: The unit whose combat reach to retrieve.

Returns NUMBER

  • The combat reach of the unit in yards. Returns 1.5 if the combat reach cannot be determined.

Example:

{ACTION, "UNIT.combatReach > 2", UNIT},
_A.DSL:Get("combatReach")("UNIT") > 2
UNIT:CombatReach() > 2

inmelee

Parameters

  • UNIT: The unit to check for melee range.

Returns BOOL

  • true if the target unit is within melee range, false otherwise.

Example:

{ACTION, "UNIT.inmelee", UNIT},
_A.DSL:Get("inmelee")("UNIT")
UNIT:Inmelee()

inranged

Parameters

  • UNIT: The unit to check for ranged combat range.

Returns BOOL

  • true if the unit is within the ranged combat range of 40, false otherwise.

Example:

{ACTION, "UNIT.inranged", UNIT},
_A.DSL:Get("inranged")("UNIT")
UNIT:Inranged()

timetodie

timetodie || deathin || ttd

Parameters

  • UNIT: The unit for which to estimate time to death.

Returns NUMBER

  • The estimated time to death in seconds. Returns a high value if is a dummy.

Example:

{ACTION, "UNIT.ttd > 8", UNIT},
_A.DSL:Get("ttd")("UNIT") > 8
UNIT:Ttd() > 8

charmed

Parameters

  • UNIT: The unit to check for being charmed.

Returns BOOL

  • true if the unit is charmed, false otherwise.

Example:

{ACTION, "UNIT.charmed", UNIT},
_A.DSL:Get("charmed")("UNIT")
UNIT:Charmed()

timetopercent

timetopercent || ttp

Parameters

  • UNIT: The unit for which to estimate time to reach a specific health percentage.
  • PERCENTAGE: The health percentage (0-100) to which you want to estimate the time. If not provided or invalid, defaults to 0%.

Returns NUMBER

  • The estimated time to X percentage in seconds. Returns a high value if the calculation cannot be performed.

Example:

{ACTION, "UNIT.ttp(20) > 35", UNIT},
_A.DSL:Get("ttp")("UNIT", "20") > 35
UNIT:Ttp(20) > 35

isdummy

Parameters

  • UNIT: The unit to check for being a dummy unit.

Returns BOOL

  • true if the unit is a dummy unit, false otherwise.

Example:

{ACTION, "UNIT.isdummy", UNIT},
_A.DSL:Get("isdummy")("UNIT")
UNIT:Isdummy()

swimming

Parameters

  • None

Returns BOOL

  • true if the player is swimming, false otherwise.

Example:

{ACTION, "swimming"},
_A.DSL:Get("swimming")()

falling

Parameters

  • None

Returns BOOL

  • true if the player is falling, false otherwise.

Example:

{ACTION, "falling"},
_A.DSL:Get("falling")()

indoors

Parameters

  • None

Returns BOOL

  • true if the player is indoors, false otherwise.

Example:

{ACTION, "indoors"},
_A.DSL:Get("indoors")()

haste

Parameters

  • UNIT: The unit for which to retrieve the spell haste percentage.

Returns NUMBER

  • The spell haste percentage of the specified unit.

Example:

{ACTION, "UNIT.haste > 30", UNIT},
_A.DSL:Get("haste")("UNIT") > 30
UNIT:Haste() > 30

connected

Parameters

  • UNIT: The unit to check for being online and not loading.

Returns BOOL

  • true if the specified unit is a player character who is currently online (not disconnected or loading), false otherwise.

Example:

{ACTION, "UNIT.connected", UNIT},
_A.DSL:Get("connected")("UNIT")
UNIT:Connected()

combattime

combattime || combat.time

Parameters

  • UNIT: The unit to check for combat time duration.

Returns NUMBER

  • The time duration in seconds for which the specified unit has been in combat.

Example:

{ACTION, "UNIT.combat.time > 5", UNIT},
_A.DSL:Get("combat.time")("UNIT") > 5
UNIT:CombatTime() > 5

los

Parameters

  • UNIT: The unit to check for line of sight.

Returns BOOL

  • true if there is line of sight between the player character and the specified unit, false otherwise.

Example:

{ACTION, "UNIT.los", UNIT},
_A.DSL:Get("los")("UNIT")
UNIT:Los()

losfrom

Parameters

  • UNIT1: The first unit to check from.
  • UNIT2: The second unit to check line of sight to.

Returns BOOL

  • true if there is line of sight between the two specified units, false otherwise.

Example:

{ACTION, "UNIT1.losfrom(UNIT2)", UNIT1},
_A.DSL:Get("losfrom")("UNIT1", "UNIT2")
UNIT1:Losfrom(UNIT2)

position

position || pos || location

Parameters

  • UNIT: The unit whose position to retrieve.

Returns NUMBER, NUMBER, NUMBER, NUMBER

  • Returns the x, y, z coordinates and facing angle (in radians) of the unit.

Example:

local x, y, z, facing = _A.DSL:Get("position")("UNIT")
local x, y, z, facing = UNIT:Position()

facing

Parameters

  • UNIT: The unit whose facing angle to retrieve.

Returns NUMBER

  • The facing angle of the unit in radians.

Example:

_A.DSL:Get("facing")("UNIT")
UNIT:Facing()

createdBy

Parameters

  • UNIT1: The unit to check who created it.
  • UNIT2: The unit to compare against as the creator.

Returns BOOL

  • true if unit1 was created by unit2, false otherwise.

Example:

{ACTION, "UNIT1.createdBy(UNIT2)", UNIT1},
_A.DSL:Get("createdBy")("UNIT1", "UNIT2")
UNIT1:CreatedBy(UNIT2)

createdByServer

Checks whether the given object was created directly by the server.

Parameters

  • obj: The object to check.

Returns BOOL

  • true if the object was created by the server, false otherwise.

Example:

{ACTION, "createdByServer", "target"},
_A.DSL:Get("createdByServer")("target")
target:createdByServer()

TimeInCombat

Parameters

  • None

Returns NUMBER

  • The time in seconds that the player has been in combat. Returns 0 if not in combat.

Example:

{ACTION, "TimeInCombat > 5"},
_A.DSL:Get("TimeInCombat")() > 5

TimeOutCombat

Parameters

  • None

Returns NUMBER

  • The time in seconds that the player has been out of combat. Returns 0 if in combat.

Example:

{ACTION, "TimeOutCombat > 3"},
_A.DSL:Get("TimeOutCombat")() > 3

hasloot

hasloot || IsLootable

Parameters

  • UNIT: The unit to check for loot availability.

Returns BOOL

  • true if the specified unit has loot that can be looted by the player character, false otherwise.

Example:

{ACTION, "UNIT.hasloot", UNIT},
_A.DSL:Get("hasloot")("UNIT")
UNIT:Hasloot()

mapid

Parameters

  • None

Returns NUMBER

  • The current map ID of the player's location.

Example:

{ACTION, "mapid==#1530"},
_A.DSL:Get("mapid")() == 1530

IsNearID

Parameters

  • ID: The NPC ID to search for.
  • distance: The maximum distance in yards to check (default: 60).

Returns BOOL

  • true if an NPC with the specified ID is within the given distance, false otherwise.

Example:

{ACTION, "IsNearID(12345, 40)"},
_A.DSL:Get("IsNearID")(nil, "12345, 40")

IsNearName

Parameters

  • name: The NPC name to search for.
  • distance: The maximum distance in yards to check (default: 60).

Returns BOOL

  • true if an NPC with the specified name is within the given distance, false otherwise.

Example:

{ACTION, "IsNearName(Gul'dan, 50)"},
_A.DSL:Get("IsNearName")(nil, "Gul'dan, 50")

InstanceName

Parameters

  • name (optional): The instance name to compare against.

Returns STRING | BOOL

  • If name is not provided, returns the current instance name as a string.
  • If name is provided, returns true if it matches the current instance name, false otherwise.

Example:

{ACTION, "InstanceName(Hellfire Citadel)"},
_A.DSL:Get("InstanceName")(nil, "Hellfire Citadel")
local instanceName = _A.DSL:Get("InstanceName")()

InstanceType

Parameters

  • type (optional): The instance type to compare against ("party", "raid", "arena", "pvp", "scenario", "none").

Returns STRING | BOOL

  • If type is not provided, returns the current instance type as a string.
  • If type is provided, returns true if it matches the current instance type, false otherwise.

Example:

{ACTION, "InstanceType(raid)"},
_A.DSL:Get("InstanceType")(nil, "raid")
local instanceType = _A.DSL:Get("InstanceType")()

ZoneText

Parameters

  • name (optional): The zone text to compare against.

Returns STRING | BOOL

  • If name is not provided, returns the current zone text as a string.
  • If name is provided, returns true if it matches the current zone text, false otherwise.

Example:

{ACTION, "ZoneText(Tanaan Jungle)"},
_A.DSL:Get("ZoneText")(nil, "Tanaan Jungle")
local zoneText = _A.DSL:Get("ZoneText")()

pvpzone

Parameters

  • None

Returns BOOL

  • true if the player is in a PvP zone (arena or battleground), false otherwise.

Example:

{ACTION, "pvpzone"},
_A.DSL:Get("pvpzone")()

indungeon

Parameters

  • None

Returns BOOL

  • true if the player is in a dungeon (party or raid instance), false otherwise.

Example:

{ACTION, "indungeon"},
_A.DSL:Get("indungeon")()

OnTaxi

Parameters

  • UNIT: The unit to check if it is on a taxi.

Returns BOOL

  • true if the unit is on a taxi flight, false otherwise.

Example:

{ACTION, "UNIT.OnTaxi", UNIT},
_A.DSL:Get("OnTaxi")("UNIT")
UNIT:OnTaxi()

lowestRoster.health

Parameters

  • None

Returns NUMBER | NIL

  • The current health of the player or the group/raid member with the lowest health. Returns nil if the player is not in a group or if no members are found.

Example:

{ACTION, "lowestRoster.health < 50000"},
_A.DSL:Get("lowestRoster.health")()

tagged.byme

  • This condition checks if the specified unit is tagged by the player.

Parameters

  • UNIT: The unit to check for tagging.

Returns BOOL

  • true if the unit is tagged by the player, otherwise false.

Example:

{ACTION, "UNIT.tagged.byme", UNIT},
_A.DSL:Get("tagged.byme")("UNIT")
UNIT:IsTaggedByMe()

tagged.by.other

  • This condition checks if the specified unit is tagged by other players.

Parameters

  • UNIT: The unit to check for tagging.

Returns BOOL

  • true if the unit is tagged by other players, otherwise false.

Example:

{ACTION, "UNIT.tagged.by.other", UNIT},
_A.DSL:Get("tagged.by.other")("UNIT")
UNIT:IsTaggedByOther()

IsTrackUnit

Parameters

  • UNIT: The unit to check if it is being tracked.

Returns BOOL

  • true if the unit is being tracked (appears on minimap), false otherwise.

Example:

{ACTION, "UNIT.IsTrackUnit", UNIT},
_A.DSL:Get("IsTrackUnit")("UNIT")
UNIT:IsTrackUnit()

IsSpecialInfo

Parameters

  • UNIT: The unit to check for special info flag.

Returns BOOL

  • true if the unit has special info flag, false otherwise.

Example:

{ACTION, "UNIT.IsSpecialInfo", UNIT},
_A.DSL:Get("IsSpecialInfo")("UNIT")
UNIT:IsSpecialInfo()

IsDead

Parameters

  • UNIT: The unit to check if it is dead.

Returns BOOL

  • true if the unit is dead, false otherwise.

Example:

{ACTION, "UNIT.IsDead", UNIT},
_A.DSL:Get("IsDead")("UNIT")
UNIT:IsDead()

IsTappedByAllThreatList

Parameters

  • UNIT: The unit to check if it is tapped by all threat list members.

Returns BOOL

  • true if the unit is tapped by all threat list members, false otherwise.

Example:

{ACTION, "UNIT.IsTappedByAllThreatList", UNIT},
_A.DSL:Get("IsTappedByAllThreatList")("UNIT")
UNIT:IsTappedByAllThreatList()

IsPreparation

Parameters

  • UNIT: The unit to check if it is in preparation state.

Returns BOOL

  • true if the unit is in preparation state, false otherwise.

Example:

{ACTION, "UNIT.IsPreparation", UNIT},
_A.DSL:Get("IsPreparation")("UNIT")
UNIT:IsPreparation()

IsPlusMob

Parameters

  • UNIT: The unit to check if it is a plus mob (elite mob indicator).

Returns BOOL

  • true if the unit is a plus mob, false otherwise.

Example:

{ACTION, "UNIT.IsPlusMob", UNIT},
_A.DSL:Get("IsPlusMob")("UNIT")
UNIT:IsPlusMob()

CanPerformAction

Parameters

  • UNIT: The unit to check if it can perform actions.

Returns BOOL

  • true if the unit can perform actions, false otherwise.

Example:

{ACTION, "UNIT.CanPerformAction", UNIT},
_A.DSL:Get("CanPerformAction")("UNIT")
UNIT:IsCanPerformAction()

IsInCombat

Parameters

  • UNIT: The unit to check if it is in combat.

Returns BOOL

  • true if the unit is in combat, false otherwise.

Example:

{ACTION, "UNIT.IsInCombat", UNIT},
_A.DSL:Get("IsInCombat")("UNIT")
UNIT:IsInCombat()

dispellableWith

Parameters

  • UNIT: The unit to check for dispellable auras.
  • spell: The spell ID or name of the dispel ability.

Returns BOOL

  • true if the unit has at least one aura that can be dispelled with the specified spell, false otherwise.

Example:

{ACTION, "UNIT.dispellableWith(527)", UNIT},
_A.DSL:Get("dispellableWith")("UNIT", "527")
UNIT:DispellableWith(527)

subgroup

Parameters

  • UNIT: The unit to check for raid subgroup.

Returns NUMBER

  • The raid subgroup number (1-8) of the unit, or -1 if the unit is not in a raid or not found.

Example:

{ACTION, "UNIT.subgroup==#1", UNIT},
_A.DSL:Get("subgroup")("UNIT") == 1
UNIT:Subgroup() == 1

spec

Parameters

  • UNIT: The unit for which to retrieve the specialization ID.

Returns NUMBER

  • The specialization ID of the specified unit.

Class Spec Table

Class Spec 1 Spec 2 Spec 3 Spec 4 Spec 5
Death Knight 250 Blood 251 Frost 252 Unholy 1455 Initial
Demon Hunter 577 Havoc 581 Vengeance 1456 Initial
Druid 102 Balance 103 Feral 104 Guardian 105 Restoration 1447 Initial
Evoker 1467 Devastation 1468 Preservation 1473 Augmentation 1465 Initial
Hunter 253 Beast Mastery 254 Marksmanship 255 Survival 1448 Initial
Mage 62 Arcane 63 Fire 64 Frost 1449 Initial
Monk 268 Brewmaster 270 Mistweaver 269 Windwalker 1450 Initial
Paladin 65 Holy 66 Protection 70 Retribution 1451 Initial
Priest 256 Discipline 257 Holy 258 Shadow 1452 Initial
Rogue 259 Assassination 260 Outlaw 261 Subtlety 1453 Initial
Shaman 262 Elemental 263 Enhancement 264 Restoration 1444 Initial
Warlock 265 Affliction 266 Demonology 267 Destruction 1454 Initial
Warrior 71 Arms 72 Fury 73 Protection 1446 Initial

Example:

{ACTION, "UNIT.spec=73", UNIT},
_A.DSL:Get("spec")("UNIT") == 73
UNIT:Spec() == 73

hasSpec

Parameters

  • UNIT: The unit for which to check the specialization.
  • expectedSpecId: The expected specialization ID. Multiple IDs can be separated by "||".

Returns BOOL

  • true if the unit has the expected specialization ID, false otherwise.

Example:

{ACTION, "UNIT.hasSpec(73)", UNIT},
_A.DSL:Get("hasSpec")("UNIT", "73")
UNIT:HasSpec(73)

delay

Parameters

  • UNIT: The unit to check for the delay.
  • name_secs: A string containing the name and delay time (in seconds) separated by a comma.

Returns BOOL

  • true if the delay has passed, false otherwise.

Example:

{ACTION, "UNIT.delay(delayName, 0.5)", UNIT},
_A.DSL:Get("delay")("UNIT", "delayName, 0.5")
UNIT:delay("delayName", 0.5)

timeout

Parameters

  • UNIT: The unit to check for the timeout.
  • name_secs: A string containing the name and timeout duration (in seconds) separated by a comma.

Returns BOOL

  • true if the timeout has not been reached, false otherwise.

Example:

{ACTION, "UNIT.timeout(timeoutName, 0.5)", UNIT},
_A.DSL:Get("timeout")("UNIT", "timeoutName, 0.5")
UNIT:timeout("timeoutName, 0.5")

frame.visible

Parameters

  • name: The name of the frame to check for visibility.

Returns BOOL

  • true if the frame is currently shown, false otherwise.

Example:

{ACTION, "UNIT.frame(TaxiFrame).visible", UNIT},
_A.DSL:Get("frame.visible")("UNIT", "TaxiFrame")
UNIT:frameVisible("TaxiFrame")

sitting

Parameters

  • UNIT: The unit to check if it is sitting.

Returns BOOL

  • true if the unit is sitting, false otherwise.

Example:

{ACTION, "UNIT.sitting", UNIT},
_A.DSL:Get("sitting")("UNIT")
UNIT:IsSitting()

influenced

Parameters

  • UNIT: The unit to check if it is influenced.

Returns BOOL

  • true if the unit is influenced, false otherwise.

Example:

{ACTION, "UNIT.influenced", UNIT},
_A.DSL:Get("influenced")("UNIT")
UNIT:IsInfluenced()

controlled.byme

Parameters

  • UNIT: The unit to check if it is controlled by the player.

Returns BOOL

  • true if the unit is controlled by the player, false otherwise.

Example:

{ACTION, "UNIT.controlled.byme", UNIT},
_A.DSL:Get("controlled.byme")("UNIT")
UNIT:IsPlayerControlled()

istotem

Parameters

  • UNIT: The unit to check if it is a totem.

Returns BOOL

  • true if the unit is a totem, false otherwise.

Example:

{ACTION, "UNIT.istotem", UNIT},
_A.DSL:Get("istotem")("UNIT")
UNIT:IsTotem()

attackable

Parameters

  • UNIT: The unit to check if it is attackable.

Returns BOOL

  • true if the unit is attackable, false otherwise.

Example:

{ACTION, "UNIT.attackable", UNIT},
_A.DSL:Get("attackable")("UNIT")
UNIT:IsNotAttackable()

looting

Parameters

  • UNIT: The unit to check if it is looting.

Returns BOOL

  • true if the unit is looting, false otherwise.

Example:

{ACTION, "UNIT.looting", UNIT},
_A.DSL:Get("looting")("UNIT")
UNIT:IsLooting()

pet.incombat

Parameters

  • UNIT: The unit to check if the pet is in combat.

Returns BOOL

  • true if the pet is in combat, false otherwise.

Example:

{ACTION, "UNIT.pet.incombat", UNIT},
_A.DSL:Get("pet.incombat")("UNIT")
UNIT:IsPetInCombat()

pvp.flagged

Parameters

  • UNIT: The unit to check if it is flagged for PvP.

Returns BOOL

  • true if the unit is flagged for PvP, false otherwise.

Example:

{ACTION, "UNIT.pvp.flagged", UNIT},
_A.DSL:Get("pvp.flagged")("UNIT")
UNIT:IsPvPFlagged()

choked

Parameters

  • UNIT: The unit to check if it is choked.

Returns BOOL

  • true if the unit is choked, false otherwise.

Example:

{ACTION, "UNIT.choked", UNIT},
_A.DSL:Get("choked")("UNIT")
UNIT:IsChoked()

pacified

Parameters

  • UNIT: The unit to check if it is pacified.

Returns BOOL

  • true if the unit is pacified, false otherwise.

Example:

{ACTION, "UNIT.pacified", UNIT},
_A.DSL:Get("pacified")("UNIT")
UNIT:IsPacified()

stunned

Parameters

  • UNIT: The unit to check if it is stunned.

Returns BOOL

  • true if the unit is stunned, false otherwise.

Example:

{ACTION, "UNIT.stunned", UNIT},
_A.DSL:Get("stunned")("UNIT")
UNIT:IsStunned()

istaxi

Parameters

  • UNIT: The unit to check if it is on a taxi flight.

Returns BOOL

  • true if the unit is on a taxi flight, false otherwise.

Example:

{ACTION, "UNIT.istaxi", UNIT},
_A.DSL:Get("istaxi")("UNIT")
UNIT:IsTaxiFlight()

disarmed

Parameters

  • UNIT: The unit to check if it is disarmed.

Returns BOOL

  • true if the unit is disarmed, false otherwise.

Example:

{ACTION, "UNIT.disarmed", UNIT},
_A.DSL:Get("disarmed")("UNIT")
UNIT:IsDisarmed()

confused

Parameters

  • UNIT: The unit to check if it is confused.

Returns BOOL

  • true if the unit is confused, false otherwise.

Example:

{ACTION, "UNIT.confused", UNIT},
_A.DSL:Get("confused")("UNIT")
UNIT:IsConfused()

fleeing

Parameters

  • UNIT: The unit to check if it is fleeing.

Returns BOOL

  • true if the unit is fleeing, false otherwise.

Example:

{ACTION, "UNIT.fleeing", UNIT},
_A.DSL:Get("fleeing")("UNIT")
UNIT:IsFleeing()

possessed

Parameters

  • UNIT: The unit to check if it is possessed.

Returns BOOL

  • true if the unit is possessed, false otherwise.

Example:

{ACTION, "UNIT.possessed", UNIT},
_A.DSL:Get("possessed")("UNIT")
UNIT:IsPossessed()

selectable

Parameters

  • UNIT: The unit to check if it is selectable.

Returns BOOL

  • true if the unit is selectable, false otherwise.

Example:

{ACTION, "UNIT.selectable", UNIT},
_A.DSL:Get("selectable")("UNIT")
UNIT:IsNotSelectable()

skinnable

Parameters

  • UNIT: The unit to check if it is skinnable.

Returns BOOL

  • true if the unit is skinnable, false otherwise.

Example:

{ACTION, "UNIT.skinnable", UNIT},
_A.DSL:Get("skinnable")("UNIT")
UNIT:IsSkinnable()

mounted

Parameters

  • UNIT: The unit to check if it is mounted.

Returns BOOL

  • true if the unit is mounted, false otherwise.

Example:

{ACTION, "UNIT.mounted", UNIT},
_A.DSL:Get("mounted")("UNIT")
UNIT:IsInMount()

dazed

Parameters

  • UNIT: The unit to check if it is dazed.

Returns BOOL

  • true if the unit is dazed, false otherwise.

Example:

{ACTION, "UNIT.dazed", UNIT},
_A.DSL:Get("dazed")("UNIT")
UNIT:IsDazed()

sheathed

Parameters

  • UNIT: The unit to check if it is sheathed.

Returns BOOL

  • true if the unit is sheathed, false otherwise.

Example:

{ACTION, "UNIT.sheathed", UNIT},
_A.DSL:Get("sheathed")("UNIT")
UNIT:IsSheathed()

feign.death

Parameters

  • UNIT: The unit to check if it is feigning death.

Returns BOOL

  • true if the unit is feigning death, false otherwise.

Example:

{ACTION, "UNIT.feign.death", UNIT},
_A.DSL:Get("feign.death")("UNIT")
UNIT:IsFeignDeath()

petAttack

Commands the player's pet to attack a specified target.

Parameters

  • unit: The target unit for the pet to attack (e.g., "target", "mouseover", "fakeunit", etc...).

Returns BOOL

  • Returns true after issuing the attack command.

Example:

target:petAttack()