Emit helm vector from drag control
This commit is contained in:
parent
c9beda6ea0
commit
29a5698fe0
@ -166,9 +166,14 @@
|
|||||||
else held.delete(code);
|
else held.delete(code);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const emitHelmVector = (x, y) => {
|
||||||
|
window.dispatchEvent(new CustomEvent('airship:helm-vector', { detail: { x, y } }));
|
||||||
|
};
|
||||||
|
|
||||||
const releaseStick = () => {
|
const releaseStick = () => {
|
||||||
for (const code of [...held]) setHeld(code, false);
|
for (const code of [...held]) setHeld(code, false);
|
||||||
document.querySelector('#drag-thumb').style.transform = 'translate(0px, 0px)';
|
document.querySelector('#drag-thumb').style.transform = 'translate(0px, 0px)';
|
||||||
|
emitHelmVector(0, 0);
|
||||||
};
|
};
|
||||||
|
|
||||||
const stick = document.querySelector('#drag-stick');
|
const stick = document.querySelector('#drag-stick');
|
||||||
@ -188,6 +193,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
thumb.style.transform = `translate(${dx}px, ${dy}px)`;
|
thumb.style.transform = `translate(${dx}px, ${dy}px)`;
|
||||||
|
emitHelmVector(dx / radius, dy / radius);
|
||||||
setHeld('ArrowLeft', dx < -deadZone);
|
setHeld('ArrowLeft', dx < -deadZone);
|
||||||
setHeld('ArrowRight', dx > deadZone);
|
setHeld('ArrowRight', dx > deadZone);
|
||||||
setHeld('ArrowUp', dy < -deadZone);
|
setHeld('ArrowUp', dy < -deadZone);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user