Source: Scratch Wiki en français


Le mode Turbo


Le Mode Turbo est un mode de fonctionnement du lecteur Scratch dans lequel les scripts sont exécutés le plus vite possible.

Utilisations

Ses utilisations principales sont le gain de temps dans les projets nécessitant beaucoup de calculs mathématiques par exemple.

Il peut être aussi utilisé pour accélérer les animations (pas de rafraîchissement de l'écran), puisque les différents effets seront appliqués directement.

Activation et désactivation

Le mode Turbo s'active de 2 manières différentes (équivalentes). Soit :


Quand le mode turbo est activé, une inscription orange avec "Mode Turbo" apparaît à côté du drapeau vert. La prochaine fois que le drapeau vert sera cliqué, le projet démarrera en Mode Turbo.

Mode turbo.PNG

Pour désactiver le mode Turbo, la procédure est la même que pour l'activation du mode. L'inscription orange disparaîtra près de la scène, indiquant que le projet fonctionnera à vitesse normale.

Scratch 1.4 et avant

LeSaviezVous
 LeSaviezVous :
Dans Scratch 1.4 et avant, le Mode Turbo était appelé "Vitesse Turbo"

Scratch 3.0

Dans Scratch 3.0 le mode turbo a augmenté considérablement la vitesse d'exécution d'un projet (par rapport à la vitesse du même projet en mode Turbo dans Scratch 2.0).

Détecteur de mode turbo

Pour l'instant, il n'existe pas de détecteur de mode turbo dans Scratch, mais on peut en créer un…

Avec chronomètre

Pour le créer il faut suivre le code suivant :

quand le drapeau vert pressé
répéter indéfiniment
réinitialiser le chronomètre
répéter (3) fois
attendre (0) secondes
end
si <(chronomètre) < [0.1]> alors 
mettre [Mode Turbo ? v] à [oui]
  

sinon
mettre [Mode Turbo ? v] à [non]

end
end

Sans chronomètre

Il est également possible d'en faire un qui n'utilise pas le chronomètre, mais il est moins précis, il faudra donc le code suivant :

quand le drapeau vert pressé 
envoyer à tous (Turbo ? v)
répéter indéfiniment
si <(abscisse x) > (10)> alors
mettre [Mode Turbo ? v] à [oui]
sinon 
mettre [Mode Turbo ? v] à  [non]


quand je reçois [Turbo ? v]
répéter indéfiniment
aller à x:(0) y:(0)
mettre [Seconde v] à (([seconde  v] actuelle) + (0.01))
répéter jusqu'à ce que <([seconde v] actuelle) > (seconde)
avancer de (0.1) pas
si <([seconde v] actuelle) = (0)> alors
envoyer à tous [Turbo ? v]


Testez le script :