/**
 * Created by zulupero on 20/06/16.
 */
public class Bug extends Buggle {
    public Bug(int posx, int posy, int dir) {
        super(posx, posy, dir);
    }

    public void enRoute() throws InterruptedException {
        setCouleur(StdDraw.BOOK_LIGHT_BLUE);
        setVitesse(30);
        setX(4);
        setY(3);
        baisseBrosse();
        int tourne = 0;
        int mode = 0 ;


        while(!isSurBiscuit()){
            switch(mode){
                /* tout droit jusqu'à un mur
                 * sauf si on trouve la sortie
                 */
                case 0:
                    if(!isFaceMur()){
                        avance();
                    } else{
                        droite();
                        tourne--;
                        mode=1;
                    }
                    break;

                /* suivi main gauche en comptabilisant les virages
                 */
                case 1:
                    gauche();
                    tourne++;
                    while(isFaceMur()){
                        droite();
                        tourne--;
                    }
                    avance();
                    if (tourne == 0){
                        mode =0;
                    }
            }
        }
        prendBiscuit();
        message("Miam !");
    }
}
