Le rebond est géré, comme les collisions, dans le GameController.
-
En cas de collision avec les briques : Si on touche la brique par un côté, alors le x est inversé. Si la collision se fait par le bas ou la haut, le y est inversé.
-
En cas de collision avec les bords : De la même façon que pour les briques, si la balle touche un bord gauche ou droit, le x est inversé, sinon c'est le y. (hormis les bords qui font perdre la balle).
-
En cas de collision avec la batte : Le calcul est un peu plus compliqué, car il nous fallait un rebond réaliste de la balle sur la batte. On calcule l'angle entre la batte et la balle. On regarde la différence entre 180 et cet angle, pour obtenir le nouvel angle de la balle. On calcule le sinus et le cosinus pour obtenir la vitesse en x et en y, sans oublier de multiplier ces valeurs par la difficulté du jeu.
Retour vers la documentation technique