Laby: C’est fou!

Laby: C’est fou!#

Les obstacles se multiplient pour un défi de plus.

Niveau précédent, Documentation

#include <laby/global_fr.hpp>
LABY("this-is-crazy")
/// BEGIN SOLUTION
void neutralise() {
    pose();
    prend();
    avance();
}
/// END SOLUTION
/// BEGIN SOLUTION
void pose_derriere() {
    droite();
    droite();
    pose();
    droite();
    droite();
}
/// END SOLUTION
/// BEGIN SOLUTION
void avance_toiles_cailloux() {
    while( regarde() != Mur and regarde() != Sortie) {
        if( regarde() == Toile) {
             neutralise();
        } else if( regarde() == Caillou) {
             pose_derriere();
             prend();
        } else {
            avance();
        }
    }
}
/// END SOLUTION
debut();
/// BEGIN SOLUTION
avance();
avance();
gauche();
avance();
while( regarde() != Caillou) {
    droite();
    droite();
    avance();
    gauche();
    avance();
    avance();
}
prend();
droite();
droite();
avance();
avance();
gauche();
while( regarde() == Vide) {
    avance();
}
neutralise();
pose_derriere();
avance();
gauche();
avance();
avance();
prend();
avance();
avance();
gauche();
neutralise();
pose_derriere();
avance();
prend();
avance_toiles_cailloux();
pose_derriere();
droite();
avance();
avance();
droite();
prend();
avance_toiles_cailloux();
gauche();
avance();
avance();
gauche();
avance_toiles_cailloux();
pose_derriere();
ouvre();
/// END SOLUTION
CHECK( a_gagne() );