feat: resolve spell \$d duration to real seconds from SpellDuration.dbc

Spell descriptions now substitute \$d with actual duration values:
  Before: "X damage over X sec"
  After:  "30 damage over 18 sec"

Implementation:
- DurationIndex field (40) added to all expansion Spell.dbc layouts
- SpellDuration.dbc loaded during cache build: maps index → base ms
- cleanSpellDescription substitutes \$d with resolved seconds/minutes
- getSpellDuration() accessor on GameHandler

Combined with \$s1/\$s2/\$s3 from the previous commit, most common
spell description templates are now fully resolved with real values.
This commit is contained in:
Kelsi 2026-03-23 01:00:18 -07:00
parent a5aa1faf7a
commit 11ecc475c8
7 changed files with 48 additions and 4 deletions

View file

@ -223,6 +223,7 @@
"AttributesEx": 5,
"CastingTimeIndex": 47,
"DispelType": 2,
"DurationIndex": 40,
"EffectBasePoints0": 80,
"EffectBasePoints1": 81,
"EffectBasePoints2": 82,