using namespace std;

#include <stdio.h>
#include <allegro5/allegro.h>
#include <allegro5/allegro_image.h>
 
const float FPS = 60;
const int SCREEN_W = 640;
const int SCREEN_H = 480;
const int BOUNCER_SIZE = 32;

int main(int argc, char **argv)
{
   ALLEGRO_DISPLAY *display = NULL;
   ALLEGRO_EVENT_QUEUE *event_queue = NULL;
   ALLEGRO_TIMER *timer = NULL;

   ALLEGRO_BITMAP *bmp = NULL;

   ALLEGRO_COLOR transparentPixal = al_map_rgb(0, 255, 114);
	
   float x = 500, y = 500;
 
   if(!al_init()) {
      fprintf(stderr, "failed to initialize allegro!\n");
      return -1;
   }
 
   if(!al_install_keyboard()) {
      fprintf(stderr, "failed to initialize the keyboard!\n");
      return -1;
   }
 
   display = al_create_display(SCREEN_W, SCREEN_H);
   if(!display) {
      fprintf(stderr, "failed to create display!\n");
      return -1;
   }
 

    al_init_image_addon();

	bmp = al_load_bitmap("ball.tga"); //Load image file

   if(!bmp) {
      fprintf(stderr, "failed to create sprite!\n");
      al_destroy_display(display);
      return -1;
   }
 
   al_clear_to_color(al_map_rgb(255, 0, 255));
 
   al_set_target_bitmap(al_get_backbuffer(display));
 
   al_clear_to_color(al_map_rgb(0,0,0));
 //al_convert_mask_to_alpha(bmp, al_map_rgb(0, 255, 114));
   al_convert_mask_to_alpha(bmp, transparentPixal);
 
   al_flip_display();
    
    while(true)
	{
 
         al_clear_to_color(al_map_rgb(255,255,255));
		//FOCUS
         al_draw_bitmap(bmp, ++x, ++y, 0);
		if(x >= 300 && y >= 200){
			x = y = 0;}
		//al_convert_mask_to_alpha(bmp, al_map_rgb(0,0,0));
		 
         al_flip_display();
    }
   
 
   //al_destroy_bitmap(bouncer);
   al_destroy_timer(timer);
   al_destroy_display(display);
   al_destroy_event_queue(event_queue);
 
}
