update Allegro example

This commit is contained in:
Juraj Michalek
2019-05-06 09:40:58 +02:00
parent c43c3792c0
commit 932107dee7

View File

@@ -12,50 +12,55 @@
int main() int main()
{ {
ALLEGRO_EVENT_QUEUE *event_queue; ALLEGRO_EVENT_QUEUE *event_queue;
ALLEGRO_DISPLAY *display; ALLEGRO_DISPLAY *display;
ALLEGRO_EVENT event; ALLEGRO_EVENT event;
ALLEGRO_BITMAP *image; ALLEGRO_BITMAP *image;
al_init(); if(!al_init()) {
al_install_keyboard(); fprintf(stderr, "failed to initialize allegro!\n");
al_init_image_addon(); return -1;
}
display = al_create_display(640, 480); display = al_create_display(640, 480);
if (!display) if (!display)
{ {
return 2; fprintf(stderr, "failed to create display!\n");
} return 2;
}
// Create Event queue al_install_keyboard();
al_init_image_addon();
// Create Event queue
event_queue = al_create_event_queue(); event_queue = al_create_event_queue();
// Register Keyboard to queue // Register Keyboard to queue
al_register_event_source(event_queue, al_get_keyboard_event_source()); al_register_event_source(event_queue, al_get_keyboard_event_source());
al_register_event_source(event_queue, al_get_display_event_source(display)); al_register_event_source(event_queue, al_get_display_event_source(display));
// Clear screen // Clear screen
al_clear_to_color(al_map_rgb_f(1.0, 1.0, 1.0)); al_clear_to_color(al_map_rgb_f(1.0, 1.0, 1.0));
// Load and display image // Load and display image
image = al_load_bitmap("smajlik.png"); image = al_load_bitmap("smajlik.png");
if (image != NULL) if (image != NULL)
{ {
al_draw_bitmap(image, 10, 10, 0); al_draw_bitmap(image, 10, 10, 0);
} else { } else {
printf("No bitmap.\n"); printf("No bitmap.\n");
return 1; return 1;
} }
al_flip_display(); al_flip_display();
// Wait until some key is pressed // Wait until some key is pressed
al_wait_for_event(event_queue, &event); al_wait_for_event(event_queue, &event);
// Release // Release
al_destroy_bitmap(image); al_destroy_bitmap(image);
al_uninstall_keyboard(); al_uninstall_keyboard();
al_uninstall_system(); al_uninstall_system();
return 0; return 0;
} }