From 50de779cba8861c7afb350858c6e349b8ead8ae8 Mon Sep 17 00:00:00 2001 From: Janos <janol55@zedat.fu-berlin.de> Date: Mon, 8 Apr 2024 16:43:46 +0200 Subject: [PATCH] =?UTF-8?q?V=C3=B6gel=20fliegen=20jetzt=20=C3=BCber=20dem?= =?UTF-8?q?=20Spieler,=20Spieler=20und=20Men=C3=BC=20angepasst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- bird.c | 4 ++-- gameLoop.c | 3 --- images/player.png | Bin 0 -> 27203 bytes init.c | 2 +- map.c | 11 ++++++++++- menu2.c | 10 ---------- rows.c | 7 +++++++ title_screen.c | 18 +++++++++--------- 8 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 images/player.png diff --git a/bird.c b/bird.c index f0a8cd5..860a089 100644 --- a/bird.c +++ b/bird.c @@ -7,9 +7,9 @@ struct bird* init_bird(int x_pos,int y_pos){ perror("kein Speicheeplatz"); } - b->speed = -3;//(((rand() % 2)*2) -1)*3 + b->speed = -3; b->x_pos = x_pos; - b->y_pos = y_pos;//(rand() % 10) * ROW_SIZE + b->y_pos = y_pos; b->height = 80; b->width = 80 ; diff --git a/gameLoop.c b/gameLoop.c index 5cb97f2..f93e828 100644 --- a/gameLoop.c +++ b/gameLoop.c @@ -87,9 +87,6 @@ bool gameLoop(enum vehicle theme,SDL_Renderer* renderer) { } - //Position des Spielers wird aktualisiert und gezeichnet - update_character(speed, renderer); - //Der aktuelle Score wird oben rechts angezeigt paste_score (renderer); diff --git a/images/player.png b/images/player.png new file mode 100644 index 0000000000000000000000000000000000000000..f10028a8b43bf999c26487085d98725484e512b9 GIT binary patch literal 27203 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 Qfq{X+)78&qol`;+0QJVF)Bpeg literal 0 HcmV?d00001 diff --git a/init.c b/init.c index 11f1d59..464850e 100644 --- a/init.c +++ b/init.c @@ -109,7 +109,7 @@ int init_images(SDL_Renderer* renderer) { img_trainL = IMG_LoadTexture(renderer,"images/trainL.png"); // Quelle: https://www.pinterest.de/pin/645492559082244309/ img_trainR = IMG_LoadTexture(renderer,"images/trainR.png"); // Quelle: https://www.pinterest.de/pin/645492559082244309/ img_plank = IMG_LoadTexture(renderer,"images/plank.png"); // Quelle: https://www.craiyon.com/image/_XEsXKthRYqpK8Vn6ZixAg - img_duck = IMG_LoadTexture(renderer,"images/duck.png"); + img_duck = IMG_LoadTexture(renderer,"images/player.png"); // Quelle: https://www.sandromaglione.com/articles/pixel-art-top-down-game-sprite-design-and-animation img_3D_Duck = IMG_LoadTexture(renderer,"images/3D_Duck.png"); img_stone = IMG_LoadTexture(renderer,"images/stone.png"); // Quelle: https://www.vecteezy.com/vector-art/22285554-stones-in-pixel-art-style img_race_street = IMG_LoadTexture(renderer,"images/race_street.jpg"); diff --git a/map.c b/map.c index fa66bcf..d56f334 100644 --- a/map.c +++ b/map.c @@ -88,6 +88,7 @@ int move_map(enum vehicle theme,int delta_y,struct LinkedList *list, SDL_Rendere struct Row *cur = list->head; bool newRow = false; + bool printedPlayer = false; if (cur->y_pos >= SCREEN_HEIGHT){ @@ -109,6 +110,11 @@ int move_map(enum vehicle theme,int delta_y,struct LinkedList *list, SDL_Rendere if (paste_row(renderer,cur->y_pos,cur->row_type)) return(-1); + if (cur->y_pos <= player->y && player->y <= cur->y_pos + ROW_SIZE && (cur->bird != NULL)){ + update_character(delta_y, renderer); + printedPlayer = true; + } + if (cur->stone != -1){ if (paste_stone(renderer,cur->stone,cur->y_pos)) return(1); @@ -138,7 +144,6 @@ int move_map(enum vehicle theme,int delta_y,struct LinkedList *list, SDL_Rendere if (cur->bird->anim == 0 && ((abs(player->y - cur->bird->y_pos) < 2*ROW_SIZE) && (abs(player->x - cur->bird->x_pos) < 2*ROW_SIZE))) cur->bird->anim++; move_bird(renderer,cur->bird,delta_y); - //paste_bird(renderer,cur->bird->x_pos,cur->bird->y_pos,cur->bird->height,cur->width,cur->bird->anim); } @@ -165,6 +170,10 @@ int move_map(enum vehicle theme,int delta_y,struct LinkedList *list, SDL_Rendere cur = cur->next; } + + if (!printedPlayer){ + update_character(delta_y, renderer); + } if (newRow){ struct Row *n; diff --git a/menu2.c b/menu2.c index a1ba20f..6cf4595 100644 --- a/menu2.c +++ b/menu2.c @@ -215,22 +215,12 @@ Nachb.: Das Spiel wird erneut gestartet, wenn y gedrückt wird. Wenn n gedrückt */ int end_screen(SDL_Renderer* renderer) { - if (SDL_SetRenderDrawColor(renderer,255,255,255,0) !=0) { - SDL_Log("Farbe konnte nicht gesetzt werden! SDL_Error %s\n",SDL_GetError()); - return(-1); - } - // Hintergrund für Schrift erstellen SDL_Rect rect = { .x = 250, .y = 0, .w = 600, .h = 200 }; - if (SDL_RenderFillRect(renderer,&rect)!=0) { - - SDL_Log("Malen des Rechtecks fehlgeschlagen! SDL_Error %s\n",SDL_GetError()); - return(-1); - } // Text ausgeben SDL_Surface* surfaceMessage = TTF_RenderText_Blended_Wrapped (font, "Nochmal? (y)/(n)", (SDL_Color) {255, 255, 255, 255}, 8*200); diff --git a/rows.c b/rows.c index 5186ed1..78dac6d 100644 --- a/rows.c +++ b/rows.c @@ -1,10 +1,17 @@ #include "hDateien/rows.h" +// Vorbedingnug: / + +// Nachbedingung: gibt eine zufällige Position für ein Stein zurück + int gen_stone(){ int p = (rand() % 9)*ROW_SIZE; return(p); } +//Vorbedingung: -200<=y_pos<=1000 + +//Nachbedinung: eine Rennstrecken-Reihe wurde Initialisiert struct Row *race(int y_pos){ struct Row *n = malloc(sizeof(*n)); if (n==NULL){ diff --git a/title_screen.c b/title_screen.c index a2d12dd..1422a5f 100644 --- a/title_screen.c +++ b/title_screen.c @@ -15,10 +15,10 @@ int title_screen(SDL_Renderer* renderer){ // unschöne Lösung um Hintergrund weiß zu machen SDL_Rect rect_3 = { - .x = 400, + .x = 0, .y = 0, - .w = 500, - .h = 500}; + .w = SCREEN_WIDTH, + .h = SCREEN_HEIGHT}; if (SDL_RenderFillRect(renderer,&rect_3) != 0){ SDL_Log("Malen des Rechtecks fehlgeschlagen! SDL_Error: %s\n", SDL_GetError()); @@ -28,9 +28,9 @@ int title_screen(SDL_Renderer* renderer){ SDL_Rect rect = { .x = 0, - .y = 0, + .y = 100, .w = 600, - .h = 500}; + .h = 200}; if (SDL_RenderFillRect(renderer,&rect)!=0) { @@ -38,7 +38,7 @@ int title_screen(SDL_Renderer* renderer){ return(-1); } - SDL_Surface* surfaceMessage = TTF_RenderText_Blended_Wrapped(font, " Willkommen zu\n Smashy Roads!\n Steuerung:", (SDL_Color) {0, 0, 0, 255}, 10*200); + SDL_Surface* surfaceMessage = TTF_RenderText_Blended_Wrapped(font, "Steuerung:", (SDL_Color) {0, 0, 0, 255}, 10*200); if (surfaceMessage == NULL) printf("Text Surface loading failed: %s\n", TTF_GetError()); @@ -50,12 +50,11 @@ int title_screen(SDL_Renderer* renderer){ return(-1); } - //Einfügen Spielanleitung als Bild SDL_Rect rect_2 = { .x = 0, - .y = SCREEN_HEIGHT/2, + .y = SCREEN_HEIGHT/3, .w = SCREEN_WIDTH, .h = SCREEN_HEIGHT/2}; @@ -72,7 +71,7 @@ int title_screen(SDL_Renderer* renderer){ // Einfügen 3D Ente als Bild - + /* SDL_Rect ente = { .x = 450, .y = 330, @@ -88,6 +87,7 @@ int title_screen(SDL_Renderer* renderer){ SDL_Log("Bild konnte nicht kopiert werden! SDL_Error: %s\n", SDL_GetError()); return(-1); } + */ // Warte auf Eingabe um entweder zu beenden, oder zurückzukehren -- GitLab