diff --git a/web/src/lib/operators.ts b/web/src/lib/operators.ts index 8e4304f..88161be 100644 --- a/web/src/lib/operators.ts +++ b/web/src/lib/operators.ts @@ -25,8 +25,8 @@ enum Gender { } enum Side { - attacker = `url("data:image/svg+xml;charset=utf8,")`, - defender = `url("data:image/svg+xml;charset=utf8,")` + defender = `data:image/svg+xml;charset=utf8,`, + attacker = `data:image/svg+xml;charset=utf8,` } enum Squad { diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index 8de0304..5dc63cc 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -1,5 +1,5 @@ @@ -37,24 +36,62 @@ Siegedle - ({ - label: operator.name, - value: operator.image, - }))} - bind:value={selectedOpIcon} - icon={leftIcon} - override={{ - width: '100%', - maxWidth: '20rem', - minWidth: '10rem', - }} - on:change={() => { - leftIcon.src = selectedOpIcon; - }} - description='Select an operator' - /> + + {#if !selectedOp} + + {/if} + {#if selectedOp} + + {/if} + { + selectedOp = data.operators.find((operator) => operator.name === selectedOpName); + leftIcon = selectedOp.image; + }} + override={{ + width: '100%', + minWidth: '8rem', + }} + description='Select an operator' + /> + + { + if(!selectedOp) return; + guesses = guesses.concat([selectedOp]); + options = options.filter((option) => option.value !== selectedOpName); + selectedOp = null; + selectedOpName = null; + }} + > + Guess + + + {#each guesses as guess } + + {#if guess.name === data.selectedOperator.name} + Correct! + {:else} + Wrong! + {/if} + + + {['male', 'female', 'divers'][guess.gender]} + + + + + + {/each} + \ No newline at end of file diff --git a/web/src/routes/+page.ts b/web/src/routes/+page.ts index ecc9f48..48229ba 100644 --- a/web/src/routes/+page.ts +++ b/web/src/routes/+page.ts @@ -2,5 +2,6 @@ import type { PageLoad } from './$types'; import { operators } from '../lib/operators'; export const load = (async () => { - return { operators }; + const selectedOperator = operators[Math.floor(Math.random() * operators.length)]; + return { operators, selectedOperator }; }) satisfies PageLoad;