/
input_snapshot.js
63 lines (52 loc) · 1.35 KB
/
input_snapshot.js
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
var InputSnapshot;
var __hasProp = Object.prototype.hasOwnProperty;
InputSnapshot = (function() {
function InputSnapshot() {
this.states = [
{
left: false,
right: false,
up: false
}, {
left: false,
right: false,
up: false
}
];
}
InputSnapshot.prototype.get = function(name, player) {
return this.states[player][name];
};
InputSnapshot.prototype.getState = function(player) {
var key, state, val, _ref;
state = {};
_ref = this.states[player];
for (key in _ref) {
if (!__hasProp.call(_ref, key)) continue;
val = _ref[key];
state[key] = val;
}
return state;
};
InputSnapshot.prototype.setState = function(newStates, player) {
var key, val, _results;
_results = [];
for (key in newStates) {
if (!__hasProp.call(newStates, key)) continue;
val = newStates[key];
_results.push(this.states[player][key] = newStates[key]);
}
return _results;
};
InputSnapshot.prototype.left = function(player) {
return this.states[player]['left'];
};
InputSnapshot.prototype.right = function(player) {
return this.states[player]['right'];
};
InputSnapshot.prototype.up = function(player) {
return this.states[player]['up'];
};
return InputSnapshot;
})();
if (module) module.exports = InputSnapshot;