public static Food getNearestFood(Critter self, Environment envi){
		synchronized(envi.lock_food){		
			List<Food> food = getViewableFood(self, envi); 		
			
			if(food.isEmpty()){
				return null;
			}
			Food closest = null;
			double min = 10000000;
		
			Iterator<Food> iter = food.listIterator();
			while(iter.hasNext()){
				Food temp = iter.next();
				double distance = Math.sqrt(Math.pow((self.getPosition().x - temp.getPosition().x), 2) + 
						Math.pow((self.getPosition().y - temp.getPosition().y), 2));
				if (distance < min){
					min = distance;
					closest = temp;
				}
			}
			
			return closest;
		}
	}