xxxxxxxxxx
var NUMBEROFCIRCLES = 10;
var x = [];
var y = [];
var v = [];
var a = [];
var c = []; // COLOR
var s = []; // which sound
var d = 20;
var carray = ["MediumVioletRed", "DeepPink", "PaleVioletRed", "HotPink", "LightPink", "Pink"];
var sounds = [];
function preload()
{
sounds[0] = loadSound("noise1.mp3");
sounds[1] = loadSound("noise2.mp3");
sounds[2] = loadSound("noise3.mp3");
sounds[3] = loadSound("noise4.mp3");
sounds[4] = loadSound("noise5.mp3");
sounds[5] = loadSound("noise6.mp3");
sounds[6] = loadSound("noise7.mp3");
}
function setup() {
createCanvas(windowWidth, windowHeight);
background(100);
for(let i = 0;i<NUMBEROFCIRCLES;i++)
{
x[i] = random(width);
y[i] = random(height);
v[i] = random(1, 5);
a[i] = random(-PI, PI);
c[i] = random(carray);
s[i] = floor(random(sounds.length));
}
}
function draw() {
background(255);
fill(0);
for(let i = 0;i<NUMBEROFCIRCLES;i++)
{
fill(c[i]);
ellipse(x[i], y[i], d, d);
x[i] = x[i] + v[i]*cos(a[i]);
y[i] = y[i] + v[i]*sin(a[i]);
// boundary checking
if(x[i]>width) a[i] = PI - a[i];
if(x[i]<0) a[i] = PI - a[i];
if(y[i]>height) a[i] = TWO_PI - a[i];
if(y[i]<0) a[i] = TWO_PI - a[i];
if(x[i]>width || x[i]<0 || y[i]>height || y[i]<0) // || means "or"
{
sounds[s[i]].play(); // play the sound when you hit a wall
s[i] = (s[i]+1) % sounds.length; // go to the next sound
}
}
}