mirror of
https://github.com/prosolis/gogobee.git
synced 2026-07-16 17:02:42 +00:00
Branching zones G9a: remove GOGOBEE_BRANCHING_ZONES gate
All 9 zones have hand-authored graphs (G8a–G8i), so the POC gate has served its purpose. Make graph mode the only runtime path: - Drop branchingZonesEnabled() and the os import in zone_graph_nav.go. - Inline the gate-on branches in zoneCmdMap, zoneCmdAdvance, CurrentRoomType, startZoneRun, and the expedition map renderer. - Keep the legacy linear functions (markRoomCleared, renderZoneMap, generateRoomSequence) standing — their tests still exercise them and they'll retire alongside current_room / room_seq_json in G9b. - Strip gate test (TestBranchingZonesGate, TestCurrentRoomType_GateOff) and t.Setenv calls from the surviving graph tests. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -113,19 +113,24 @@ func (p *AdventurePlugin) handleExpeditionMapCmd(ctx MessageContext, _ string) e
|
||||
// Per-run room map. The expedition's zone run is the per-region
|
||||
// dungeon instance; for single-region zones it's the only run.
|
||||
run, _ := getActiveZoneRun(ctx.Sender)
|
||||
if run != nil && len(run.RoomSeq) > 0 {
|
||||
cleared := map[int]bool{}
|
||||
for _, r := range run.RoomsCleared {
|
||||
cleared[r] = true
|
||||
}
|
||||
b.WriteString("```\n")
|
||||
b.WriteString(renderZoneMap(run.RoomSeq, run.CurrentRoom, cleared))
|
||||
b.WriteString("\n```\n")
|
||||
b.WriteString("_E=Entry ?=Exploration T=Trap ★=Elite ☠=Boss · ✓ cleared ▶ here · pending_")
|
||||
if chain != "" {
|
||||
b.WriteString("\n_Regions: ")
|
||||
b.WriteString(renderRegionLegend(exp))
|
||||
b.WriteString(" · ⛺ base camp pitched_")
|
||||
if run != nil {
|
||||
if g, ok := loadZoneGraph(run.ZoneID); ok {
|
||||
b.WriteString("```\n")
|
||||
b.WriteString(renderZoneGraphMap(g, run))
|
||||
b.WriteString("\n```\n")
|
||||
b.WriteString("_E=Entry ?=Exploration T=Trap ★=Elite ☠=Boss ⚿=Secret · ✓ cleared ▶ here · pending ╳ locked_")
|
||||
if chain != "" {
|
||||
b.WriteString("\n_Regions: ")
|
||||
b.WriteString(renderRegionLegend(exp))
|
||||
b.WriteString(" · ⛺ base camp pitched_")
|
||||
}
|
||||
} else {
|
||||
b.WriteString("_(no room layout — between rooms or pre-entry)_")
|
||||
if chain != "" {
|
||||
b.WriteString("\n_Regions: ")
|
||||
b.WriteString(renderRegionLegend(exp))
|
||||
b.WriteString(" · ⛺ base camp pitched_")
|
||||
}
|
||||
}
|
||||
} else {
|
||||
b.WriteString("_(no room layout — between rooms or pre-entry)_")
|
||||
|
||||
Reference in New Issue
Block a user