Skip to content

Latest commit

 

History

History
167 lines (104 loc) · 4.65 KB

README.md

File metadata and controls

167 lines (104 loc) · 4.65 KB

Cell - Snippets

Various snippets I've made for the addon Cell.

Important

These snippets are not made, nor maintained, by Cell's developer, so please don't ask them about any issues you might be experiencing.

DebuffAuraAnchor

Anchors tooltips to their respective Aura, instead of using general tooltip settings.

image

IndicatorTalentOption

Show or hide Indicators based on talents.

image

PartySortOptions

Adds more options for player position on party frames. eg. adds the ability to always show yourself first.

image

Note:

  • If "Sort By Role" is enabled groups will only be sorted if you are playing DPS
  • Sorting will only happen outside of combat.

Todo:

  • Figure out a secure way to update in combat.
  • Implement a priority list.
  • Implement a fixed list.

RaidSortOptions

Adds more sorting options for your raid!

Imporant: Important information below, make sure read this before using, or asking for help!

1. Sorting does not work in combat!

Due to how SecureFrames, (Which Cells raid frames are based on), are handled in combat. Custom sorting only works outside of combat; therefore will any roster changes in combat trigger a delayed update that fires when you exit combat.

2. Frames update twice on roster changes

Due to the implementation used, when roster changes happens the frames will be subjected to blizzards base sorting, and then, later, re-sorted by this snippet.

There is one workaround to this that I'll implement soonTM. That involves the usage of a nameList filter. This will only trigger updates when a new nameList is pushed. This also, to an extend, solves point 1.

The problem with that solution is that due to not being able to interact with the nameList during combat. Any new players, who weren't on the list before combat started, will not be added until after leaving combat.

3. Without Combine Groups enabled, only your own subgroup will be sorted.

4. With Combine Groups enabled, the entire raid will be sorted.

Configuration

This snippet provides several options for customizing the way your raid frames will be sorted.

All tables have their first/highest entry as the highest priority.

All of these options are found at the TOP of the snippet!

Sorting Order

This table dictates the type of sort methods you want to use, and their priority.

Included in this example is all (currently) available sorting methods, feel free to move them around, or remove any unwanted methods.

local SORTING_ORDER = {
    "PLAYER",
    "NAME",
    "SPEC",
    "ROLE",
    "SPECROLE"
}

Name Priority

Choose the order in which to show players, based on their names.

NOTE: Currently this only supports Name format, so don't try to add -Realm suffix.

local NAME_PRIORITY = {"Xephyris","Entro"}

Role Priority

Choose the order in which to show players, based on their roles.

local ROLE_PRIORITY = {"HEALER","DAMAGER","TANK"}

Spec Role Priority

Choose the order in which to show players, based on their spec roles.

NOTE: If no spec information can be found for a player, they will be defaulted to their normal role, eg. RANGED will show up as DAMAGER

local SPECROLE_PRIORITY = {"RANGED","MELEE","DAMAGER","HEALER","TANK"}

Spec Priority

Choose the order in which to show players, based on their specs.

NOTE: Spec information is not always available.

local SPEC_PRIORITY = {
  -- Specs
}

Name Filter

Set this to true to use a strict filter for groups. This will minimize group player shuffling when sorting, and disables sorting during combat.

NOTE: New players joining the raid will not be shown on the frames until after combat.

local USE_NAME_FILTER = true

Utility options

Set these to false to suppress error/info messages during sorting.

local showErrorMessages = true
local showInfoMessages = true

Whether to sort Ascending or Descending. Supports ASCor DESC.

local sortDirection = "ASC"

How long in seconds to wait before updating raid frames. Should be kept high to prevent oversorting on rapid roster changes. eg. start/end of raid

local QUE_TIMER = 1