mr-crocs-adventures/tilorswift/js/Mouse.js

66 lines
1.5 KiB
JavaScript

export default class Mouse
{
constructor()
{
this.isPressedLeft = false;
this.isPressedRight = false;
this.isPressedMiddle = false;
this.x = 0;
this.y = 0;
this.addListenerMouseUp();
this.addListenerMouseDown();
this.addListenerMouseMove()
}
addListenerMouseUp()
{
window.addEventListener(
'mouseup',
(event) => {
switch (event.button) {
case 0:
this.isPressedLeft = false;
break;
case 1:
this.isPressedMiddle = false;
break;
case 2:
this.isPressedRight = false;
}
}
);
}
addListenerMouseMove()
{
window.addEventListener(
'mousemove',
(event) => {
this.x = event.clientX;
this.y = event.clientY;
}
);
}
addListenerMouseDown()
{
window.addEventListener(
'mousedown',
(event) => {
switch (event.button) {
case 0:
this.isPressedLeft = true;
break;
case 1:
this.isPressedMiddle = true;
break;
case 2:
this.isPressedRight = true;
}
}
);
}
}