Bonjour,
J'ai pris cet exemple:
var itera = 0
timer.period[0] = 1000 # 1000ms = 1s
onevent timer0
itera = itera + 1
if itera==1 then
motor.left.target = 230
motor.right.target = -120
end
if itera==4 then
motor.left.target = 80
motor.right.target = 80
end
if itera==7 then
itera = 0
end
Et je l'ai amélioré un peu en ajoutant quelques petites choses:
var itera = 0
#Ajouté un variable "etat" pour savoir s'il doit dessiner (etat=1) ou non (etat=0)
var etat = 0
timer.period[0] = 1000 # 1000ms = 1s
#Ajouté un événement "button.center": si on presse sur le bouton central, l'état devient 0, le robot s'arrête (on arrête aussi les moteurs)
onevent button.center
etat = 0
motor.left.target = 0
motor.right.target = 0
#Ajouté un événement "button.forward": si on presse sur le bouton avant, l'état devient 1, le robot démarre
onevent button.forward
etat = 1
onevent timer0
#Ajouté un test pour savoir s'il doit dessiner ou non
if etat == 1 then
itera = itera + 1
if itera==1 then
motor.left.target = 230
motor.right.target = -120
end
if itera==4 then
motor.left.target = 80
motor.right.target = 80
end
if itera==7 then
itera = 0
end
#S'il ne doit pas dessiner, je remet la variable "itera" à 0 pour qu'il recommence depuis le début quand on le réenclenchera
else
itera = 0
end
J'ai ajouté une variable "etat" pour savoir si le robot doit faire le dessin ou non. On doit encore ajouter un contrôle sur l'état avec les boutons => deux événements. En pressant le bouton avant, le robot démarre. En pressant le bouton central, le robot s'arrête. Finalement, on doit encore ajouter dans l'événement timer un contrôle sur l'état pour vérifier si le robot doit faire le dessin ou non.
Dites moi si ça vous convient et si vous avez d'autres questions ;o)