#include "gestionnaireNiveaux.h" GestionnaireNiveaux::GestionnaireNiveaux(SDL_Surface *screen): m_pageActuelle(0),m_estChoisi(false),m_choixJoueur("nothings"),m_screen(screen), m_font(0), m_pagePrecedente(0), m_pageSuivante(0) { ///[1] Création des boutons //[1.1] Changement de pages m_pagePrecedente = new Bouton(SDL_LoadBMP("Images/gauche.bmp"), screen, 300-154, 560); m_pageSuivante = new Bouton(SDL_LoadBMP("Images/droite.bmp"), screen, 300, 560); //[1.2] Niveaux for (int i(0); icalculer(xSouris,ySouris)) { m_font=m_apercu[i]; selectOk=true; } } if (!selectOk)//Rien de selectionné ! m_font=0; }///calculer(int const xSouris, int const ySouris) void GestionnaireNiveaux::afficher() { ///[1] Affichage des boutons //[1.0] Font if (m_font!=0) SDL_BlitSurface(m_font,0,m_screen,0); //[1.1] Changeurs de pages m_pagePrecedente->afficher(); m_pageSuivante->afficher(); //[1.2] Niveaux for (int i(0); iafficher(); } }///afficher(SDL_Surface* screen) void GestionnaireNiveaux::clic(int const xSouris, int const ySouris) { ///Teste tous les boutons, si un bouton est cliqué, ///appelez nomDuFichier puis modifier m_choixJoueur et m_estChoisi //[1] Test du tableau de boutons for (Uint8 i(0); iestClique(xSouris,ySouris)) { std::cout << "Clic, niveau choisi: " << nomDuFichier(i) << std::endl; if (m_apercu[i]!=0) { m_estChoisi=true; m_choixJoueur=nomDuFichier(i); } else std::cout << nomDuFichier(i) << " n'existe pas. Reste au menu. " << std::endl; } } //[2] Tests des boutons de chgmt de page if (m_pageSuivante->estClique(xSouris,ySouris)) allerALaPage(m_pageActuelle+1); else if (m_pagePrecedente->estClique(xSouris,ySouris) && m_pageActuelle>0) allerALaPage(m_pageActuelle-1); }///clic(int const xSouris, int const ySouris) bool GestionnaireNiveaux::estChoisi() { return m_estChoisi; }///estChoisi() std::string GestionnaireNiveaux::getChoix() { return m_choixJoueur; }///getChoix() /**---------------------------------FONCTIONS INTERNES---------------------------------**/ void GestionnaireNiveaux::reinitialiserPage() { for (int i(0); iattribuerImg(surbrillance[i]); } //[5] On nettoie les déchets for (int i(0); i