diff --git a/app/src/components/Controls.svelte b/app/src/components/Controls.svelte index c37e0eb..954c86b 100644 --- a/app/src/components/Controls.svelte +++ b/app/src/components/Controls.svelte @@ -2,15 +2,17 @@ import nipplejs from 'nipplejs'; import { onMount } from 'svelte'; import { capitalize, throttler, toInt8 } from '$lib/utilities'; - import { input, outControllerData, mode, modes } from '$lib/stores'; + import { input, outControllerData, mode, modes, type Modes } from '$lib/stores'; import type { vector } from '$lib/models'; + import Range from './input/Range.svelte'; + import Button from './input/Button.svelte'; let throttle = new throttler(); let left: nipplejs.JoystickManager; let right: nipplejs.JoystickManager; let throttle_timing = 40; - let data = new Int8Array(6); + let data = new Int8Array(7); onMount(() => { left = nipplejs.create({ @@ -67,6 +69,15 @@ throttle.throttle(updateData, throttle_timing); }; + const handleRange = (event:CustomEvent, key: 'speed' | 'height') => { + const value:number = event.detail + input.update((inputData) => { + inputData[key] = value; + return inputData; + }); + throttle.throttle(updateData, throttle_timing); + } + const changeMode = (modeValue: Modes) => { mode.set(modeValue); }; @@ -78,14 +89,23 @@
-