summaryrefslogtreecommitdiff
path: root/src/controller_bridge.js
blob: 84bc0403f0ce226670ec0e8dd9ccca185b13b94b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
window.addEventListener("gamepadconnected", function(e) {
	console.log("Gamepad connected at index %d: %s. %d buttons, %d axes.",
		e.gamepad.index,
		e.gamepad.id,
		e.gamepad.buttons.length,
		e.gamepad.axes.length
	);
	var i;
	for(i = 0; i < e.gamepad.buttons.length; i++){
		CONT.last_state.buttons[i] = false;
	}
	for(i = 0; i < e.gamepad.axes.length; i++){
		CONT.last_state.axes[i] = 0;
	}
	CONT.gp = navigator.getGamepads()[0];
});

window.CONT = {
	messages: [],
	gp: null,
	last_state: {
		buttons: [],
		axes: []
	},
	loop: function() {
		var i;
		if(CONT.gp == null) return;
		for(i = 0; i < CONT.gp.buttons.length; i++){
			CONT.last_state.buttons[i] = CONT.gp.buttons[i].pressed;
		}
		for(i = 0; i< CONT.gp.axes.length; i++){
			CONT.last_state.axes[i] = CONT.gp.axes[i];
		}
	}
};