/* [CONSTRUCTOR] Construction d'un xMarioBloc =========================================================*/ xMarioBloc::xMarioBloc(xManager *m, SDL_Rect rect){ _manager = m; // Note: le rect correspond a un nombre de bloc // On convertit le tout en blocs reels int xMin = rect.x; int xMax = rect.w + rect.x - 1; int yMin = rect.y; int yMax = rect.h + rect.y - 1; /* (1) On charge la texture */ _spritesheet = IMG_LoadTexture(_manager->renderer(), "src/blocs.png"); // Evite de la dupliquer, uniquement des pointeurs int index = 0; /* (2) On cree les plans (layers) */ for( int y = yMin ; y <= yMax ; y++ ){ for( int x = xMin ; x <= xMax ; x++ ){ // On cree une copie du spritesheet this->add( new xSprite(_manager, _spritesheet) ); // On definit le tyoe _sprites[index]->setType("bloc"); this->get(index)->dimensions( (SDL_Rect){BLOC_SIZE*x, BLOC_SIZE*y, BLOC_SIZE, BLOC_SIZE}, (SDL_Rect){0, 153, 16, 16} ); index++; } } }