Commit graph

3 commits

Author SHA1 Message Date
Nuno Duque Nunes
9e8877483d feat: Leaderboard & Result systems with aligned columns, call/confirm-no commands, persistent message slots
- TextAlign: column alignment for embeds using real gg sans font metrics
- EmbedHelpers: per-player grid/column layouts immune to 1024-char field limit
- Layout: domain-aware formatting wrapper (wrank, bringer, cockroach, tgCount)
- PersistentMessage: multi-slot support for independently-updatable embeds
- Leaderboard: weekly rankings + highlights embed (most kills/deaths, next Bringer)
- Result: per-TG breakdown with wRankAtSubmission snapshot for historical accuracy
- /tg call, /tg poll confirm-no, /tg-admin score-inject, result/leaderboard post commands
- Fix: CharacterRegistry wasn't hydrating ownerKey, breaking K/D bot-wide
- Fix: Leaderboard.buildEntries used current week instead of passed-in week param
- /tg-admin test-align: permanent calibration tool for embed text alignment

Includes data/emojis/anima-mastery.json for new combat stat icons.
2026-06-20 03:04:52 +01:00
Nuno Duque Nunes
b22602f431 feat: TGKey branded type, PersistentMessage abstraction, createBuildEmbed factory, BaseLayout refactor 2026-06-13 02:23:56 +01:00
Nuno Duque Nunes
d2377ff404 feat: BaseLayout shared functions, WRank delta placeholder fix, Leaves system 2026-06-11 23:53:06 +01:00