Milestone one: the pane becomes the cockpit
FPV play begins. On your turn the pane takes the helm: arrows or WASD — quarter-turns are free camera, a stride issues a REAL move command through the same cautions and refusals as a board click, and a wall bounces you with the table's own toast. While the player steers, the director keeps its hands off the idle facings; your own magic still turns your head, and cutaways still fire. The layout inverts to match the mode: the 3D view is the primary window into the game, the top-down board reduced to a keymap beneath it, with the control hint in the pane's corner. Typing in chat is never hijacked. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
c7109fcddf
commit
b8bb60cf6d
@@ -1869,9 +1869,10 @@
|
||||
{:else if view}
|
||||
<div class="game">
|
||||
<section class="board-zone">
|
||||
<div class="table-stack">
|
||||
<div class="table-stack" class:fpv-primary={prefs.liveFp && !!view.you && !net.spectating}>
|
||||
{#if prefs.liveFp && view.you && !net.spectating}
|
||||
<LiveFirstPerson {view} batch={fpBatch} onhide={() => setPref("liveFp", false)} />
|
||||
<LiveFirstPerson {view} batch={fpBatch} onhide={() => setPref("liveFp", false)}
|
||||
onstride={(side) => tryMove(side)} canStride={yourMoment} />
|
||||
{/if}
|
||||
<Board
|
||||
{view}
|
||||
@@ -2829,6 +2830,17 @@
|
||||
}
|
||||
.table-stack :global(.live-fp) { width: 0; min-width: 100%; }
|
||||
.table-stack :global(.live-fp .fpv-canvas) { width: 100%; height: auto; }
|
||||
/* FPV play: the 3D view is the primary window into the game; the
|
||||
* top-down board shrinks to a keymap beneath it. */
|
||||
.table-stack.fpv-primary {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
max-width: 64rem;
|
||||
}
|
||||
.board-zone .table-stack.fpv-primary :global(svg.board) {
|
||||
max-height: 30dvh;
|
||||
align-self: center;
|
||||
}
|
||||
.board-zone :global(svg.board) {
|
||||
max-height: calc(100dvh - 21.5rem);
|
||||
width: auto;
|
||||
|
||||
Reference in New Issue
Block a user