diff --git a/gamepad/gamepad-tests.ts b/gamepad/gamepad-tests.ts index 4b0cddcad..6bf80458d 100644 --- a/gamepad/gamepad-tests.ts +++ b/gamepad/gamepad-tests.ts @@ -19,24 +19,22 @@ }; (()=>{ - window.addEventListener('GamepadConnected', (e: Gamepad.GamepadEvent)=>{ + var gamepadconnected = (e: Gamepad.GamepadEvent) => { console.log('Gamepad ' + e.gamepad.index + ' connected!'); - }, false); - window.addEventListener('GamepadDisconnected', (e: Gamepad.GamepadEvent)=>{ + if(e.gamepad.mapping == 'standard'){ + console.log("The Gamepad's controls have been mapped to the Standard Gamepad layout."); + } + }; + var gamepaddisconnected = (e: Gamepad.GamepadEvent) => { console.log('Gamepad ' + e.gamepad.index + ' disconnected!'); - }, false); - window.addEventListener('webkitGamepadConnected', (e: Gamepad.GamepadEvent)=>{ - console.log('Gamepad ' + e.gamepad.index + ' connected!'); - }, false); - window.addEventListener('webkitGamepadDisconnected', (e: Gamepad.GamepadEvent)=>{ - console.log('Gamepad ' + e.gamepad.index + ' disconnected!'); - }, false); - window.addEventListener('mozGamepadConnected', (e: Gamepad.GamepadEvent)=>{ - console.log('Gamepad ' + e.gamepad.index + ' connected!'); - }, false); - window.addEventListener('mozGamepadDisconnected', (e: Gamepad.GamepadEvent)=>{ - console.log('Gamepad ' + e.gamepad.index + ' disconnected!'); - }, false); + }; + + window.addEventListener('GamepadConnected', gamepadconnected, false); + window.addEventListener('GamepadDisconnected', gamepaddisconnected, false); + window.addEventListener('webkitGamepadConnected', gamepadconnected, false); + window.addEventListener('webkitGamepadDisconnected', gamepaddisconnected, false); + window.addEventListener('mozGamepadConnected', gamepadconnected, false); + window.addEventListener('mozGamepadDisconnected', gamepaddisconnected, false); var requestAnimationFrame = window.requestAnimationFrame || (window).mozRequestAnimationFrame; var getGamepads = navigator.getGamepads || navigator.webkitGetGamepads; @@ -45,13 +43,13 @@ { requestAnimationFrame.call(window, runAnimation); - var gamepads: Gamepad.GamepadList = getGamepads.call(navigator); + var gamepads: Gamepad.Gamepad[] = getGamepads.call(navigator); for(var i = 0; i < gamepads.length; i++){ var pad: Gamepad.Gamepad = gamepads[i]; - if(pad){ + if(pad && pad.connected){ for (var k = 0; k < pad.buttons.length; k++) { - var button = pad.buttons[k]; + var button: Gamepad.GamepadButton = pad.buttons[k]; if(button.pressed){ console.log('pad[' + pad.index + ']: ' + 'time=' + pad.timestamp + ' id="' + pad.id + '" button[' + k + '] = ' + button.value); }