Delayed Mouse Tracking

HTML

<script type="application/processing">

int CARD = 1;
int TITLE_BEFORE = 2;
int PLAY = 3;
int TITLE_AFTER;

bees = new ArrayList<Bee>();

int forcedWait;

fallingBees = new ArrayList<Bee>();
int gameMode = CARD;
PImage cardImage;
int killCount;
int lives;
Dino d;
void setup(){
   size(500,500); 
   cardImage = loadImage("smallbill.jpg");
//   startGame();
    d = new Dino();
//   noCursor();
}

void draw(){
  if(forcedWait > 0) forcedWait--;
   if(gameMode == CARD){
      drawCard();
   } 
   if(gameMode == TITLE_BEFORE || gameMode == TITLE_AFTER){
      drawTitle();
   } 
   if(gameMode == PLAY){
    play();
   }
   
   if(gameMode == PLAY || gameMode == TITLE_AFTER){
      showScore(); 
   }
   
}


void showScore(){
   fill(0);stroke(0); strokeWeight(2);
   textAlign(CENTER,CENTER);
  text("score:"+killCount,0,GROUND,250,100);
if(gameMode == PLAY){
  text("lives:"+lives,250,GROUND,250,100);
}
}

int ticks;
void startGame(){
     gameMode = PLAY;
     ticks = 0;
    bees = new ArrayList<Bee>();
    fallingBees = new ArrayList<Bee>();
killCount = 0;
lives = 3;
}

void mousePressed(){
   if(gameMode == CARD){
      gameMode = TITLE_BEFORE;
      return;
   } 
    if(gameMode == TITLE_BEFORE || gameMode == TITLE_AFTER){
      if(forcedWait <= 0){
        startGame();
        return;
      }
    }
    if(gameMode == PLAY){
       d.isPunch = true; 
       //bees.add(new Bee());
    }
}

void drawCard(){
  background(200);
    textAlign(CENTER);
    fill(0);
    image(cardImage,202,150);
   text("an alienbill.com /",250,145);
   text("kirkjerk joint\n\n\naudio by\nrenzo heredia\n\n\n\n(click)",250,310);
}

void drawTitle(){
   textAlign(CENTER,CENTER);

  background(50,50,100); 
noStroke();
fill(100,50,0);
rect(0,GROUND,500,500-GROUND);
fill(0);
textSize(20);
text("click to play",0,100,500,200);
textSize(50);
   text("DINOBEEBOXER",0,0,500,500);
   
}

int flash = 0;

void play(){
  ticks++;
  
  if(bees.size() == 0) bees.add(new Bee());
  
  if(random(100) < 1)...

JavaScript

var scripts=document.getElementsByTagName("script");
for(var i=0;i<scripts.length;i++) {
    if(scripts[i].type=="application/processing"){
        var src=scripts[i].src,canvas=scripts[i].nextSibling;
        if(src&&src.indexOf("#")){
           canvas=document.getElementById(src.substr(src.indexOf("#")+1));
        }else{
            while(canvas&&canvas.nodeName.toUpperCase()!="CANVAS")
                canvas=canvas.nextSibling;
        }
        if(canvas){
            new Processing(canvas,scripts[i].text);
        }
    }
}