Advertisement
Guest User

Untitled

a guest
Dec 6th, 2016
241
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 5.98 KB | None | 0 0
  1. #include <SDL.h>
  2. #include <SDL_image.h>
  3.  
  4. int main(int argc, char *argv[]) {
  5.  
  6.     if(SDL_Init(SDL_INIT_VIDEO) < 0) {
  7.         SDL_Log("SDL could not initialize SDL2: %s\n", SDL_GetError());
  8.         return(1);
  9.     }
  10.     if(!(IMG_Init(IMG_INIT_PNG)&IMG_INIT_PNG)) {
  11.         SDL_Log("SDL_image could not initialize! SDL_image Error: %s\n", IMG_GetError());
  12.         return(1);
  13.     }
  14.    
  15.     SDL_Event e;
  16.     SDL_Window* window = NULL;
  17.     SDL_Renderer* renderer = NULL;
  18.     SDL_Surface* icon = IMG_Load("img/icon.png");
  19.     SDL_Surface* background = IMG_Load("img/bg.png");
  20.     SDL_Texture* texture = NULL;
  21.     SDL_Texture* bg_texture = NULL;
  22.     int quit = 1;
  23.     FILE* hand = NULL;
  24.    
  25.     window = SDL_CreateWindow(
  26.             "RCG High Hand",
  27.             SDL_WINDOWPOS_UNDEFINED,
  28.             0,
  29.             900,
  30.             400,
  31.             SDL_WINDOW_FULLSCREEN_DESKTOP|SDL_WINDOW_ALLOW_HIGHDPI
  32.         );
  33.     if(window == NULL) {
  34.         SDL_Log("Failed to create window: %s\n", SDL_GetError());
  35.         return(1);
  36.     }
  37.     SDL_SetWindowIcon(window, icon);
  38.    
  39.     renderer = SDL_CreateRenderer(
  40.             window,
  41.             -1,
  42.             SDL_RENDERER_ACCELERATED|SDL_RENDERER_PRESENTVSYNC
  43.         );
  44.     if(renderer == NULL) {
  45.         SDL_Log("Failed to create renderer: %s\n", SDL_GetError());
  46.         return(1);
  47.     }
  48.     SDL_SetHint(SDL_HINT_RENDER_SCALE_QUALITY, "liner");
  49.     SDL_RenderSetLogicalSize(renderer, 900, 400);
  50.     SDL_DisableScreenSaver();
  51.    
  52.     SDL_SetRenderDrawColor(renderer, 0x00, 0x00, 0x00, 0x00);
  53.    
  54.     SDL_Rect card1 = {65, 10, 150, 218};
  55.     SDL_Rect card2 = {220, 10, 150, 218};
  56.     SDL_Rect card3 = {375, 10, 150, 218};
  57.     SDL_Rect card4 = {530, 10, 150, 218};
  58.     SDL_Rect card5 = {685, 10, 150, 218};
  59.     SDL_Rect message = {65, 248, 770, 142};
  60.    
  61.     char c1[] = "img/cards/rj.png", c2[] = "img/cards/rj.png", c3[] = "img/cards/rj.png", c4[] = "img/cards/rj.png", c5[] = "img/cards/rj.png";
  62.  
  63.     SDL_Surface* card = NULL;
  64.     SDL_Texture* ct1 = NULL, *ct2 = NULL, *ct3 = NULL, *ct4 = NULL, *ct5 = NULL;
  65.     SDL_FreeSurface(card);
  66.     SDL_DestroyTexture(ct1);
  67.     card = IMG_Load(c1);
  68.     ct1 = SDL_CreateTextureFromSurface(renderer, card);
  69.     if(ct1 == NULL) {
  70.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  71.         return(1);
  72.     }
  73.     SDL_FreeSurface(card);
  74.     SDL_DestroyTexture(ct2);
  75.     card = IMG_Load(c2);
  76.     ct2 = SDL_CreateTextureFromSurface(renderer, card);
  77.     if(ct2 == NULL) {
  78.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  79.         return(1);
  80.     }
  81.     SDL_FreeSurface(card);
  82.     SDL_DestroyTexture(ct3);
  83.     card = IMG_Load(c3);
  84.     ct3 = SDL_CreateTextureFromSurface(renderer, card);
  85.     if(ct3 == NULL) {
  86.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  87.         return(1);
  88.     }
  89.     SDL_FreeSurface(card);
  90.     SDL_DestroyTexture(ct4);
  91.     card = IMG_Load(c4);
  92.     ct4 = SDL_CreateTextureFromSurface(renderer, card);
  93.     if(ct4 == NULL) {
  94.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  95.         return(1);
  96.     }
  97.     SDL_FreeSurface(card);
  98.     SDL_DestroyTexture(ct5);
  99.     card = IMG_Load(c5);
  100.     ct5 = SDL_CreateTextureFromSurface(renderer, card);
  101.     if(ct5 == NULL) {
  102.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  103.         return(1);
  104.     }
  105.    
  106.     SDL_Surface* message_surf = IMG_Load("img/mes.png");
  107.     SDL_Texture* mes = NULL;
  108.     mes = SDL_CreateTextureFromSurface(renderer, message_surf);
  109.     if(mes == NULL) {
  110.         SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  111.         return(1);
  112.     }
  113.    
  114.    
  115.     while(quit) {
  116.         while(SDL_PollEvent(&e)) {
  117.             if(e.type == SDL_QUIT) {
  118.                 quit = 0;
  119.             }
  120.             if(e.type == SDL_KEYDOWN) {
  121.                 hand = fopen("hand.txt", "r");
  122.                 fscanf(hand, "%c%c\n%c%c\n%c%c\n%c%c\n%c%c\n", &c1[10], &c1[11], &c2[10], &c2[11], &c3[10], &c3[11], &c4[10], &c4[11], &c5[10], &c5[11]);
  123.                 if(fclose(hand) != 0) {
  124.                     SDL_Log("File Close Error!\n");
  125.                     return(1);
  126.                 }
  127.                 SDL_FreeSurface(card);
  128.                 SDL_DestroyTexture(ct1);
  129.                 card = IMG_Load(c1);
  130.                 ct1 = SDL_CreateTextureFromSurface(renderer, card);
  131.                 if(ct1 == NULL) {
  132.                     SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  133.                     return(1);
  134.                 }
  135.                 SDL_FreeSurface(card);
  136.                 SDL_DestroyTexture(ct2);
  137.                 card = IMG_Load(c2);
  138.                 ct2 = SDL_CreateTextureFromSurface(renderer, card);
  139.                 if(ct2 == NULL) {
  140.                     SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  141.                     return(1);
  142.                 }
  143.                 SDL_FreeSurface(card);
  144.                 SDL_DestroyTexture(ct3);
  145.                 card = IMG_Load(c3);
  146.                 ct3 = SDL_CreateTextureFromSurface(renderer, card);
  147.                 if(ct3 == NULL) {
  148.                     SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  149.                     return(1);
  150.                 }
  151.                 SDL_FreeSurface(card);
  152.                 SDL_DestroyTexture(ct4);
  153.                 card = IMG_Load(c4);
  154.                 ct4 = SDL_CreateTextureFromSurface(renderer, card);
  155.                 if(ct4 == NULL) {
  156.                     SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  157.                     return(1);
  158.                 }
  159.                 SDL_FreeSurface(card);
  160.                 SDL_DestroyTexture(ct5);
  161.                 card = IMG_Load(c5);
  162.                 ct5 = SDL_CreateTextureFromSurface(renderer, card);
  163.                 if(ct5 == NULL) {
  164.                     SDL_Log( "Unable to create texture: %s\n", SDL_GetError());
  165.                     return(1);
  166.                 }
  167.             }
  168.         }
  169.        
  170.         SDL_RenderClear(renderer);
  171.        
  172.         SDL_RenderCopy(renderer, bg_texture, NULL, NULL);
  173.        
  174.         SDL_RenderSetViewport(renderer, &card1);
  175.         SDL_RenderCopy(renderer, ct1, NULL, NULL);
  176.        
  177.         SDL_RenderSetViewport(renderer, &card2);
  178.         SDL_RenderCopy(renderer, ct2, NULL, NULL);
  179.        
  180.         SDL_RenderSetViewport(renderer, &card3);
  181.         SDL_RenderCopy(renderer, ct3, NULL, NULL);
  182.        
  183.         SDL_RenderSetViewport(renderer, &card4);
  184.         SDL_RenderCopy(renderer, ct4, NULL, NULL);
  185.        
  186.         SDL_RenderSetViewport(renderer, &card5);
  187.         SDL_RenderCopy(renderer, ct5, NULL, NULL);
  188.        
  189.         SDL_RenderSetViewport(renderer, &message);
  190.         SDL_RenderCopy(renderer, mes, NULL, NULL);
  191.        
  192.         SDL_RenderPresent(renderer);
  193.        
  194.         SDL_Delay(100);
  195.     }
  196.     SDL_FreeSurface(message_surf);
  197.     SDL_FreeSurface(card);
  198.     SDL_DestroyTexture(ct1);
  199.     SDL_DestroyTexture(ct2);
  200.     SDL_DestroyTexture(ct3);
  201.     SDL_DestroyTexture(ct4);
  202.     SDL_DestroyTexture(ct5);
  203.     SDL_DestroyTexture(mes);
  204.     SDL_DestroyTexture(texture);
  205.     SDL_DestroyTexture(bg_texture);
  206.     SDL_FreeSurface(background);
  207.     SDL_FreeSurface(icon);
  208.    
  209.    
  210.     SDL_DestroyRenderer(renderer);
  211.     SDL_DestroyWindow(window);
  212.    
  213.     IMG_Quit();
  214.     SDL_Quit();
  215.  
  216.     return(0);
  217. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement