<code>
int circleWidth = 25;
int circleHeight = 25;
float s;
// an array to store a list of bubbles
ArrayList<array> risingBubbles;
risingBubbles = new ArrayList<array>(); // create a new array list risingBubbles()
void setup() {
size(400,400);
background(#49BDEF);
fill(255,255,0);
stroke(255);
}//end setup
void star() {
line(risingBubble[0],risingBubble[1],risingBubble[0],risingBubble[1]+7);
line(risingBubble[0],risingBubble[1],risingBubble[0]+5,risingBubble[1]-5);
line (risingBubble[0],risingBubble[1],risingBubble[0]-5,risingBubble[1]-5);
fill(#49BDEF);
noStroke();
ellipse(risingBubble[0],risingBubble[1],4,4);
}
void draw(){
background(#49BDEF);
//is mouse moving inside canvas?
if (pmouseX != mouseX || pmouseY !=mouseY){
newRisingBubble();
} // end if
frameRate(10);
for (int i = 0; i<risingBubbles.size() ;i++){
risingBubble = risingBubbles.get(i);
ellipse(risingBubble[0],risingBubble[1],circleWidth,circleHeight);
risingBubble[1] = risingBubble[1] - 15;
//remove bubble from array when y value is 20, run star(); // star() doesn't work yet.
if (risingBubble[1]<20) {
star();
risingBubbles.remove(i);
}//end if
}//end for
}//end draw
void newRisingBubble() {
risingBubbles.add([mouseX,mouseY]);
}//end newRisingBubble
void mousePressed() {
circleWidth = 35;
circleHeight=35;
fill(255,0,0);
}//end mousePressed
void mouseReleased(){
circleWidth = 25;
circleHeight = 25;
fill(255,255,0);
}//end mouseReleased
</code>