diff --git a/client/svelte-client/src/Input.svelte b/client/svelte-client/src/Input.svelte
new file mode 100644
index 0000000..2b38049
--- /dev/null
+++ b/client/svelte-client/src/Input.svelte
@@ -0,0 +1,38 @@
+
+
+
+
+
+
diff --git a/client/svelte-client/src/game/engine.ts b/client/svelte-client/src/game/engine.ts
index 72189a8..dc73f66 100644
--- a/client/svelte-client/src/game/engine.ts
+++ b/client/svelte-client/src/game/engine.ts
@@ -9,6 +9,26 @@ export const pixelRatio = writable(window.devicePixelRatio);
export const keysPressed: Writable = writable([])
+export const playerInputs = derived(
+ keysPressed,
+ $keysPressed => {
+ return $keysPressed.map(key => {
+ switch(key.toLowerCase()) {
+ case 'w':
+ return {input: 'UP', obj_id: 0, player: 1}
+ case 's':
+ return {input: 'DOWN', obj_id: 0, player: 1}
+ case 'arrowup':
+ return {input: 'UP', obj_id: 1, player: 2}
+ case 'arrowdown':
+ return {input: 'DOWN', obj_id: 1, player: 2}
+ default:
+ return null
+ }
+ }).filter(it => !!it);
+ }
+)
+
// A more convenient store for grabbing all game props
export const props = deriveObject({
width,