#include "Boost.h" Boost::Boost(SDL_Surface *screen, Collisions *gestionnaireCollisons, Sounderer *mediaPlayer, SDL_Surface* apparence) : Power(screen, gestionnaireCollisons, mediaPlayer, apparence) { }///Constructeur Boost::~Boost() { }///Destructeur void Boost::usePower(int orientation, int &x, int &y, int const &ID) { //[0] Bruitage m_mediaPlayer->play("Boost"); //[1]Préparation de l'orientation du bond int ajoutX(0); int ajoutY(0); convertDir(orientation, ajoutX, ajoutY); bool sboum(false); //[2]Bond for (int i(0); i<6; i++) { if (m_gestionnaireCollisions->tester(x, y) != VIDE || sboum) { if (!sboum) { x -= ajoutX; y -= ajoutY; } sboum = true; } else {//Si pas de mur rencontré m_gestionnaireCollisions->ajouter(x, y, ID); x += ajoutX; y += ajoutY; } } //[END] m_used = true; }///usePower void Boost::postMortemPower(int const &x, int const &y, int const &ID) { //[0] Bruitage m_mediaPlayer->play("Boost"); //[1] Etalage int portee(2); for (int i(-portee); i <= portee; i++) if ( i != 0 ) m_gestionnaireCollisions->ajouter(x, y+i, ID); for (int i(-portee); i <= portee; i++) if ( i != 0 ) m_gestionnaireCollisions->ajouter(x+i, y, ID); m_used = true; }///postMortemPower