diff options
| author | orangerot <orangerot@orangerot.dev> | 2025-10-14 16:32:45 +0200 |
|---|---|---|
| committer | orangerot <orangerot@orangerot.dev> | 2025-10-14 16:32:45 +0200 |
| commit | 9efddf8a1a0f4a2e5b17563718346be84486653d (patch) | |
| tree | b2723c1cf6927526438fbff4a23b1529b0cf40b5 /src_build | |
| parent | d5a89c35f1e2e481a01b151616d5ad9e33da20de (diff) | |
feat: draw function
Diffstat (limited to 'src_build')
| -rw-r--r-- | src_build/domino_assets.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src_build/domino_assets.c b/src_build/domino_assets.c index e9d9160..7b6b6c6 100644 --- a/src_build/domino_assets.c +++ b/src_build/domino_assets.c @@ -13,15 +13,22 @@ #define START_Y 2 void print_domino(unsigned char *data, int width, int n, int posx, int posy) { - printf(" {"); + printf(" {.width = %d, .height = %d, .bufsize = %d, .color = (struct color[%d]) {", + DOMINO_WIDTH, + DOMINO_HEIGHT, + DOMINO_WIDTH * DOMINO_HEIGHT, + DOMINO_WIDTH * DOMINO_HEIGHT + ); for (int y = 0; y < DOMINO_HEIGHT; y++) { for (int x = 0; x < DOMINO_WIDTH; x++) { + printf("{"); for (int i = 0; i < n; i++) { printf("%3d, ", data[(y + posy) * width * n + (x + posx) * n + i]); } + printf("},"); } } - printf("},\n"); + printf("}},\n"); } int main(int argc, char **argv) { @@ -31,6 +38,8 @@ int main(int argc, char **argv) { unsigned char *data = stbi_load(argv[1], &x, &y, &n, 0); // n = n < 3 ? n : 3; + + printf("#include \"../game.h\"\n"); printf("#define NUM_DOMINO_X %d\n", NUM_DOMINO_X ); printf("#define NUM_DOMINO_Y %d\n", NUM_DOMINO_Y ); printf("#define DOMINO_WIDTH %d\n", DOMINO_WIDTH ); @@ -38,10 +47,9 @@ int main(int argc, char **argv) { printf("#define EYE_SIZE %d\n", EYE_SIZE); printf("#define BYTES_PER_PIXEL %d\n", n); - printf("unsigned char domino[%d][%d][%d] = {\n", + printf("struct image domino[%d][%d] = {\n", NUM_DOMINO_X, - NUM_DOMINO_Y, - DOMINO_WIDTH * DOMINO_HEIGHT * n + NUM_DOMINO_Y ); for (int domino_x = 0; domino_x < NUM_DOMINO_X; domino_x++) { |
