Wyrm: a game

Wyrm

{#if room?.started && watching}

From the Peanut Gallery you watch {room.others.map((s) => s.name).join(', ')} play.{#if !room.connected} Reconnecting.{/if}

{:else if room?.started}

You are {room.nameOf(room.me)}, playing {room.others.map((s) => s.name).join(', ')}.{#if !room.connected} Reconnecting.{/if}

{:else}

A game between people, played by turns whenever each of you has a moment.

{/if}
{#if room} {#if room.isHost}{/if} {/if} {#if error}

{error}

{/if} {#if phrase}

On the other device, open the hall and claim this phrase within ten minutes: {phrase.phrase}

{/if} {#if room?.view.over && !watching}

{#if room.view.rematch} {room.nameOf(room.view.rematch.by)} called for a rematch at table {room.view.rematch.to}. Take your seat {:else} The same company sits down at a new table, with a seat held for everyone here. {/if}

{/if} {#if joining && room?.seatEmpty}

room {roomId}

Take a seat

A player has opened this table and is gathering company. Choose a name and sit down. The game begins when the host says.

Just watching? You are in the Peanut Gallery until you sit.

{/if} {#if room?.started && !seatLost && room.view.seats.some((s) => s.standIn)}

A bot plays for {room.view.seats.filter((s) => s.standIn).map((s) => s.name).join(', ')}, at the host's word, until a transfer phrase from the host brings them back.

{/if} {#if watching && room?.started && !room.view.over}
{#if seatLost}

{seatLost} Claim it here, or write to the keeper.

{:else}{#if room.view.expected.length > 0}

{room.nameOf(room.view.host)} began the game before {room.view.expected.join(' and ')} arrived, and the seat held for {room.view.expected.length === 1 ? 'them' : 'each'} went with it.

{/if}

Had a seat at this table? Ask the host for a transfer phrase, or make one on the device that still holds the seat, and claim it here. Or write to the keeper for a link that brings it back.

{/if}
{/if} {#if room && !room.started} {:else if room} {:else if !error}

{joining ? 'Finding the table.' : 'Finding your seat.'}

{/if}