Reference

Function reference

Built In helpers

The helpers the in-game Functions tab lists as Built In. Public ones are called by name; the others are bound as a dependency (choose the completion, or add it under Dependencies) and called by their qualified name.

82 of 240 helpers. Clear filters

Conditions.bossmod.encounterNote dependencyBuilds the status line the boss-mod condition editors show about the current encounter.
Conditions.bossmod.idEditor dependencyBuilds a full-width edit box for an optional boss-mod ID (such as the encounter ID) and adds it to parent.
Conditions.bossmod.note dependencyAdds a full-width text label to a boss-mod condition editor; used for the encounter and timer status lines.
Conditions.bossmod.timerNote dependencyBuilds the status line the boss-mod condition editors show about running boss-mod timers.
Conditions.bossmod.validCompare dependencyValidation check for a boss-mod condition's comparison: true when value.operator is one of addon.operators and value.value is a finite number of zero or more.
Conditions.bossmod.validID dependencyTrue when value is a positive whole number below 2^31, the accepted shape of a saved boss-mod encounter or spell ID.
Conditions.build.imbueObservation dependencyReads the temporary enchant ID on the main hand, or the off hand when value.offhand is set, for the WEAPON_IMBUE condition.
Conditions.build.setLabel dependencyFormats an item set ID for the SET_PIECES description: the set name with its ID when addon:GetItemSetName knows it, otherwise "item set N".
Conditions.build.wholeNumber dependencyTrue when value is a positive, finite whole number; SET_PIECES uses it to validate the saved item set ID.
Conditions.common.Widget_GetSpellId publicResolve the spell identifier stored by a condition.
Conditions.common.Widget_SpellWidget publicCreate a spell input with suggestions, validation and spell-link support for custom condition widgets.
Conditions.common.Widget_UnitWidget publicCreate a configured unit selector bound to a condition value record.
Conditions.edition_state.eclipseMeasures dependencyLists the two measures of the Eclipse condition with their editor labels.
Conditions.edition_state.validCompare dependencyChecks that a condition value carries a known comparison operator and a finite, non-negative number to compare against.
Conditions.encounter_state.validCompare dependencyChecks that a condition value carries a known comparison operator and a finite, non-negative number to compare against.
Conditions.encounter_state.validNumber dependencyChecks that a value is a finite number of zero or more (not NaN, not infinite).
Conditions.engraving.identifier dependencyTrue when value is a positive whole number below 2^31; RUNE_ENGRAVED uses it to validate a saved rune ID.
Conditions.engraving.runeLabel dependencyNames the rune selected in a RUNE_ENGRAVED condition: the known rune's name when the platform finds it, else the rune spell's name, else "rune spell N" or "rune N".
Conditions.equipment.matches dependencyTests one equipment slot record against a WEAPON_TYPE condition: empty slot, shield, any weapon, holdable, one-hand, two-hand, ranged, or a specific weapon subclass.
Conditions.equipment.subclassID dependencyTrue when value is a whole number from 0 to 31, the range of weapon subclass IDs WEAPON_TYPE accepts.
Conditions.equipment.subclassName dependencyNames a weapon subclass for WEAPON_TYPE descriptions, using the client's GetItemSubClassInfo when it returns a readable name, else the addon's built-in name, else "weapon type N".
Conditions.group_state.measureNames dependencyLists what the Group Count condition can count, with the editor label of each.
Conditions.group_state.validCompare dependencyChecks that a Group Count value carries a known operator and a finite, non-negative number, which is at most 100 when the count is a percent of the group.
Conditions.hero_talent.listedSpec dependencyReturns the specialization ID when it is one of the player's own class's specializations, which are the only ones whose hero talent trees the game can list.
Conditions.hero_talent.treeName dependencyNames a hero talent tree: the game's own name for it when Platform:GetHeroTreeName can read one, else "hero talent tree" followed by the ID.
Conditions.hero_talent.validTree dependencyChecks that a value can be a hero talent tree ID: a positive whole number below 2^31.
Conditions.item.get_item_desc dependencyDescribes an item reference for the item condition descriptions: an item set name (white for a profile set, cyan for a global one), or the first item's link or name followed by how many others are listed.
Conditions.item.itemHelp dependencyAdds the item condition editors' help text to frame: the shared item widget help, a gap, and a note on how item sets, bag counts and restricted observations are evaluated.
Conditions.known_spell.validID dependencyTrue when value is a positive, finite whole number; SPELL_KNOWN uses it to validate the saved spell ID.
Conditions.misc.difficultyKind dependencyNames the kind of group a difficulty is for, from the group GetDifficultyInfo reports.
Conditions.misc.difficultyName dependencyThe display name of an instance difficulty ID: the game's name for it (GetDifficultyInfo) with the kind of group in parentheses when the game gives one.
Conditions.misc.validWhole dependencyChecks that a value can be a difficulty or instance ID: a whole number from 0 up to 2^31.
Conditions.player_state.stateNames dependencyLists the states the Player State condition offers, with the editor label of each.
Conditions.player_state.statePhrase dependencyThe readable sentence for one Player State, such as "you are mounted", worded so a Not flips it to "you are not mounted".
Conditions.raid_marks.markListText dependencyFormats a valid list of markers in priority order.
Conditions.raid_marks.markName dependencyReturns the game's localized name for a raid marker, falling back to its English name.
Conditions.raid_marks.modeNames dependencyReturns the localized labels for the any, none and selected-mark modes.
Conditions.raid_marks.validMark dependencyChecks a saved marker mode or a comma-separated list of distinct marker names.
Conditions.spatial_stats.aggregate dependencyReduces the per-unit readings a PROXIMITY_* condition collected to one statistic: their average, minimum or maximum.
Conditions.spatial_stats.observation dependencyReads one health or mana number for a PROXIMITY_* condition through the evaluation cache, protected against errors.
Conditions.spatial_stats.statistic dependencyReads one unit's health or mana for the PROXIMITY_* conditions as an absolute value, a percentage of the maximum, or the deficit below the maximum.
Conditions.spatial.booleanRead dependencyCalls a yes/no game API through the evaluation cache, protected against errors, for the distance conditions.
Conditions.spatial.combatFilter dependencyApplies the In Combat option of Distance Count to one unit: with the option off every unit passes, with it on the unit must be in combat (UnitAffectingCombat).
Conditions.spatial.finite dependencyTrue when value is a number that is neither NaN nor infinite.
Conditions.spatial.nameplateDistanceCount dependencyCounts units for DISTANCE_COUNT from a nameplate unit snapshot: units that exist, whose hostility matches value.enemy, and that are definitely within value.distance yards.
Conditions.spatial.protectedRead dependencyPackaged helper from Conditions/spatial.lua.
Conditions.spatial.rangeMember dependencyDecides whether unit is within distance yards from the platform's cached range-check bounds: true when the maximum bound is at or inside distance, false when the minimum bound is beyond it (or equals a nonzero distance), otherwise unavailable.
Conditions.spatial.rcf dependencyReturns the LibRangeCheck-3.0 range estimate for a unit as minimum and maximum yards.
Conditions.specialization.classChoices dependencyBuilds the specialization choices for one class in the SPECIALIZATION editor.
Conditions.specialization.playerClass dependencyReturns the player's class file token (such as "MAGE") from UnitClass, or nil when the call fails or the value is restricted.
Conditions.specialization.specClass dependencyLooks up which class a specialization ID belongs to, from the built-in specialization table or else the platform's specialization display data.
Conditions.specialization.specID dependencyTrue when value is a positive, finite whole number, the accepted shape of a saved specialization ID.
Conditions.specialization.specName dependencyNames a specialization for SPECIALIZATION descriptions: the platform's display name and icon, else the built-in localized name, else "specialization N".
Conditions.talent.block dependencyAdds a full-width group laid out as icon rows (the icon on the left, the picker rows beside it) to a condition widget.
Conditions.talent.classSpecs dependencyLists the specializations of the player's class for the Talent condition's Specialization picker, so a rotation can pick the talents of a specialization other than the one being played.
Conditions.talent.dropdown dependencyCreates a full-width condition dropdown labeled title for the talent condition editors, forwards each selection to changed, and adds it to parent.
Conditions.talent.gridWidget dependencyBuilds the TALENT editor controls for the tier-and-column grid talent layout: a talent icon and a dropdown of the client's grid talents (up to 18).
Conditions.talent.group dependencyReturns the talent group to query for spec: spec itself on progression clients when it is a whole number from 1 to 4, otherwise nil so the platform uses its default group.
Conditions.talent.groupLabel dependencyThe heading above one group of talents in the Retail and Forever talent list: class talents, specialization talents, both, one hero tree, or a plain name.
Conditions.talent.icon dependencyCreates the 44-pixel talent icon for the TALENT editors, showing the referenced talent's icon and, on hover, its spell tooltip (or its name), and adds it to parent.
Conditions.talent.info dependencyLooks up the talent a TALENT condition refers to, according to its layout: a trait node and entry, a grid index, or a tree and talent index.
Conditions.talent.integer dependencyTrue when value is a whole number between minimum and maximum, inclusive.
Conditions.talent.legacySlot dependencyTrue when a TALENT condition still uses the historical single-number layout: no layout, tree or talent field, and value.value a whole number from 1 to 21.
Conditions.talent.ownTrees dependencyWhether the talent trees shown are the player's own class's, so the game can name them, rather than another class's trees from the addon's shipped list.
Conditions.talent.text dependencyAdds a full-width explanatory label to a talent condition editor.
Conditions.talent.traitFamily dependencyTrue when the client uses trait talents, that is the retail or forever client families.
Conditions.talent.traitShape dependencyTrue when value.layout is "traits", meaning the TALENT condition names a trait node.
Conditions.talent.traitsWidget dependencyBuilds the TALENT editor controls for trait talents: a talent tree dropdown when there are several, a talent dropdown, Talent Node ID and Choice Entry ID edit boxes, and a Rank comparison.
Conditions.talent.treeExists dependencyChecks that a talent condition's tree index exists on this client, using the cached platform talent tree count.
Conditions.talent.treeName dependencyNames the talent tree in a talent tree condition's description: the client's tree name, else "Talent tree N", else "<talent tree>" when no tree is set.
Conditions.talent.treePicker dependencyBuilds the Talent tree dropdown for the TALENT_TREE_POINTS and PRIMARY_TALENT_TREE editors, listing the client's talent trees, storing the selection in value.tree and calling update.
Conditions.talent.treeShape dependencyTrue when a TALENT condition uses the tree layout (layout nil or "tree") with both tree and talent set.
Conditions.talent.treeWidget dependencyBuilds the TALENT editor controls for Classic talent trees: a tree dropdown, a talent icon, a talent dropdown for the chosen tree, and a Points comparison.
Conditions.totem.amount dependencyTrue when a totem condition's comparison is usable: value.value is a nonnegative finite number and value.operator is one of addon.operators.
Conditions.totem.element dependencyTrue when value.spell is a valid spell ID of 4 or less, meaning the condition names a totem element slot rather than a totem spell.
Conditions.totem.findSpecific dependencySearches the totem slots for an active totem matching value.spell, by spell ID or name (only the exact spell ID when value.ranked is set).
Conditions.totem.observe dependencyCalls a totem platform method through the evaluation cache, passing the platform as its self argument.
Conditions.totem.remaining dependencySeconds left on a totem slot record at time start (or now): zero when the totem is inactive, and never negative.
Conditions.totem.specific dependencyTrue when a totem spell condition names a valid spell ID and value.ranked is nil or a boolean.
Conditions.weapon.enchantObservation dependencyReads whether the main hand, or the off hand when value.offhand is set, has a temporary weapon enchant for the weapon conditions, with its expiration and charges.
Conditions.weapon.numericObservation dependencyAccepts a readable, nonnegative, finite number from a weapon observation and returns it unchanged; anything else becomes nil with a reason.
Conditions.weapon.swingSpeed dependencyReads the player's main-hand, or off-hand when value.offhand is set, attack speed from the cached UnitAttackSpeed for the swing timer conditions.