
/* Clase fBackground de Terreno destruible del Proyecto FreeBound v 0.01
   2006 por BrunoProg64 - Parte del Proyecto FreeBound.

   Este programa es software libre y puede redistribuirlo, copiarlo y modificarlo
   bajo los términos de la licencia pública GNU General Public License versión 2
   o superior de su elección publicada por la Free Software Foundation 

   Puede leer la licencia en: http://www.gnu.org/licenses/gnu.txt
   
*/

#include "fbackground.h"

//#ifndef _FGB_BCK


int fbackground::loadbackground(char* filename)
{
    background=load_bitmap(filename,NULL);
    if (!background) {
                      return -1; //error
                      }
    else
    {
        return 0; //éxito
    }
}

int fbackground::loadmaskedbackground(char* filename)
{
    maskedbackground=load_bitmap(filename,NULL);
    if (!maskedbackground) {
                      return -1; //error
                      }
    else
    {
        return 0; //éxito
    }
}

void fbackground::explodeterrain(int x, int y, int radius)
{
     int pan = 128; //necesario para la función de audio
     int pitch = 1000; //necesario para la función de audio
     acquire_bitmap(maskedbackground);
     circlefill(maskedbackground,x,y,radius,makecol(255,0,255));
     release_bitmap(maskedbackground);
     //Suena un .wav (requiere que la opción de sonido esté activa)
     explode = load_sample("explode.wav");
     play_sample(explode, 255, 128, 1000, 0);
}

void fbackground::dumptoscreen(void)
{
     acquire_screen();
     blit(background,screen,0,0,0,0,background->w,background->h);
     masked_blit(maskedbackground,screen,0,0,0,0,maskedbackground->w,maskedbackground->h);
     //blit(fnd,screen,0,0,0,0,fnd->w,fnd->h);
     //masked_blit(back1,screen,0,0,0,0,back1->w,back1->h);
     release_screen();
}

fbackground::~fbackground()
{
      //liberamos memoria de los 2 bitmaps
      destroy_bitmap(background);
      destroy_bitmap(maskedbackground);
}

fbackground::fbackground()
{
fbackg=&background;
fmaskedbackg=&maskedbackground;
}

//#endif //_FGB_BCK
