double DIST(double X1, double Y1, double X2, double Y2) {
	double distance;

	distance = sqrt( ((X1 - X2)*(X1 - X2)) + ((Y1 - Y2)*(Y1 - Y2)) );

	return distance;
}


void destination(int i)
{

	//calculate the destination for array member(soldier) i
	//2 away from closest enemy	
	
	int count1;
	double distance_lowest = 200.00;
	double distance;
	//double slope;
	//double y-intercept;
	//double x-intercept;
	//double radius;	double X1, X2, Y1, Y2;

	for(count1 = 0; count1 < 18; count1++) {
	
		if(soldier[i].team != soldier[count1].team && soldier[i].alive != 0 && soldier[count1].alive != 0 ) {

			distance = DIST(soldier[i].X, soldier[i].Y, soldier[count1].X, soldier[count1].Y);			
			//distance = sqrt( ((soldier[i].X - soldier[count1].X)*(soldier[i].X - soldier[count1].X)) + ((soldier[i].Y - soldier[count1].Y)*(soldier[i].Y - soldier[count1].Y)) );
			//distance = distance - 2;
			if(distance_lowest > distance) {

/*
				if(soldier[i].X > soldier[count1].X) {
					soldier[i].destX = soldier[count1].X + sqrt(distance);
				}else{
					soldier[i].destX = soldier[count1].X - sqrt(distance);
				}
				
				if(soldier[i].Y > soldier[count1].Y) {
					soldier[i].destY = soldier[count1].Y + sqrt(distance);
				}else{
					soldier[i].destY = soldier[count1].Y - sqrt(distance);
				}

*/
				soldier[i].closest=count1;
				distance_lowest = distance;
			}		
		}
	}

	//printf("completed destination\n");

}

