Bonjour, je suis nouveau sur ce forum, et un débutant en programmation, soyez indulgent des petites erreurs svp ^^.
Je suis en 1 ère année d'IUT R&T, et en cette fin d'année on nous demande de faire un projet en C en utilisant la SDL. J'ai décidé de refaire le jeux "pong". Et j'ai pas mal de soucis avec :s. En particulier la gestion de la balle.
Voici ma fonction:
Avant de me préoccuper des rebonds sur les joueurs j'essai déjà de la faire rebondir sur les bords. (ce que je pense plus simple dans un premier temps ?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 SCREEN_H 440 SCREEN_L 800 SDL_Rect mvtBalle( SDL_Rect PosBalle, int vitesse_x, int vitesse_y) { if (PosBalle.y<=0 || PosBalle.y>=SCREEN_H) { vitesse_y=-vitesse_y; } if (PosBalle.x<=0 || PosBalle.x>=SCREEN_L) { vitesse_x=-vitesse_x; } PosBalle.x=PosBalle.x+vitesse_x; PosBalle.y=PosBalle.y+vitesse_y; return PosBalle; }
-PosBalle est la position de la balle en x et y.
-vitesse et un facteur, que j'ai mis égal a 2 pour x et y, pour faire bouger la balle, que l'on inverse en fonction du bord touché.
-SCREEN est la taille du plateau de jeu.
J'ai pensé à pas mal de chose j'ai fait pas mal de test, mais ce n'est vraiment pas concluant du tout du tout. J'ai regardé aussi pas mal de forum mais j'ai pas réussi à reproduire ce que je voulais. Si quelqu'un arrive a me comprendre et a m'aider je suis la pour toute question, ce serais vraiment gentil. Merci =)
(mon autre problème est l'utilisation des threads pour pouvoir gérer les deux joueurs en même temps que la balle, mais je verrais ça après ^^')
Partager