-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNote.cpp
More file actions
47 lines (40 loc) · 4.6 KB
/
Copy pathNote.cpp
File metadata and controls
47 lines (40 loc) · 4.6 KB
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
#include "Board.h"
uint8_t songNum = -1;
const unsigned long NOTE_TIMES_SONG0[] = {
1000, 2000, 7000, 8000, 11000, 13000, 7000, 8000, 9000, 1000
};
const unsigned long NOTE_TIMES_SONG1[] = {
0,400,600,800,1200,1400,1600,2200,2400,2800,3000,3200,3600,3800,4000,4400,4800,5200,5600,6600,7000,7200,7600,7800,8000,8600,8800,9200,9400,9600,10000,10200,10400,10800,11200,11600,12000,12800,13200,13400,13600,14000,14200,14400,15000,15200,15600,15800,16000,16400,16600,16800,17200,17600,18000,18400,19400,19800,20000,20400,20600,20800,21400,21600,22000,22200,22400,22800,23000,23200,23600,24000,24400,24800,25600,26400,27200,28000,28800,29600,30400,31200,32000,32800,33600,34400,35200,35600,36000,36800
//0,38400,76800,400,38800,77200,600,39000,77400,800,39200,77600,1200,39600,78000,1400,39800,78200,1600,40000,78400,2200,40600,79000,2400,40800,79200,2800,41200,79600,3000,41400,79800,3200,41600,80000,3600,42000,80400,3800,42200,80600,4000,42400,80800,4400,42800,81200,4800,43200,81600,5200,43600,82000,5600,44000,82400,6600,45000,83400,7000,45400,83800,7200,45600,84000,7600,46000,84400,7800,46200,84600,8000,46400,84800,8600,47000,85400,8800,47200,85600,9200,47600,86000,9400,47800,86200,9600,48000,86400,10000,48400,86800,10200,48600,87000,10400,48800,87200,10800,49200,87600,11200,49600,88000,11600,50000,88400,12000,50400,88800,12800,51200,89600,13200,51600,90000,13400,51800,90200,13600,52000,90400,14000,52400,90800,14200,52600,91000,14400,52800,91200,15000,53400,91800,15200,53600,92000,15600,54000,92400,15800,54200,92600,16000,54400,92800,16400,54800,93200,16600,55000,93400,16800,55200,93600,17200,55600,94000,17600,56000,94400,18000,56400,94800,18400,56800,95200,19400,57800,96200,19800,58200,96600,20000,58400,96800,20400,58800,97200,20600,59000,97400,20800,59200,97600,21400,59800,98200,21600,60000,98400,22000,60400,98800,22200,60600,99000,22400,60800,99200,22800,61200,99600,23000,61400,99800,23200,61600,100000,23600,62000,100400,24000,62400,100800,24400,62800,101200,24800,63200,101600,25600,64000,102400,26400,64800,103200,27200,65600,104000,28000,66400,104800,28800,67200,105600,29600,68000,106400,30400,68800,107200,31200,69600,108000,32000,70400,108800,32800,71200,109600,33600,72000,110400,34400,72800,111200,35200,73600,112000,35600,74000,112400,36000,74400,112800,36800,75200,113600
};
const unsigned int NOTE_LENGTHS_SONG0[] = {
5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000
};
/*const unsigned int NOTE_LENGTHS_SONG1[] = {
1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000
};*/
const unsigned long* NOTE_TIMES[] = {NOTE_TIMES_SONG0, NOTE_TIMES_SONG1};
//const unsigned int* NOTE_LENGTHS[] = {NOTE_LENGTHS_SONG0, NOTE_LENGTHS_SONG1};
const int NOTE_CT[] = {sizeof(NOTE_TIMES_SONG0)/sizeof(NOTE_TIMES_SONG0[0]), sizeof(NOTE_TIMES_SONG1)/sizeof(NOTE_TIMES_SONG1[0])};
//Note spawnedNotes[4][NUM_PLAYERS];
int currentNote = 0;
void spawnNote(Player* players) {
for (int i = 0; i < NUM_PLAYERS; ++i) {
Note* note = new Note{currentNote, players + i};
int x, y;
do {
x = getRandInt(BOARD_W);
y = getRandInt(BOARD_H);
} while (board[y][x].player != NULL || board[y][x].note != NULL);
board[y][x].note = note;
}
}
void checkNote(Player* players, unsigned long currT) {
if (currentNote > NOTE_CT[songNum]) {
return;
}
if (currT > NOTE_TIMES[songNum][currentNote]) {
spawnNote(players);
currentNote += 4;
}
}