away


          
  Boid.prototype.moveAway = function(boids, minDistance) {
          var distanceX = 0;
          var distanceY = 0;
          var numClose = 0;
  
          for(var i = 0; i < boids.length; i++) {
                  var boid = boids[i];
                  
                  if(boid.x == this.x && boid.y == this.y) continue;
                  
                  var distance = this.distance(boid)
                  if(distance < minDistance) {
                          numClose++;
                          var xdiff = (this.x - boid.x);
                          var ydiff = (this.y - boid.y);
  
                          if(xdiff >= 0) xdiff = Math.sqrt(minDistance) - xdiff;
                          else if(xdiff < 0) xdiff = -Math.sqrt(minDistance) - xdiff;
  
                          if(ydiff >= 0) ydiff = Math.sqrt(minDistance) - ydiff;
                          else if(ydiff < 0) ydiff = -Math.sqrt(minDistance) - ydiff;
  
                          distanceX += xdiff;
                          distanceY += ydiff;
                          boid = null; 
                  }
          }
          
          if(numClose == 0) return;
          
          this.xVelocity -= distanceX / 5;
          this.yVelocity -= distanceY / 5;
  }