ArrayList spirals = new ArrayList(); Spiral current = null; void setup(){ size(500,500); textSize(40); stroke(255); Spiral starter = new Spiral(250,250); starter.go(); spirals.add(starter); } void mousePressed(){ current = new Spiral(mouseX,mouseY); } void mouseDragged(){ if(current != null) { current.x = mouseX; current.y = mouseY; } } void mouseReleased(){ current.go(); spirals.add(current); current = null; } void draw(){ background(0,0,80); ArrayList doneSpirals = new ArrayList(); for(Spiral s : spirals){ s.draw(); if(s.done()){ doneSpirals.add(s); } } spirals.removeAll(doneSpirals); if(current != null)current.draw(); } class Spiral{ float x,y; float sz = 1.0; float ang = 0; boolean going = false; float mul = 1.01; float adelta = .02; float lastS; void go(){ going = true; mul = 1.05; adelta = .075; } boolean done(){ return(lastS > 20); } String before = "Me"; String after = "y Christmas!"; float rcount = 2; Spiral(float px, float py){ x = px; y = py; } void draw(){ String m = before; for(int i = 0; i