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 !