if(FailCount>((SpaceX+SpaceY)>>ALLOW_FAIL_PER))
break;
}
// determining left,right and top endpoints
if(spot1==0)//if spot1 is open, get left and top
{
if(k==SpaceX+SpaceY)
{
l = j+SpaceX/2;
spot1=1; //close spot1
}
}
else
{
if((k!=SpaceX+SpaceY)&&(spot2==0)) //if spot1 is close while spot2 is open and k dosen't equal SpaceX+SpaceY,get right
{
r=j-SpaceX/2;
if((r-l)>=10)
{
centre_x=(l+r)/2;
spot2=1;//close spot2
return centre_x;
}
else
{
spot1=0;//open spot1
l=0;//clear left
r=0;//clear right
}
}
}//if spot2 is close, this program will naver be start.
}
}
return 0;
}