Adv 2.0 D&D Phase 12 E6a: Multi-region expedition map (!map)

Adds renderRegionChain — for tier 4-5 multi-region zones, renders the
4-region progression (e.g. ST──DO──IW──TDT for Underdark) with ✓
cleared / ▶ here / · pending markers, and  overlay where a base
camp has been pitched. Single-region zones skip the chain and fall
through to the existing renderZoneMap room layout.

!map (top-level) and !expedition map both invoke handleExpeditionMapCmd
which composes: region chain → current region label → per-run room
map → legend. Region abbreviations are decoded in a "Regions:" footer
so the glyph row stays compact.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
prosolis
2026-05-08 16:40:18 -07:00
parent d179ca27a7
commit 157455a3fe
4 changed files with 226 additions and 1 deletions

View File

@@ -270,6 +270,9 @@ func (p *AdventurePlugin) OnMessage(ctx MessageContext) error {
if p.IsCommand(ctx.Body, "resume") {
return p.handleResumeCmd(ctx, p.GetArgs(ctx.Body, "resume"))
}
if p.IsCommand(ctx.Body, "map") {
return p.handleExpeditionMapCmd(ctx, p.GetArgs(ctx.Body, "map"))
}
// 1. Arena commands (work in rooms and DMs)
if p.IsCommand(ctx.Body, "bail") {