You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.5 KiB

5 years ago
int ereaseRow = 0;
5 years ago
boolean doErease = false;
boolean doRec = false;
5 years ago
boolean chooseBank = false;
5 years ago
boolean choosePattern = false;
boolean chooseBPM = false;
5 years ago
void setBeat(int index, int sample) {
samples[sample][index] = true;
}
void keyPressed() {
5 years ago
//println(keyCode);
5 years ago
if(keyCode >= 64 && keyCode <= 88) { // From A to Z
5 years ago
//println(key);
5 years ago
//ereaseRow = keyCode-48;
5 years ago
if(key == 'b') { // BANK
5 years ago
chooseBank = true;
controller[0] = "STOP";
controller[2] = "CHOOSE...";
}
5 years ago
if(key == 'p') { // PLAY/STOP
5 years ago
controller[0] = controller[0] == "PLAY" ? "STOP" : "PLAY";
beat=0;
}
5 years ago
if(key == 'r') { // REC/OVERDUB
5 years ago
controller[1] = controller[1] == "UNSET" ? "REC/OVERDUB" : "UNSET";
doRec = true;
}
5 years ago
if(key == 'o') { // PATTERN
choosePattern = true;
controller[0] = "STOP";
patternLabel = "CHOOSE...";
}
if(key == 'x') { // EREASE
5 years ago
controller[1] = "EREASE";
}
5 years ago
5 years ago
} else if(keyCode >= 48 && keyCode < 57) { // From 1 to 9
int code = keyCode-49;
ereaseRow = controller[1] == "EREASE" ? keyCode-48 : 0;
5 years ago
doErease = ereaseRow>0;
5 years ago
if(code >= 0 && code < numSounds && !doErease) {
if(chooseBank) {
controller[2] = "BANK" + (code+1);
5 years ago
setData();
5 years ago
chooseBank = false;
5 years ago
} else if(choosePattern) {
pattern = (code+1);
patternLabel = "PATTERN" + (code+1);
setData();
choosePattern = false;
5 years ago
} else if(controller[1] != "EREASE" && controller[1] != "UNSET") {
setBeat(beat, code);
5 years ago
}
}
}
}