Miracle
Miracle copied to clipboard
Gamepad support
Hello, it could be done easily with : https://github.com/neogeek/gamepad.js
function createEO(e,k)
{
var eventObj = document.createEvent("Events");
eventObj.initEvent(e, true, true);
eventObj.which = k;
eventObj.keyCode = k;
return eventObj;
}
var gamepad = new Gamepad();
gamepad.on
(
'connect',
function ()
{
}
);
// BTN1
//
gamepad.on( 'press', 'button_1', function () { eventObj=createEO("keydown",88); keyDown(eventObj); } );
gamepad.on( 'release', 'button_1', function () { eventObj=createEO("keyUp",88); keyUp(eventObj); } );
// BTN2
//
gamepad.on( 'press', 'button_2', function () { eventObj=createEO("keydown",90); keyDown(eventObj); } );
gamepad.on( 'release', 'button_2', function () { eventObj=createEO("keyUp",90); keyUp(eventObj); } );
// START
//
gamepad.on( 'press', 'start', function () { eventObj=createEO("keydown",13); keyDown(eventObj); } );
gamepad.on( 'release', 'start', function () { eventObj=createEO("keydown",13); keyUp(eventObj); } );
// UP (38)
//
gamepad.on( 'press', 'd_pad_up', function () { eventObj=createEO("keydown",38); keyDown(eventObj); } );
gamepad.on( 'release', 'd_pad_up', function () { eventObj=createEO("keydown",38); keyUp(eventObj); } );
// DOWN (40)
//
gamepad.on( 'press', 'd_pad_down', function () { eventObj=createEO("keydown",40); keyDown(eventObj); } );
gamepad.on( 'release', 'd_pad_down', function () { eventObj=createEO("keydown",40); keyUp(eventObj); } );
// LEFT (37)
//
gamepad.on( 'press', 'd_pad_left', function () { eventObj=createEO("keydown",37); keyDown(eventObj); } );
gamepad.on( 'release', 'd_pad_left', function () { eventObj=createEO("keydown",37); keyUp(eventObj); } );
// RIGHT (39)
//
gamepad.on( 'press', 'd_pad_right', function () { eventObj=createEO("keydown",39); keyDown(eventObj); } );
gamepad.on( 'release', 'd_pad_right', function () { eventObj=createEO("keydown",39); keyUp(eventObj); } );