protected void movesToward(VGDLSprite target)
    {
        double distance = this.physics.distance(rect, target.rect);

        if(maxDistance != -1 && distance > maxDistance)
        {
            //We have a maximum distance set up, and the target is further than that.
            // -> We don't react to this target.
            return;
        }

        for(Direction act : Types.DBASEDIRS)
        {
            //Calculate the distance if I'd apply this move.
            Rectangle r = new Rectangle(this.rect);
            r.translate((int)act.x(), (int)act.y());
            double newDist = this.physics.distance(r, target.rect);

            //depending on getting me closer/farther, if I'm fleeing/chasing, add move:
            if(fleeing && distance<newDist)
                actions.add(act);
            if(!fleeing && distance>newDist)
                actions.add(act);
        }
    }