私の入力ハンドラをJavascriptで動作させようとしています。Javascriptのヘルプキャンバスでのマウスの操作
this.Update = function() {
if (input.GetMousePressed()) {
console.log(input.GetMousePosition());
}
}
そして、これが私のinputhandlerです:
function InputHandler(canvas) {
this.canvas = canvas;
this.mousePressed = false;
this.mouseDown = false;
this.mousePosition = new Position(0, 0);
this.GetMousePosition = function() {
return this.mousePosition;
}
this.SetMousePosition = function(event) {
var rect = this.canvas.getBoundingClientRect();
this.mousePosition = new Position(event.clientX - rect.left, event.clientY - rect.top);
}
this.GetMousePressed = function() {
return this.mousePressed;
}
this.canvas.onmousedown = function(event) {
input.mouseDown = true;
input.SetMousePosition(event);
}
this.canvas.onclick = function(event) {
input.mouseClicked = true;
input.SetMousePosition(event);
}
window.onmouseup = function(event) {
if (input.mouseDown == true) {
input.mousePressed = true;
input.mouseDown = false;
}
}
最初の問題は、私はのmousePressedを処理する方法を知っているといけないということです私は現在、このコードを持っている私のGame.updateで何
falseに設定します。今は永遠に真実を保ちます。
私はJavascriptの新機能があります。このコードをより良くしたりより綺麗にするための変更や、悪い練習をしている場合は感謝しています。
私は通常のボタンを押すためにaddEventListenerを使用していますが、これを行うべきでしょうか?