E.x.e.r Temat założony przez niniejszego użytkownika |
[Allegro] Fachowa ocena + zamykanie » 2008-06-16 20:08:34 #include <allegro.h> int main() { allegro_init(); install_keyboard(); set_color_depth( 32 ); set_gfx_mode( GFX_AUTODETECT, 800, 600, 0, 0 ); clear_to_color( screen, makecol( 128, 128, 128 ) ); BITMAP * background_menu = NULL; BITMAP * element1_menu = NULL; BITMAP * element2_menu = NULL; BITMAP * close_menu = NULL; background_menu = load_tga( "Data/Graphics/background_menu.tga", default_palette ); if( !background_menu ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_exit(); return 0; } blit( background_menu, screen, 0, 0, 0, 0, background_menu->w, background_menu->h ); destroy_bitmap( background_menu ); element1_menu = load_tga( "Data/Graphics/element1_menu.tga", default_palette ); if( !element1_menu ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_exit(); return 0; } masked_blit( element1_menu, screen, 0, 0, 0, 0, element1_menu->w, element1_menu->h ); destroy_bitmap( element1_menu ); element2_menu = load_tga( "Data/Graphics/element2_menu.tga", default_palette ); if( !element2_menu ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_exit(); return 0; } masked_blit( element2_menu, screen, 0, 0, 0, 0, element2_menu->w, element2_menu->h ); destroy_bitmap( element2_menu ); close_menu = load_tga( "Data/Graphics/close_menu.tga", default_palette ); if( !close_menu ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_exit(); return 0; } masked_blit( close_menu, screen, 0, 0, 776, 3, close_menu->w, close_menu->h ); readkey(); destroy_bitmap( close_menu ); allegro_exit(); return 0; } END_OF_MAIN(); Standardowo :D Kodzik oraz pytania: - Czy wszystkie części kodu są poprawnie zapisane? (Program działa, ale pytam na zaś) - Jak zrobić coś takiego, że gdy użytkownik kliknie w polu bitmapy close_menu.tga ,program zamykał się... Bo teraz zamyka się po naciśnięciu klawisza. Wiem ,że jest tam komenda "czekać na dowolny klawisz", nie wiem jak ją zastąpić :) |