mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 03:59:50 +02:00
feat: generalized prevent default
This commit is contained in:
1 parent
b3ecb1e9b9
commit
d408df8b4c
4 files changed
+19
-10
No files matched your search
@@ -75,8 +75,6 @@ export const GunContainer = forwardRef<Group, GunContainerProps>(
|
|||||||
window.addEventListener('pointerup', handlePointerUp);
|
window.addEventListener('pointerup', handlePointerUp);
|
||||||
}
|
}
|
||||||
function handlePointerMove(event: PointerEvent) {
|
function handlePointerMove(event: PointerEvent) {
|
||||||
event.preventDefault();
|
|
||||||
|
|
||||||
if (yawLimits) {
|
if (yawLimits) {
|
||||||
draftYaw = clamp(
|
draftYaw = clamp(
|
||||||
draftYaw + event.movementX * (Math.PI / canvas.width),
|
draftYaw + event.movementX * (Math.PI / canvas.width),
|
||||||
|
|||||||
@@ -49,8 +49,6 @@ export const HullContainer = forwardRef<Group, HullContainerProps>(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
function handlePointerMoveHull(event: PointerEvent) {
|
function handlePointerMoveHull(event: PointerEvent) {
|
||||||
event.preventDefault();
|
|
||||||
|
|
||||||
draftHullYaw += event.movementX * ((2 * Math.PI) / canvas.width);
|
draftHullYaw += event.movementX * ((2 * Math.PI) / canvas.width);
|
||||||
|
|
||||||
if (hullContainer.current) {
|
if (hullContainer.current) {
|
||||||
@@ -63,13 +61,11 @@ export const HullContainer = forwardRef<Group, HullContainerProps>(
|
|||||||
window.removeEventListener('pointerup', handlePointerUpHull);
|
window.removeEventListener('pointerup', handlePointerUpHull);
|
||||||
}
|
}
|
||||||
function handlePointerMoveTrack(event: PointerEvent) {
|
function handlePointerMoveTrack(event: PointerEvent) {
|
||||||
event.preventDefault();
|
|
||||||
|
|
||||||
const mesh = object as Mesh;
|
const mesh = object as Mesh;
|
||||||
const material = mesh.material as MeshStandardMaterial;
|
const material = mesh.material as MeshStandardMaterial;
|
||||||
const offset = new Vector2(
|
const offset = new Vector2(
|
||||||
0,
|
0,
|
||||||
-event.movementY * (6 / canvas.height) +
|
event.movementY * (6 / canvas.height) +
|
||||||
event.movementX * (6 / canvas.width),
|
event.movementX * (6 / canvas.width),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -83,8 +83,6 @@ export const TurretContainer = forwardRef(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
function handlePointerMove(event: PointerEvent) {
|
function handlePointerMove(event: PointerEvent) {
|
||||||
event.preventDefault();
|
|
||||||
|
|
||||||
if (yawLimits) {
|
if (yawLimits) {
|
||||||
draftYaw = clamp(
|
draftYaw = clamp(
|
||||||
draftYaw + event.movementX * (Math.PI / canvas.width),
|
draftYaw + event.movementX * (Math.PI / canvas.width),
|
||||||
|
|||||||
@@ -102,6 +102,18 @@ export default function Page({ params }: { params: { id: string } }) {
|
|||||||
gunPitchInput.current!.value = `${-Math.round(gunPitch * (180 / Math.PI))}`;
|
gunPitchInput.current!.value = `${-Math.round(gunPitch * (180 / Math.PI))}`;
|
||||||
}, [gunPitch]);
|
}, [gunPitch]);
|
||||||
|
|
||||||
|
function handlePointerDown() {
|
||||||
|
window.addEventListener('pointermove', handlePointerMove);
|
||||||
|
window.addEventListener('pointerup', handlePointerUp);
|
||||||
|
}
|
||||||
|
function handlePointerMove(event: PointerEvent) {
|
||||||
|
event.preventDefault();
|
||||||
|
}
|
||||||
|
function handlePointerUp() {
|
||||||
|
window.removeEventListener('pointermove', handlePointerMove);
|
||||||
|
window.removeEventListener('pointerup', handlePointerUp);
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<PageWrapper color="purple">
|
<PageWrapper color="purple">
|
||||||
<Flex gap="8" direction="column">
|
<Flex gap="8" direction="column">
|
||||||
@@ -133,7 +145,12 @@ export default function Page({ params }: { params: { id: string } }) {
|
|||||||
</Tabs.Root>
|
</Tabs.Root>
|
||||||
|
|
||||||
<div style={{ height: '50vh', maxHeight: 576 }}>
|
<div style={{ height: '50vh', maxHeight: 576 }}>
|
||||||
<Canvas shadows ref={canvas} camera={{ fov: 20 }}>
|
<Canvas
|
||||||
|
shadows
|
||||||
|
ref={canvas}
|
||||||
|
camera={{ fov: 20 }}
|
||||||
|
onPointerDown={handlePointerDown}
|
||||||
|
>
|
||||||
<Controls enabled={controlsEnabled} fit={hullContainer} />
|
<Controls enabled={controlsEnabled} fit={hullContainer} />
|
||||||
<SceneProps />
|
<SceneProps />
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user