Dans certaines situations votre robot n’arrête pas d'effectuer une répétition, comme par exemple prendre de votre stock et le remettre sans cesse, ou aller à un endroit puis un autre.
Comme dans cet exemple
A un moment donné quand le stock de graine d'arbre sera plein, il va répéter à l'infini les lignes <ajouter graine> et <prendre graine>, parce que quand le robot lit la 1er ligne de la commande, il prend une graine dans le stock et donc le stock n'est plus plein et passe sur la 2eme commande qui lui demande d’ajouter une graine etc...
Pour cette solution il suffit de repérer dans les commandes une ligne qui permette un Arrêt de la répétition et qui nous intéresse pour que le rebot puisse repartir dans ses taches au moment que l'on souhaite.
Comme ici
J'ai fait un copier/coller de la ligne < trou à proximité >, donc tant qu'aucun trou ne sera pas fait, mon robot va attendre et dès qu'il y a un trou il va recommencer toutes les commandes que je lui ai demandé et répéter jusqu’à ce que le robot ne trouve plus de trou dans la zone de recherche.
C'est une solution qui peut s'appliquer sur beaucoup de problèmes différents en modifiant la ligne choisi pour arrêter la répétition.
Mais en gardant toujours la ligne choisi dans une commande, ici j’ai choisi #1 fois# sinon j’ai l’impression que ça bug (à vérifier). Voir l’image en bas.
Edit : pour trouver les arrêts de répétition, suffit juste de décocher la petite flèche au bout des commande pour activer « l’arrêter de la répétition en cas d’échec », et regarder sur quelles lignes le robot s’arrête (il peut y en avoir plusieurs). Bien sûr dans mon exemple il faut attendre qu’il n’y ai plus de trou dans la zone de recherche, pour s’apercevoir qu’il s’arrête sur la ligne <trou à proximité>.
Aussi pour pouvoir utiliser désactiver/activer la répétition en cas d’échec, il faut obligatoirement pouvoir entrer dans la commande et que le robot puisse lire la 1er ligne.
Exemple :
Mon robot ne pourra jamais lire la 1er ligne <graine d‘arbre à proximité> parce qu’il ne rentrera jamais dans la commande #jusqu’à avoir les mains pleines#.
Parce que la commande #jusqu’à avoir les mains vides# est vrai tout le temps, mon robot aura tout le temps les mains vides, donc le robot ne commencera jamais les commandes et les répétitions à l’intérieur de celle-ci.