diff --git a/src/components/voxelEditor/VoxelEditorPage.tsx b/src/components/voxelEditor/VoxelEditorPage.tsx index 0ae6fee..7cbcd96 100644 --- a/src/components/voxelEditor/VoxelEditorPage.tsx +++ b/src/components/voxelEditor/VoxelEditorPage.tsx @@ -45,7 +45,8 @@ export const VoxelEditorPage = observer(function () { const undo = useCallback(() => { const entry = history.current.pop(); - if (!entry || !id) return; + if (!entry || !id) + return; if (entry.type === 'add') { state.worldEditor.removeVoxelFromObjectType(id, entry.voxel.position); } else { @@ -58,7 +59,8 @@ export const VoxelEditorPage = observer(function () { const redo = useCallback(() => { const entry = future.current.pop(); - if (!entry || !id) return; + if (!entry || !id) + return; if (entry.type === 'add') { state.worldEditor.addVoxelToObjectType(id, entry.voxel); } else { @@ -71,7 +73,8 @@ export const VoxelEditorPage = observer(function () { useEffect(() => { function onKeyDown(e: KeyboardEvent) { - if (!e.ctrlKey) return; + if (!e.ctrlKey) + return; if (e.key === 'z' && !e.shiftKey) { e.preventDefault(); undo(); } if (e.key === 'y' || (e.key === 'z' && e.shiftKey)) { e.preventDefault(); redo(); } } @@ -80,19 +83,22 @@ export const VoxelEditorPage = observer(function () { }, [undo, redo]); function handleAdd(voxel: Voxel) { - if (!id) return; + if (!id) + return; state.worldEditor.addVoxelToObjectType(id, voxel); pushHistory({ type: 'add', voxel }); } function handleRemove(position: V3) { - if (!id || !objectType) return; + if (!id || !objectType) + return; const voxel = objectType.voxels.find(v => v.position[0] === position[0] && v.position[1] === position[1] && v.position[2] === position[2] ); - if (!voxel) return; + if (!voxel) + return; state.worldEditor.removeVoxelFromObjectType(id, position); pushHistory({ type: 'remove', voxel }); } diff --git a/src/components/voxelEditor/VoxelEditorScene.tsx b/src/components/voxelEditor/VoxelEditorScene.tsx index 1c13c4d..ca6538c 100644 --- a/src/components/voxelEditor/VoxelEditorScene.tsx +++ b/src/components/voxelEditor/VoxelEditorScene.tsx @@ -28,13 +28,15 @@ export function VoxelEditorScene({ voxels, mode, color, typeId, onAdd, onRemove const [ghost, setGhost] = useState(null); function handleVoxelClick(e: ThreeEvent, voxel: Voxel) { - if (e.delta > DRAG_THRESHOLD) return; + if (e.delta > DRAG_THRESHOLD) + return; e.stopPropagation(); if (mode === 'remove') { onRemove(voxel.position); setGhost(null); } else { - if (!e.face) return; + if (!e.face) + return; const { x, y, z } = e.face.normal; const pos = adjPosition(voxel.position, x, y, z); onAdd({ typeId, position: pos, color }); @@ -51,14 +53,16 @@ export function VoxelEditorScene({ voxels, mode, color, typeId, onAdd, onRemove } function handleFloorClick(e: ThreeEvent) { - if (e.delta > DRAG_THRESHOLD || mode !== 'add') return; + if (e.delta > DRAG_THRESHOLD || mode !== 'add') + return; e.stopPropagation(); const pos: V3 = [Math.floor(e.point.x), 0, Math.floor(e.point.z)]; onAdd({ typeId, position: pos, color }); } function handleFloorMove(e: ThreeEvent) { - if (mode !== 'add') return; + if (mode !== 'add') + return; setGhost([Math.floor(e.point.x), 0, Math.floor(e.point.z)]); }