#include "jeu.h" void tracerLigne(SDL_Surface *screen, int nbJoueurs) { SDL_Rect pos; SDL_Surface* pixel; pixel = SDL_CreateRGBSurface(SDL_HWSURFACE, 1, 1, 32, 0, 0, 0, 0); SDL_FillRect(pixel, 0, SDL_MapRGB(pixel->format, 255, 255, 255)); for(int y = -RAYON_FENETRE; y-LARGEUR_LIGNE && y-LARGEUR_LIGNE && x-COTE/400 && abs(1.75*y)-abs(x)>-LARGEUR_LIGNE*2 && abs(1.75*y)-abs(x)-LARGEUR_LIGNE && abs(y)-abs(x)format,0,0,255)); Point point2(COTE/2-COTE/36,SDL_MapRGB(screen->format,30,200,10)); point.afficherPoint(arene, COTE/2, COTE/2); point2.afficherPoint(arene, COTE/2, COTE/2); tracerLigne(arene, nbJoueurs); //[1.2] Raquettes Raquette *tabRaquette[nbJoueurs]; for(int i(0); iformat, 255, 0, 0)); //[1.3] La balle Balle baballe(nbJoueurs); Balle baballe2(nbJoueurs); for (int i(0); ideplacer(false); if (input.getTouches(SDLK_x)) tabRaquette[0]->deplacer(true); if (input.getTouches(SDLK_RIGHT)) tabRaquette[1]->deplacer(true); if (input.getTouches(SDLK_LEFT)) tabRaquette[1]->deplacer(false); } if(nbJoueurs == 3) { if (input.getTouches(SDLK_v)) tabRaquette[0]->deplacer(false); if (input.getTouches(SDLK_x)) tabRaquette[0]->deplacer(true); if (input.getTouches(SDLK_q)) tabRaquette[1]->deplacer(true); if (input.getTouches(SDLK_a)) tabRaquette[1]->deplacer(false); if (input.getTouches(SDLK_KP3)) tabRaquette[2]->deplacer(true); if (input.getTouches(SDLK_KP6)) tabRaquette[2]->deplacer(false); } if(nbJoueurs == 4) { if (input.getTouches(SDLK_v)) tabRaquette[0]->deplacer(false); if (input.getTouches(SDLK_x)) tabRaquette[0]->deplacer(true); if (input.getTouches(SDLK_q)) tabRaquette[1]->deplacer(true); if (input.getTouches(SDLK_a)) tabRaquette[1]->deplacer(false); if (input.getTouches(SDLK_RIGHT)) tabRaquette[2]->deplacer(true); if (input.getTouches(SDLK_LEFT)) tabRaquette[2]->deplacer(false); if (input.getTouches(SDLK_KP3)) tabRaquette[3]->deplacer(true); if (input.getTouches(SDLK_KP6)) tabRaquette[3]->deplacer(false); } if(input.getTouches(SDLK_SPACE) && p) { pause = true; p = false; } else if(!input.getTouches(SDLK_SPACE)) p = true; // [3] Calcul baballe.bouger(screen); //if(nbJoueurs == 4) //baballe2.bouger(screen); // [4] Dessin SDL_BlitSurface(arene, 0, screen, 0); for(int i(0); iafficher(screen); baballe.afficher(screen); if(nbJoueurs == 4) baballe2.afficher(screen); SDL_Flip(screen); //[5] Gestion du temps while (15>SDL_GetTicks()-tempsPrecedent || pause) { //ça bloque pendant 30 ms moins le temps de calcul if(pause) { input.updateEvenement(); if(input.getTouches(SDLK_SPACE) && p) { pause = false; p = false; } else if(!input.getTouches(SDLK_SPACE)) p = true; if(!input.continuer() || input.getTouches(SDLK_ESCAPE)) { continuer = false; break; } } } tempsPrecedent=SDL_GetTicks(); } ///Boucle évenementielle // [6] Nettoyage for(int i(0); i