SHOW:
|
|
- or go back to the newest paste.
1 | #include <stdio.h> | |
2 | #include <stdlib.h> | |
3 | #include <allegro5/allegro.h> | |
4 | #include <allegro5/allegro_image.h> | |
5 | ||
6 | ALLEGRO_DISPLAY *display = NULL; | |
7 | const int SCREEN_W = 640, | |
8 | SCREEN_H = 480; | |
9 | ||
10 | void quit(bool condition, const char* quitMessage) { | |
11 | if (condition) { | |
12 | fprintf(stderr, quitMessage); | |
13 | al_destroy_display(display); | |
14 | exit(-1); | |
15 | } | |
16 | } | |
17 | ||
18 | int main(int argc, char **argv) { | |
19 | ||
20 | ALLEGRO_EVENT_QUEUE *event_queue = NULL; | |
21 | - | ALLEGRO_BITMAP *bg = NULL; |
21 | + | |
22 | ALLEGRO_BITMAP *tilebmp = NULL; | |
23 | ||
24 | quit(!al_init(), | |
25 | "failed to initialize allegro!\n"); | |
26 | quit(!(display = al_create_display(SCREEN_W, SCREEN_H)), | |
27 | "failed to create display!\n"); | |
28 | quit(!(event_queue = al_create_event_queue()), | |
29 | "failed to create event_queue!\n"); | |
30 | quit(!al_init_image_addon(), | |
31 | "failed to initialize image addon!\n"); | |
32 | quit(!(tile = al_load_bitmap("resources\\tile.png")), | |
33 | - | quit(!(bg = al_load_bitmap("resources\\bg.png")), |
33 | + | |
34 | quit(!(tilebmp = al_load_bitmap("resources\\tile.bmp")), | |
35 | "failed to load image!\n"); | |
36 | ||
37 | al_register_event_source(event_queue, al_get_display_event_source(display)); | |
38 | ||
39 | al_clear_to_color(al_map_rgb(255,255,255)); | |
40 | al_flip_display(); | |
41 | ||
42 | - | al_clear_to_color(al_map_rgb(0,0,0)); |
42 | + | |
43 | ALLEGRO_EVENT ev; | |
44 | ALLEGRO_TIMEOUT timeout; | |
45 | al_init_timeout(&timeout, 0.06); | |
46 | ||
47 | bool get_event = al_wait_for_event_until(event_queue, &ev, &timeout); | |
48 | ||
49 | if (get_event && ev.type == ALLEGRO_EVENT_DISPLAY_CLOSE) { | |
50 | break; | |
51 | } | |
52 | ||
53 | al_clear_to_color(al_map_rgb(255,255,255)); | |
54 | al_draw_bitmap(tile,32,32,0); | |
55 | al_draw_bitmap(tilebmp,128,32,0); | |
56 | al_flip_display(); | |
57 | } | |
58 | ||
59 | al_destroy_display(display); | |
60 | al_destroy_event_queue(event_queue); | |
61 | ||
62 | return 0; | |
63 | } |