Guest User

Untitled

a guest
Jan 21st, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1. #include <SDL/SDL.h>
  2.  
  3. int main(int argc, char *argv[])
  4. {
  5. SDL_Surface *Ekran, *Obrazek[3];
  6. SDL_Rect Prostokat;
  7. SDL_Event Komunikat;
  8. char *Nazwa_obrazka[3]={"1.bmp","2.bmp","3.bmp"};
  9. int Koniec=0, i, x;
  10.  
  11. if(SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_AUDIO))
  12. {
  13. printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
  14. }
  15. else
  16. {
  17. if(!(Ekran=SDL_SetVideoMode(640,480,24,SDL_ANYFORMAT)))
  18. {
  19. printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
  20. }
  21. else
  22. {
  23. SDL_WM_SetCaption("Program 20","Program 20");
  24.  
  25.  
  26.  
  27. for(i=0;i<3;i++)
  28. {
  29. if(!(Obrazek[i]=SDL_LoadBMP(Nazwa_obrazka[i])))
  30. {
  31. break;
  32. }
  33. }
  34.  
  35. if(i<3)
  36. {
  37. printf("Co¶ poszło nie tak: %s\n",SDL_GetError());
  38. }
  39. else
  40. {
  41. for(i=0;i<3;i++)
  42. {
  43. if((Obrazek[i]->format->palette)&&(Ekran->format->palette))
  44. {
  45. SDL_SetColors(Ekran,Obrazek[i]->format->palette->colors,0,Obrazek[i]->format->palette->ncolors);
  46. }
  47. }
  48.  
  49.  
  50.  
  51. Prostokat.x=0;
  52. Prostokat.w=640;
  53. Prostokat.h=1;
  54. x=-1;
  55.  
  56. while(!Koniec)
  57. {
  58.  
  59. x++;
  60. if(x>2)
  61. {
  62. x=0;
  63. }
  64.  
  65. for(i=0;i<480;i=i+2)
  66. {
  67. if((SDL_PollEvent(&Komunikat))&&(Komunikat.type)==(SDL_QUIT))
  68. {
  69. Koniec=1;
  70. break;
  71. }
  72. Prostokat.y=i;
  73. SDL_BlitSurface(Obrazek[x],&Prostokat,Ekran,&Prostokat);
  74. SDL_UpdateRect(Ekran,0,i,640,1);
  75. Prostokat.y=479-i;
  76. SDL_BlitSurface(Obrazek[x],&Prostokat,Ekran,&Prostokat);
  77. SDL_UpdateRect(Ekran,0,479-i,640,1);
  78. SDL_Delay(10);
  79. }
  80.  
  81. }
  82.  
  83.  
  84.  
  85. }
  86.  
  87. for(i=0;i<3;i++)
  88. {
  89. if(Obrazek[i])
  90. {
  91. SDL_FreeSurface(Obrazek[i]);
  92. }
  93. }
  94.  
  95.  
  96.  
  97.  
  98. SDL_FreeSurface(Ekran);
  99. }
  100. SDL_Quit();
  101. }
  102. return(0);
  103. }
Add Comment
Please, Sign In to add comment