The raven sets expectations; Create and Join say so when the table is not yet reached

The lobby tells a challenger what to expect in the table's own voice:
the keeper answers every raven, sometimes within the minute, sometimes
after a night's sleep; the seat is held either way, and the table is
theirs meanwhile. A Create or Join tried before the socket is open
used to vanish; it now says the table is still being reached.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Jm2auWk6RP71CjaAb4FMoG
This commit is contained in:
Eric Wagoner
2026-09-17 00:34:45 -04:00
co-authored by Claude Fable 5.1
parent 1be1cf7d1b
commit 3c10e0463f
2 changed files with 11 additions and 4 deletions
+4 -2
View File
@@ -720,7 +720,7 @@ class Net {
create(name: string): void {
this.you = name;
this.spectating = false;
this.send({ type: "create", name });
if (!this.send({ type: "create", name })) this.flash("Still reaching the table — try again in a moment");
}
/** Take a seat in the Peanut Gallery: watch a game with no name and no voice. */
@@ -737,7 +737,9 @@ class Net {
const existing = this.seats.find(
(s) => s.roomId === this.roomIdPending && s.name === name,
);
this.send({ type: "join", roomId, name, token: existing?.token ?? this.token });
if (!this.send({ type: "join", roomId, name, token: existing?.token ?? this.token })) {
this.flash("Still reaching the table — try again in a moment");
}
}
/** Sit back down at a remembered seat. */