rid of redundant state
This commit is contained in:
@@ -14,7 +14,6 @@ document.querySelectorAll('piece').forEach(element => {
|
||||
element.addEventListener('touchstart', e => mouseDown(e, element));
|
||||
});
|
||||
|
||||
let state = {dx: 0, dy: 0};
|
||||
let selectedElement = {};
|
||||
|
||||
function mouseDown(event, element)
|
||||
@@ -29,15 +28,13 @@ function mouseDown(event, element)
|
||||
if (event.type === 'touchstart')
|
||||
event = event.changedTouches[0];
|
||||
|
||||
state.dx = Math.abs(element.offsetLeft - event.clientX);
|
||||
state.dy = Math.abs(element.offsetTop - event.clientY);
|
||||
|
||||
element.pointerEvents = 'none';
|
||||
|
||||
selectedElement = element;
|
||||
|
||||
// move to the centre of the mouse to simulat pickup
|
||||
// selectedElement.style.top = event.clientY;
|
||||
// selectedElement.style.left = event.clientX;
|
||||
// move to the centre of the mouse to simulate pickup
|
||||
selectedElement.style.left = `${event.clientX - 20}px`;
|
||||
selectedElement.style.top = `${event.clientY - 20}px`;
|
||||
}
|
||||
|
||||
function mouseMove(event)
|
||||
@@ -50,8 +47,8 @@ function mouseMove(event)
|
||||
event = event.changedTouches[0];
|
||||
|
||||
// TODO: Scale for %
|
||||
selectedElement.style.left = `${event.clientX - state.dx}px`;
|
||||
selectedElement.style.top = `${event.clientY - state.dy}px`;
|
||||
selectedElement.style.left = `${event.clientX - 20}px`;
|
||||
selectedElement.style.top = `${event.clientY - 20}px`;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ const BOARD_H = 600;
|
||||
let BOARD_X = document.querySelector('#game-container').getBoundingClientRect().left + window.scrollX;
|
||||
let BOARD_Y = document.querySelector('#game-container').getBoundingClientRect().top + window.scrollY;
|
||||
|
||||
// only when in drawer
|
||||
// only when in drawer, otherwise 40
|
||||
const PIECE_WIDTH = 80;
|
||||
const PIECE_HEIGHT = 80;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user