Drums
// Drum sounds are from http://www.drumsamples.org/
// import Minim
import ddf.minim.*;
// set up the sound variables
Minim minim;
AudioPlayer drum1;
AudioPlayer drum2;
// track when a drum has been struck
boolean drum1struck;
boolean drum2struck;
void setup()
{
// initialize the screen
size(210, 120);
// initialize sound
minim = new Minim(this);
drum1 = minim.loadFile("bongo1.wav");
drum2 = minim.loadFile("bongo7.wav");
// initialize the graphics
drum1struck = false;
drum2struck = false;
}
void draw()
{
background(255);
// draw the drums: if a draw has just been struck
// then fill it with color as visual feedback for the user
// drum 1
if (drum1struck == true)
{
fill(0);
drum1struck = false;
}
else
{
fill(255);
}
ellipse(50, 55, 100, 100);
// drum 2
if (drum2struck == true)
{
fill(0);
drum2struck = false;
}
else
{
fill(255);
}
ellipse(160, 55, 100, 100);
}
void keyPressed()
{
if (key == 'a' || key == 'A')
{
drum1struck = true;
drum1.play(0);
}
else if (key == 'b' || key == 'B')
{
drum2struck = true;
drum2.play(0);
}
}
void stop()
{
drum1.close();
drum2.close();
minim.stop();
super.stop();
}