Vous souvenez-vous de ce qu'il faut faire
pour coder des animations ?
On commence par créer des variables en dehors
de la boucle "draw",
et, à l'intérieur de la boucle "draw", on utilise
les variables pour faire notre dessin.
On a une variable pour la position "x", pour le "y",
une autre pour la largeur de la balle et une pour sa hauteur.
Et, à la fin, on change les valeurs des variables un petit peu.
"x" va contenir sa précédente valeur plus 1,
il va donc augmenter à chaque fois.
"y" va contenir sa précédente valeur moins 2,
il va donc baisser à chaque fois.
"ballWidth" va contenir la précédente largeur, multipliée par 0,99.
Et comme 0,99 est inférieur à 1, sa valeur va baisser.
"ballHeight" va contenir la précédente hauteur divisée par 1,01.
Comme c'est plus grand que 1, la hauteur va baisser aussi.
Donc, si je presse sur "Redémarrez", vous verrez
toutes ces valeurs changer.
Si vous regardez ces 4 lignes de code, vous verrez
qu'elles se ressemblent : on a une variable...
un signe égal, puis la même variable, un opérateur
(moins, plus, multiplié ou divisé) et un nombre. OK ?
Ce modèle est très très souvent utilisé en programmation, et les
programmeurs sont tellement fainéants,
qu'ils se sont dit : "est-ce qu'on peut trouver un moyen
plus court pour le coder ?". Alors, voici le raccourcis...
Au lieu d'écrire "x contient x + 1", on va écrire "x += 1". Compris ?
Donc, au lieu d'écrire "y moins 2",
on va écrire "y -= 2".
Et au lieu d'écrire "ballWidth contient ballWidth fois 0,99",
je vais écrire "ballWidth *= 0,99".
Enfin, pour ballHeight , vous avez compris, je vais remplacer
le code par "ballHeight /= 1,01".
Donc, ce que cela fait, c'est de prendre la valeur de la variable,
puis il utilise l'opérateur avec le nombre, ici 0,99.
Donc cela donne "ballWidth fois 0,99" et stocke le résultat
dans la même variable "ballWidth".
Si je presse sur "Redémarrez", vous verrez
le même résultat qu'avant.
OK. A vous d'être fainéants maintenant !