Add per-character spellbook collector

New Collectors/Spellbook.lua walks GetNumSpellTabs() and emits one entry
per tab with name, texture, offset, numSpells, and a spells[] array of
{ slot, name, rank, spellID, icon }.

3.3.5/Ascension API differences are handled defensively: name comes
from GetSpellBookItemInfo or vanilla GetSpellName; spellID is parsed
out of GetSpellLink (3.3.5 doesn't return it from GetSpellBookItemInfo);
icon falls back to GetSpellTexture if GetSpellInfo doesn't have it yet.

Wiring:
  - CoaExporter.toc: load Collectors/Spellbook.lua after Talents
  - Core.lua: AssembleExport() includes spellbook for all + spellbook
  - Core.lua: HandleExport() accepts /coae export spellbook
  - Core.lua: debug output shows tab + spell counts
  - UI/ExportFrame.lua: "Spellbook" button in the Character section
This commit is contained in:
2026-05-07 12:08:23 +02:00
parent cc5a87d2fb
commit 6badf0e7ea
5 changed files with 124 additions and 7 deletions
+1
View File
@@ -9,6 +9,7 @@ Util\Json.lua
Data\ScrollCatalog.lua
Collectors\Talents.lua
Collectors\Spellbook.lua
Collectors\Gear.lua
Collectors\Enchants.lua
Collectors\MysticScrolls.lua