From dd2104648ebee84eb48ee80559ec6565d2105635 Mon Sep 17 00:00:00 2001 From: adrien Date: Thu, 29 Jun 2023 18:14:20 +0200 Subject: [PATCH] move on mouse button pressed --- index.html | 4 ++-- main.js | 15 +++++++++++---- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index 4edea5d..15f7d5e 100644 --- a/index.html +++ b/index.html @@ -145,8 +145,8 @@
- Se déplacer : ZQSD ou ↑←↓→
- Sauter : ESPACE
+ Se déplacer : ↑←↓→, ZQSD ou clic
+ Sauter : ESPACE
Regarder : Souris
0%
diff --git a/main.js b/main.js index 7336e63..a890a56 100644 --- a/main.js +++ b/main.js @@ -73,7 +73,7 @@ container.appendChild(renderer.domElement); const scene = new THREE.Scene(); -scene.background = new THREE.CubeTextureLoader() +scene.background = new THREE.CubeTextureLoader(loadMngr) .setPath( 'textures/calm-sea-skybox/' ) .load( [ 'ft.jpg', @@ -103,7 +103,7 @@ const wallMaterial = new THREE.MeshStandardMaterial({ aoMap : loader.load('textures/stonewall/ao.png'), roughnessMap: loader.load('textures/stonewall/roughness.png'), roughness : 1, - envMapIntensity: 0.1 + envMapIntensity: 0.4 }) const maze = new MazeMesh(mazeWidth, mazeWidth, 1, wallMaterial); @@ -631,18 +631,25 @@ function getSideVector() { } +var pressedMouseButtons = []; +document.body.onmousedown = document.body.onmouseup = function(event) { + for(var i=0; i <= Math.log2(event.buttons) || i < pressedMouseButtons.length; i++) { + pressedMouseButtons[i] = (event.buttons & (1 << i)) > 0 + } +} + function controls(deltaTime) { // gives a bit of air control const speedDelta = deltaTime * (playerOnFloor ? 100 : 20) / STEPS_PER_FRAME; - if (keyStates["ArrowUp"] || keyStates['KeyW']) { + if (keyStates["ArrowUp"] || keyStates['KeyW'] || pressedMouseButtons[0]) { playerVelocity.add(getForwardVector().multiplyScalar(speedDelta)); } - if (keyStates["ArrowDown"] || keyStates['KeyS']) { + if (keyStates["ArrowDown"] || keyStates['KeyS'] || pressedMouseButtons[1]) { playerVelocity.add(getForwardVector().multiplyScalar(- speedDelta));