2
0

drawsprite_template.c 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. #include "raylib.h"
  2. float tileWidth = 32;
  3. float tileHeight = 32;
  4. static Color db32color[32];// ' our colors
  5. static RenderTexture2D sprite;
  6. static void inidb32colors(void);
  7. static void inisprites(void);
  8. int main(void)
  9. {
  10. // Initialization
  11. //--------------------------------------------------------------------------------------
  12. const int screenWidth = 800;
  13. const int screenHeight = 450;
  14. InitWindow(screenWidth, screenHeight, "raylib example.");
  15. sprite=LoadRenderTexture(32,32);
  16. inidb32colors();
  17. inisprites();
  18. SetTargetFPS(60); // Set our game to run at 60 frames-per-second
  19. //--------------------------------------------------------------------------------------
  20. // Main game loop
  21. while (!WindowShouldClose()) // Detect window close button or ESC key
  22. {
  23. // Update
  24. //----------------------------------------------------------------------------------
  25. //----------------------------------------------------------------------------------
  26. // Draw
  27. //----------------------------------------------------------------------------------
  28. BeginDrawing();
  29. ClearBackground(RAYWHITE);
  30. DrawTexturePro(sprite.texture, (Rectangle){0,0,sprite.texture.width,sprite.texture.height},
  31. (Rectangle){320,240,
  32. tileWidth,tileHeight},
  33. (Vector2){0,0},0,WHITE);
  34. EndDrawing();
  35. //----------------------------------------------------------------------------------
  36. }
  37. // De-Initialization
  38. //--------------------------------------------------------------------------------------
  39. UnloadRenderTexture(sprite);
  40. CloseWindow(); // Close window and OpenGL context
  41. //--------------------------------------------------------------------------------------
  42. return 0;
  43. }
  44. void inisprites(){
  45. //
  46. // The sprite data goes here.
  47. int sprite_data[8][8] = {
  48. {0,21,21,0,21,21,0,21},
  49. {0,21,0,21,21,0,21,21},
  50. {21,0,0,0,0,21,0,21},
  51. {21,0,0,0,8,0,21,0},
  52. {21,0,0,0,8,0,21,0},
  53. {21,0,0,0,0,21,0,21},
  54. {0,21,0,21,21,0,21,21},
  55. {0,21,21,0,21,21,0,21}};
  56. BeginTextureMode(sprite);
  57. ClearBackground(BLANK); // Make the entire Sprite Transparent.
  58. EndTextureMode();
  59. //db32color[0] = (Color){0,0,0,0};
  60. // Draw something on it.
  61. for (int y=0;y<8;y++)
  62. {
  63. for (int x=0;x<8; x++)
  64. {
  65. BeginTextureMode(sprite);
  66. if(sprite_data[x][7-y]!=21)DrawRectangle(x*4,y*4,4,4,db32color[sprite_data[x][7-y]]);
  67. EndTextureMode();
  68. }
  69. }
  70. }
  71. void inidb32colors(){
  72. db32color[0 ] = (Color){0 ,0 ,0 ,255};
  73. db32color[1 ] = (Color){34 ,32 ,52 ,255};
  74. db32color[2 ] = (Color){69 ,40 ,60 ,255};
  75. db32color[3 ] = (Color){102 ,57 ,49 ,255};
  76. db32color[4 ] = (Color){143 ,86 ,59 ,255};
  77. db32color[5 ] = (Color){223 ,113 ,38 ,255};
  78. db32color[6 ] = (Color){217 ,160 ,102 ,255};
  79. db32color[7 ] = (Color){238 ,195 ,154 ,255};
  80. db32color[8 ] = (Color){251 ,242 ,54 ,255};
  81. db32color[9 ] = (Color){153 ,229 ,80 ,255};
  82. db32color[10] = (Color){106 ,190 ,48 ,255};
  83. db32color[11] = (Color){55 ,148 ,110 ,255};
  84. db32color[12] = (Color){75 ,105 ,47 ,255};
  85. db32color[13] = (Color){82 ,75 ,36 ,255};
  86. db32color[14] = (Color){50 ,60 ,57 ,255};
  87. db32color[15] = (Color){63 ,63 ,116 ,255};
  88. db32color[16] = (Color){48 ,96 ,130 ,255};
  89. db32color[17] = (Color){91 ,110 ,225 ,255};
  90. db32color[18] = (Color){99 ,155 ,225 ,255};
  91. db32color[19] = (Color){95 ,205 ,228 ,255};
  92. db32color[20] = (Color){203 ,219 ,252 ,255};
  93. db32color[21] = (Color){255 ,255 ,255 ,255};
  94. db32color[22] = (Color){155 ,173 ,183 ,255};
  95. db32color[23] = (Color){132 ,126 ,135 ,255};
  96. db32color[24] = (Color){105 ,106 ,106 ,255};
  97. db32color[25] = (Color){89 ,86 ,82 ,255};
  98. db32color[26] = (Color){118 ,66 ,138 ,255};
  99. db32color[27] = (Color){172 ,50 ,50 ,255};
  100. db32color[28] = (Color){217 ,87 ,99 ,255};
  101. db32color[29] = (Color){215 ,123 ,186 ,255};
  102. db32color[30] = (Color){143 ,151 ,74 ,255};
  103. db32color[31] = (Color){138 ,111 ,48 ,255};
  104. }