Scot Temat założony przez niniejszego użytkownika |
[Allegro, C++] Problem z Grabberem, błąd w kodzie » 2010-06-30 14:12:19 A wiec mam kolejny dylemat z którym się już troszkę mecze , wydaje mi się ze jestem coraz bliższy sukcesu jednak cały czas jest coś nie tak . Problem pojawia sie nie w samym utworzeniu .dat lecz w zmianie kodu . Oto błąd : base operand of `->' is not a pointer A o to sam kod , w nieco skróconej wersji : #include <allegro.h> #include "data.h"
int main() { allegro_init(); install_keyboard(); set_color_depth( 16 ); set_gfx_mode( GFX_AUTODETECT_WINDOWED, 1200, 950, 0, 0 ); clear_to_color( screen, makecol( 128, 128, 128 ) ); DATAFILE * data; data = load_datafile( "data.dat" ); if( !data ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_message( "Nie moze znalesc pliku data.dat!\n" ); allegro_exit(); } BITMAP * mapax = NULL; mapax =( BITMAP * ) data[ mapa ].dat; BITMAP * bufor = NULL; bufor = create_bitmap( 1200, 950 ); if( !bufor ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_message( "Nie mogę utworzyć bufora !" ); allegro_exit(); return 0; } BITMAP * postac = NULL; postac = load_bmp( "postac.bmp", default_palette ); if( !postac ) { set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 ); allegro_message( "nie mogę załadować postac.bmp !" ); allegro_exit(); return 0; } int postac_x = 5, postac_y = 455; int mapa_x = 0, mapa_y = 0; while( !key[ KEY_ESC ] ) { clear_to_color( bufor, makecol( 150, 150, 150 ) ); masked_blit( mapax, bufor, 0, 0, 0, 0, mapa->w, mapa->h ); masked_blit( postac, bufor, 0, 0, postac_x, postac_y, postac->w, postac->h ); blit( bufor, screen, 0, 0, 0, 0, bufor->w, bufor->h ); }
Prosiłbym o poprawienie kodu tak by bez problemu plik map.bmp był bez problemu odczytywany z .dat i wyjaśnienie tego , co zrobiłem źle . |
Scot Temat założony przez niniejszego użytkownika |
» 2010-06-30 15:28:53 Heh , tyle siedzialem i patrzylem na kod i nie widzialem bledu , bylem pewny ze powodem jest brak umiejetnosci uzywania grabbera w kodzie a tu prosze , powodem jest slepota . Dziekuje bardzo , wlasnie to byl moj problem . |