From a534d61f0cf91d46192785a427e02f31f5efa195 Mon Sep 17 00:00:00 2001 From: Raimon Zamora Date: Fri, 26 Jul 2024 09:36:57 +0200 Subject: [PATCH] =?UTF-8?q?-=20First=20commit=20(tampoc=20crec=20que=20hi?= =?UTF-8?q?=20hagen=20molts=20m=C3=A9s=20XD)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 +++ Makefile | 9 +++++++++ abad.bmp | Bin 0 -> 342 bytes abad.cpp | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++ reset.txt | 1 + 5 files changed, 69 insertions(+) create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 abad.bmp create mode 100644 abad.cpp create mode 100644 reset.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6676069 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +abad +abad.exe +.vscode/* diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..8f8b61a --- /dev/null +++ b/Makefile @@ -0,0 +1,9 @@ +windows: + @echo off + g++ abad.cpp -lmingw32 -lSDL2main -lSDL2 -mwindows -o abad.exe + +macos: + clang++ abad.cpp -std=c++11 -lSDL2 -o abad + +linux: + g++ abad.cpp -lSDL2 -o abad diff --git a/abad.bmp b/abad.bmp new file mode 100644 index 0000000000000000000000000000000000000000..716bc84daa6a92d3e2c7d9fe340b3e81e2ec9864 GIT binary patch literal 342 zcmZvPu}Z^G6o&tMliC|Ca#95ai=;*&qf`(@k(=t^Qq15i9RzVJ&b8c00`&z1r&jP8 z+%h;gIQjr7_yQdqghD*m+Rgv)egA)&tsQ~i9I+$jkO>*VXY<8W7p6$w7Mr3drsF?% zFo*RUh#VfR^-)_ylsAxtcetj_q!R#19^Hc^5+VmwMWBc>+v%!re|@Ta1hbZZ|G;*L z{SW9wb + +int main(int argc, char *argv[]) +{ + SDL_Init(SDL_INIT_EVERYTHING); + SDL_Window *win = SDL_CreateWindow("ABAD", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 1920, 1080, SDL_WINDOW_FULLSCREEN_DESKTOP); + SDL_Renderer *ren = SDL_CreateRenderer(win, -1, 0); + SDL_RenderSetLogicalSize(ren, 64, 36); + SDL_ShowCursor(SDL_DISABLE); + + SDL_Texture *tex = SDL_CreateTextureFromSurface(ren, SDL_LoadBMP("abad.bmp")); + + SDL_Rect src = {0,0,20,35}; + SDL_Rect dst = {0,2,20,35}; + + int frames[4] = {0, 1, 0, 2}; + int current_frame = 0; + int x = -5; + Uint32 time = SDL_GetTicks(); + int reset = 0; + Uint32 elapsed = SDL_GetTicks(); + + FILE *f = fopen("reset.txt", "r"); + fscanf(f, "%i", &reset); + fclose(f); + + SDL_Event e; + bool should_exit = false; + while (!should_exit) + { + while (SDL_PollEvent(&e)) + { + if (e.type==SDL_QUIT || (e.type==SDL_KEYDOWN && e.key.keysym.scancode==SDL_SCANCODE_ESCAPE)) { should_exit=true; break; } + } + + if (SDL_GetTicks()-time>=125) + { + src.x = frames[current_frame]*20; current_frame=(current_frame+1)%4; + dst.x = x * 4; x++; + SDL_SetRenderDrawColor(ren, 0, 0, 0, 255); + SDL_RenderClear(ren); + SDL_RenderCopy(ren, tex, &src, &dst); + SDL_RenderPresent(ren); + time = SDL_GetTicks(); + } + + if (SDL_GetTicks()-elapsed >= reset*1000) + { + x = -5; + elapsed = SDL_GetTicks(); + } + } + + SDL_Quit(); + return 0; +} \ No newline at end of file diff --git a/reset.txt b/reset.txt new file mode 100644 index 0000000..f599e28 --- /dev/null +++ b/reset.txt @@ -0,0 +1 @@ +10