diff options
| author | historia <[not public]> | 2026-09-15 19:55:21 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-09-15 19:55:21 -0400 |
| commit | 6f3c43aca62a7d33a19f14f6ad7c16891952673a (patch) | |
| tree | 0b0665ef624ef442df87ec7131129aaecc3420bd /internal/admin/api_rooms.go | |
| parent | cd95de60364aba8f5bdf8ec86f7234a9903eacc8 (diff) | |
| download | thehouseoficarus-6f3c43aca62a7d33a19f14f6ad7c16891952673a.tar.gz | |
fix: outstanding-stake ledger, owner backpressure, editor state preservation
Diffstat (limited to 'internal/admin/api_rooms.go')
| -rw-r--r-- | internal/admin/api_rooms.go | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/internal/admin/api_rooms.go b/internal/admin/api_rooms.go index 4cfb467..c93e7c6 100644 --- a/internal/admin/api_rooms.go +++ b/internal/admin/api_rooms.go @@ -970,13 +970,13 @@ func (s *AdminServer) handleRoomRename(w http.ResponseWriter, r *http.Request) { } s.world.RebuildRoomIndex(s.dataDir) - s.world.ClearRoomState(body.ID) - // Migrate room-ID-embedded state across all characters (discovered-exit - // player flags, RoomID, EnterSeqRoom, MapSymbols, RoomsVisited) plus - // Hub membership buckets, casino room keys, world room-keyed state, and - // live mob instances, so a rename leaves no gameplay, broadcast, or - // player attached to the old location. + // Runtime room state moves with the room: ground items, seeded spawn + // markers, and object states are rekeyed to the new ID — never cleared. + // Clearing here would destroy live room contents. The wired game + // callback performs the same world rekey plus players, Hub membership, + // casino room keys, and mob instances. + s.world.RekeyRooms(idMap) if s.rewriteRoomIDs != nil { s.rewriteRoomIDs(idMap) } |
