Files
coa-kui-nameplates/Kui_Nameplates/Kui_Nameplates.toc
T
florian.berthold 68701d7d42
release / release (push) Successful in 3s
feat(TankMode): CoA custom-class role detection via active spec
Add CoAClassSpecData.lua (copied from coa-db/data) and wire
GetPlayerCoARole() into TankMode so CoA tokens resolve TANK/HEALER/DAMAGER
from their active spec instead of defaulting to DAMAGER.

- CoAClassSpecData.lua: defines CoAClassSpec keyed by UnitClass token,
  loaded in .toc before Core.xml/Modules.xml
- GetPlayerCoARole(): pcall-guarded helper that calls
  SpecializationUtil.GetActiveSpecialization() (1-based index) to look up
  the current spec in CoAClassSpec[token].specs; TANK > HEALER > DAMAGER
  precedence when a spec carries multiple roles; returns nil for vanilla
  classes so the existing IsTank/IsHealer path is unchanged
- mod:Update(): try GetPlayerCoARole() first; fall through to vanilla
  logic only when nil (vanilla class or unresolvable spec)
- Re-evaluation on spec change already covered: PLAYER_TALENT_UPDATE
  fires on both spec and talent changes, driving mod:Update()

luac -p: TankMode.lua OK, CoAClassSpecData.lua OK
2026-05-30 01:28:59 +02:00

31 lines
1012 B
TeX

## Interface: 30300
## Author: Kesava
## Title: Kui |cff9966ffNameplates|r
## Version: 264
## Notes: Prettier nameplates.
## OptionalDeps: !ClassColors
## SavedVariables: KuiNameplatesGDB
## X-Curse-Packaged-Version: 262
## X-Curse-Project-Name: KuiNameplates
## X-Curse-Project-ID: kuinameplates
## X-Website: https://github.com/bkader/KuiNameplates-WoTLK
## X-Email: bkader@email.com
## X-Date: 2022-01-01 @ 01:10 PM |cff808080UTC|r
Embeds.xml
Locales.xml
## CoA patches ##
# Mirror RAID_CLASS_COLORS into CUSTOM_CLASS_COLORS for the 22 CoA
# class tokens before any module captures cc_table. Loaded after
# Embeds (defensive — this file uses no libs) and before Core/Modules
# so ClassColours.lua:90 sees the populated CCC at OnInitialize time.
CoAClassColors.lua
# CoA class/spec metadata: defines CoAClassSpec keyed by class token
# (2nd return of UnitClass). Must load before TankMode.lua so that
# GetPlayerCoARole() can look up spec roles at OnEnable time.
CoAClassSpecData.lua
Core.xml
Modules.xml