diff --git a/src/lib/chat/MessageUI.svelte b/src/lib/chat/MessageUI.svelte index 9620fe7..b217c2e 100644 --- a/src/lib/chat/MessageUI.svelte +++ b/src/lib/chat/MessageUI.svelte @@ -17,8 +17,6 @@ const user = derivePromise(null, async () => { return await users.getUser(authorDid.value); }); - - $inspect(user);
diff --git a/src/lib/chat/tiptap.svelte b/src/lib/chat/tiptap.svelte index 7b0fa58..43b5f1d 100644 --- a/src/lib/chat/tiptap.svelte +++ b/src/lib/chat/tiptap.svelte @@ -52,7 +52,7 @@ Placeholder.configure({ placeholder: 'Write something ...' }), initKeyboardShortcutHandler({ onEnter: () => { - onEnter?.(editor?.getJSON()); + onEnter?.(editor?.getJSON() ?? { type: 'doc', content: [] }); } }) ], diff --git a/src/lib/player/Player.svelte b/src/lib/player/Player.svelte index cc46c7e..c251276 100644 --- a/src/lib/player/Player.svelte +++ b/src/lib/player/Player.svelte @@ -131,11 +131,11 @@ // updatePosition(); }); - onMount(() => { - setInterval(() => { - updatePosition(); - }, 1000); - }); + // onMount(() => { + // setInterval(() => { + // updatePosition(); + // }, 1000); + // }); async function updatePosition() { if (!playerLocation) { diff --git a/src/lib/world-editor/InstanceEditorUI.svelte b/src/lib/world-editor/InstanceEditorUI.svelte index cdd428e..4c22124 100644 --- a/src/lib/world-editor/InstanceEditorUI.svelte +++ b/src/lib/world-editor/InstanceEditorUI.svelte @@ -13,9 +13,12 @@ onMount(() => { window.addEventListener('keydown', async (e) => { - // if target is input or div thats content editable, don't handle - if (e.target instanceof HTMLInputElement || (e.target instanceof HTMLElement && e.target.contentEditable)) return; - + if ( + e.target instanceof HTMLInputElement || + (e.target instanceof HTMLElement && e.target.contentEditable === 'true') + ) + return; + if (e.key === 'r') { selectedTool = 'rotate'; } else if (e.key === 's') { diff --git a/src/lib/world-editor/Player.svelte b/src/lib/world-editor/Player.svelte index c11fc9f..91d5d09 100644 --- a/src/lib/world-editor/Player.svelte +++ b/src/lib/world-editor/Player.svelte @@ -3,7 +3,6 @@ import type { PlayerLocation } from '$lib/roomy'; import { T, useTask } from '@threlte/core'; import { Vector3 } from 'three'; - import { editingState } from './state.svelte'; let { player @@ -39,7 +38,7 @@ // interpolate rotation rotation = rotation * 0.95 + (player.rotation ?? 0) * 0.05; - + moving = dist > 0.5; if (dist < 0.05) return; diff --git a/src/lib/world-editor/Players.svelte b/src/lib/world-editor/Players.svelte index 4eef2b3..5230c71 100644 --- a/src/lib/world-editor/Players.svelte +++ b/src/lib/world-editor/Players.svelte @@ -1,20 +1,9 @@ {#each players.value as player} diff --git a/src/lib/world-editor/WorldEditorScene.svelte b/src/lib/world-editor/WorldEditorScene.svelte index 05bd63a..05e56de 100644 --- a/src/lib/world-editor/WorldEditorScene.svelte +++ b/src/lib/world-editor/WorldEditorScene.svelte @@ -12,7 +12,6 @@ import { Debug } from '@threlte/rapier'; import { derivePromise } from '$lib/utils.svelte'; import { g } from '$lib/roomy.svelte'; - import Players from './Players.svelte'; interactivity({ filter: (hits) => { @@ -24,22 +23,25 @@ const { renderer } = useThrelte(); - let playerLocation = derivePromise(null, async () => await getPlayerLocation()); - - $inspect(playerLocation); - onMount(async () => { window.addEventListener('keydown', (e) => { - if (e.target instanceof HTMLInputElement || (e.target instanceof HTMLElement && e.target.contentEditable)) return; + if ( + e.target instanceof HTMLInputElement || + (e.target instanceof HTMLElement && e.target.contentEditable === 'true') + ) + return; // on c switch camera if (e.key === 'c') { - editingState.camera = editingState.camera === 'first' ? 'third' : 'first'; + if(editingState.camera === 'third' && !editingState.selectedCharacter) { + editingState.showCharacterPicker = true; + } else { + editingState.camera = editingState.camera === 'first' ? 'third' : 'first'; + } } }); renderer.toneMapping = ACESFilmicToneMapping; - }); $effect(() => { @@ -61,7 +63,7 @@ {:else} - + {/if} @@ -89,8 +91,6 @@ {/each} - - diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 45fa156..2b91440 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -3,11 +3,14 @@ import { initClient, login } from '$lib/oauth'; import { onMount } from 'svelte'; import { BlueskyLoginModal, Head } from 'fuchs'; + import { initRoomy } from '$lib/roomy.svelte'; let { children } = $props(); onMount(() => { initClient(); + + initRoomy(); });