/
jbells.js
38 lines (30 loc) · 1.18 KB
/
jbells.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
E.showMessage("Jingle Bells");
var eventEmitter = new Object();
function strofa(notes, times, current, next){
eventEmitter.on(current, () => {
if (notes.length == 0) {
eventEmitter.emit(next);
return;
}
let note = notes.shift();
let time = times.shift();
Bangle.beep(time, note).then(() => {
setTimeout(() => {
eventEmitter.emit(current);
}, time);
});
});
}
var one = [2637, 2637, 2637, 2637, 2637, 2637, 2637, 3135, 2093, 2349, 2637];
var one_t = [160, 160, 320, 160, 160, 320, 160, 160, 160, 160, 320];
var two = [2793, 2793, 2793, 2637, 2637, 2637, 2349, 2349, 2349, 2637, 2349, 3135];
var two_t = [160, 160, 320, 160, 160, 320, 160, 160, 160, 160, 320, 320];
var three = [2637, 2637, 2637, 2637, 2637, 2637, 2637, 3135, 2093, 2349, 2637];
var three_t = [160, 160, 320, 160, 160, 320, 160, 160, 160, 160, 320];
var four = [2793, 2793, 2793, 2637, 2637, 2637, 3135, 2793, 2637, 2349, 2093];
var four_t = [160, 160, 320, 160, 160, 320, 160, 160, 160, 160, 320];
strofa(one, one_t, "one", "two");
strofa(two, two_t, "two", "three");
strofa(three, three_t, "three", "four");
strofa(four, four_t, "four", "stop");
eventEmitter.emit("one");