The Flourish Workshop

Every effect replays each beat. Edit a file in src/fx-sprites/ and it hot-reloads here.

{#each SAMPLES as fx (fx.kind)} {@const Sprite = FX_SPRITES[fx.kind] as Component<{ fx: BoardFx }>}
{#each Array.from({ length: isSector(fx.kind) ? 6 : 3 }, (_, cy) => cy) as cy (cy)} {#each Array.from({ length: isSector(fx.kind) ? 6 : 3 }, (_, cx) => cx) as cx (cx)} {/each} {/each} {#key tick} {/key}
{fx.kind}
{/each}