From 5b581dc0310781494797be8b7ef31e0531ea94ce Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Fri, 15 Dec 2023 11:53:14 +0100 Subject: [PATCH 01/32] Add SDL_ttf - change .gitignore - change README.md --- .gitignore | 1 + README.md | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index a868b20..41ed50d 100644 --- a/.gitignore +++ b/.gitignore @@ -30,6 +30,7 @@ compile_commands.json *.a *.lib SDL2 +SDL2_ttf # Ignore any backup files *~ \ No newline at end of file diff --git a/README.md b/README.md index 7d540d4..6fca8de 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Development of the game Snake++ using C, C++ and SDK2 for the Software Engineeri ## Linux **Install tools and SDL2** ```bash -pacman -S sdl2 sdl2_rrf +pacman -S sdl2 sdl2_ttf pacman -S cmake gcc ``` **Build** @@ -22,6 +22,12 @@ make - Unzip the file and rename the folder to `SDL2` (avoid unnecessary subfolder) - Place it in the root folder of this repository. +**Download SDL_ttf** +- Download `SDL2-devel-2.28.5-VC.zip` from https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.20.2/SDL2_ttf-devel-2.20.2-VC.zip +- Unzip the file and rename the folder to `SDL2_ttf` (avoid unnecessary subfolder) +- Place it in the root folder of this repository. + + **Install compiler** (if not available already) - download mingw: - visit https://altushost-swe.dl.sourceforge.net/project/mingw-w64/ From d7c929985f4bbe54dcc8f47804db4045f913ee53 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Fri, 15 Dec 2023 11:56:58 +0100 Subject: [PATCH 02/32] update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6fca8de..b42d54c 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ make - Place it in the root folder of this repository. **Download SDL_ttf** -- Download `SDL2-devel-2.28.5-VC.zip` from https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.20.2/SDL2_ttf-devel-2.20.2-VC.zip +- Download `SDL2_ttf-devel-2.20.2-VC.zip` from https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.20.2/SDL2_ttf-devel-2.20.2-VC.zip - Unzip the file and rename the folder to `SDL2_ttf` (avoid unnecessary subfolder) - Place it in the root folder of this repository. From 8f9e555a73b215f325b00093f38fac2ccffe6ca9 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Fri, 15 Dec 2023 12:00:36 +0100 Subject: [PATCH 03/32] update CMakeLists.txt --- CMakeLists.txt | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7f374bf..6d02d5a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,17 +12,30 @@ if(WIN32) set(SDL2_LIBS "${SDL2_FOLDER}/lib/x64/SDL2.lib") set(SDL2_DLLS "${SDL2_FOLDER}/lib/x64/SDL2.dll") set(SDL2_DIR "${SDL2_FOLDER}/cmake/") - # On Linux, the library is found automatically if installed + + # Specify downloaded SDL2_ttf library folder location + set(SDL2_TTF_FOLDER "${CMAKE_SOURCE_DIR}/SDL2_ttf/") + + set(SDL2_TTF_INCLUDE_DIRS "${SDL2_TTF_FOLDER}/include") + set(SDL2_TTF_LIBRARIES "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.lib") + set(SDL2_TTF_LIBS "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.lib") + set(SDL2_TTF_DLLS "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.dll") + set(SDL2_TTF_DIR "${SDL2_TTF_FOLDER}/cmake/") + set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} "${SDL2_TTF_FOLDER}") endif() +# Note: On Linux, the libraries are found automatically if installed # --- Locate SDL2 --- # Uses SDL2_DIR on Windows, on Linux it's found automatically -find_package(SDL2 REQUIRED) - +# Locate SDL2 +find_package(SDL2 REQUIRED) +# Locate SDL_ttf +#find_package(SDL2_ttf REQUIRED) +find_package(SDL2_ttf REQUIRED) #--- Include directories --- -include_directories(${SDL2_INCLUDE_DIRS} ./include ./src) +include_directories(${SDL2_INCLUDE_DIRS} ${SDL2_TTF_INCLUDE_DIRS} ./include ./src) # --- Source files --- @@ -43,12 +56,12 @@ set(SOURCES add_executable(Snake ${SOURCES}) -target_link_libraries(Snake ${SDL2_LIBRARIES}) +target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL2_TTF_LIBRARIES}) # --- Copy SDL2 DLLs to the output folder on Windows --- if(WIN32) - foreach(DLL ${SDL2_DLLS}) + foreach(DLL ${SDL2_DLLS} ${SDL_TTF_DLLS}) add_custom_command(TARGET Snake POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DLL} $) endforeach() From 965372c7bf8778c9002a8678ff4585643de5193a Mon Sep 17 00:00:00 2001 From: jonny-vb Date: Fri, 15 Dec 2023 03:32:47 -0800 Subject: [PATCH 04/32] Fix warnings in input.c, map.c (const char, sqrt) --- include/map.h | 2 +- src/input.c | 2 ++ src/map.c | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/include/map.h b/include/map.h index 8c6dc0f..2468ca1 100644 --- a/include/map.h +++ b/include/map.h @@ -39,7 +39,7 @@ void updateBlockSizePx(); // search and load map by name in storedMaps[] (map.c) // stops program when map not found! -void loadMapByName(char *name); +void loadMapByName(const char *name); //load map by passed definition diff --git a/src/input.c b/src/input.c index c1adfff..9a38cf9 100644 --- a/src/input.c +++ b/src/input.c @@ -1,3 +1,5 @@ +#include + #include "input.h" #include "common.h" #include "SDL.h" diff --git a/src/map.c b/src/map.c index 879c3c0..a35cc62 100644 --- a/src/map.c +++ b/src/map.c @@ -130,7 +130,7 @@ void updateBlockSizePx(){ //=========================== // search and load map by name in storedMaps[] (map.c) // stops program when map not found! -void loadMapByName(char *name) +void loadMapByName(const char *name) { // loop through all stored maps for (int i = 0; i < storedMapsCount; i++) From c10481021fe0cc405eb8520cb70d97637b030e3b Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Sun, 17 Dec 2023 00:44:43 +0100 Subject: [PATCH 05/32] Add start start screen - many updates in some files --- fonts/CenturyGothic.ttf | Bin 0 -> 137568 bytes fonts/Prototype.ttf | Bin 0 -> 29592 bytes fonts/Quirkus.ttf | Bin 0 -> 60148 bytes fonts/ZIPERHEA.ttf | Bin 0 -> 34768 bytes include/menu.h | 47 +++++++++++++++ include/render.h | 5 +- src/game.c | 2 +- src/main.cpp | 17 +++++- src/menu.c | 72 +++++++++++++++++++++- src/render.c | 129 +++++++++++++++++++++++++++++++++++++++- 10 files changed, 264 insertions(+), 8 deletions(-) create mode 100644 fonts/CenturyGothic.ttf create mode 100644 fonts/Prototype.ttf create mode 100644 fonts/Quirkus.ttf create mode 100644 fonts/ZIPERHEA.ttf diff --git a/fonts/CenturyGothic.ttf b/fonts/CenturyGothic.ttf new file mode 100644 index 0000000000000000000000000000000000000000..879704e34a2d16d5ea8fb44bb0ebecdb13c2c430 GIT binary patch literal 137568 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 z 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 M&Gjpr8gqpFA28ft3IG5A literal 0 HcmV?d00001 diff --git a/fonts/Quirkus.ttf b/fonts/Quirkus.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ec994fd8125df0be035e8c2a1108bedfd2f8cf48 GIT binary patch literal 60148 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 b%LmtrMlk#^w&v&QiKAGL_kc(DYsdZ@Ycosr literal 0 HcmV?d00001 diff --git a/fonts/ZIPERHEA.ttf b/fonts/ZIPERHEA.ttf new file mode 100644 index 0000000000000000000000000000000000000000..96ce6dda644ca90e4c1b6cb89199bb2529f37507 GIT binary patch literal 34768 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 aXmt*mC+rFxjUFBSonKr#mxQ`IOD_Nu|9Ln7 literal 0 HcmV?d00001 diff --git a/include/menu.h b/include/menu.h index 0f8e4c5..acc96d1 100644 --- a/include/menu.h +++ b/include/menu.h @@ -1,6 +1,53 @@ #pragma once +#include #include "SDL.h" +#include "SDL_ttf.h" +#include "common.h" + +#define MAX_COLOURS 10 +#define MAX_LINES_TFF 20 //max lines (of ttf) for the whole project +#define MAX_LINES_STARTSCREEN 5 +#define TIME_BETWEEN_UPDATE_MENU 1000 // [ms] + +// Enum that defines the active menu +typedef enum menus_t +{ + NONE = 0, + START, + SETTINGS, + LEADERBOARD, + PAUSE +} menus_t; + +// Struct that include pointer for ttl-functions in menu.c and render.c +typedef struct tllData_t +{ + TTF_Font *ptrFont_30; // used by menu.c and render.c + TTF_Font *ptrFont_200; // used by menu.c and render.c + SDL_Surface *textSurface; // used by menu.c and render.c + SDL_Texture *textTexture; // used by menu.c and render.c + SDL_Texture *textTextures[MAX_LINES_TFF]; + SDL_Color textColour[MAX_COLOURS]; // colour in which the text is printed + const int fontSize_30; + const int fontSize_200; + int64_t lastTimeStep; + int lineHeight; // to print text in middle + int totalHeight; // to print text in middle + int textPrintPosition; // where first line is printed + time_t cycleDuration; + bool showEnter; +} ttlData_t; + +extern ttlData_t ttlStorage; + +extern menus_t activeMenu; + +// edit various menus +// is called up in main.cpp +void manageMenu(); + + void showStartScreen(); //zum Starten Enter drücken diff --git a/include/render.h b/include/render.h index fd09479..30dca2e 100644 --- a/include/render.h +++ b/include/render.h @@ -2,6 +2,7 @@ #include "game.h" #include "snake.h" +#include "menu.h" #include "SDL.h" void renderGame(); @@ -9,4 +10,6 @@ void renderGame(); int CreateSDLWindow(); -void DestroySDLWindow(); \ No newline at end of file +void DestroySDLWindow(); + +void renderStartMenu(); \ No newline at end of file diff --git a/src/game.c b/src/game.c index 562f9ff..907e9f1 100644 --- a/src/game.c +++ b/src/game.c @@ -16,7 +16,7 @@ gameData_t game = { .mapIsLoaded = false, .lifesRemaining = 1, .timestampLastCycle = 0, - .gameState = RUNNING, + .gameState = MENU, }; diff --git a/src/main.cpp b/src/main.cpp index 079f4d0..56ba0c2 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,6 +7,7 @@ extern "C" #include "common.h" #include "input.h" #include "render.h" +#include "menu.h" } //initialize SDL window @@ -29,7 +30,7 @@ extern "C" int main(int argc, char *argv[]) -{ +{ gameInit(); // Initialisiere SDL @@ -37,8 +38,15 @@ int main(int argc, char *argv[]) printf("SDL konnte nicht initialisiert werden! SDL_Error: %s\n", SDL_GetError()); return 1; } - CreateSDLWindow(); + // Initialisiere SDL_ttl, um Text ausgeben zu können + if (TTF_Init() == -1) { + printf("SDL_ttf konnte nicht initialisiert werden! SDL_Error: %s\n"); + return 1; + } + + + CreateSDLWindow(); @@ -49,6 +57,11 @@ int main(int argc, char *argv[]) int diff; while(game.gameState != EXIT) { + if(game.gameState == MENU) + { + manageMenu(); + } + if (game.gameState == RUNNING) { now = GET_TIME_MS(); // Timer startet diff = now-game.timestampLastCycle; diff --git a/src/menu.c b/src/menu.c index 04c0227..7a754fb 100644 --- a/src/menu.c +++ b/src/menu.c @@ -6,12 +6,52 @@ //#include -void showStartScreen(){ + +//define global struct for tllStorage values +//default values defined here: (note: gets modified by render.c or menu.c) +ttlData_t ttlStorage = +{ + .fontSize_30 = 30, + .fontSize_200 = 200, + .lastTimeStep = 0, + .cycleDuration = 500, + .showEnter = false +}; + +// Default +menus_t activeMenu = START; + +// is called by main function +// choose between the selected menu-rendering functions +void manageMenu() +{ + switch(activeMenu) + { + case START: + showStartScreen(); + break; + } +} + + +void showStartScreen() +{ LOGI("menu: showing start-screen\n"); - game.gameState = RUNNING; + time_t now = GET_TIME_MS(); + if(now > (ttlStorage.lastTimeStep + ttlStorage.cycleDuration)) + { + ttlStorage.showEnter = !ttlStorage.showEnter; // is used to make ENTER blink + renderStartMenu(); + } + + //------------------------------------------------------------------------------------ + return; } + + + void showLeaderboard(){ LOGI("menu: showing leaderboard\n"); @@ -39,5 +79,31 @@ void showSettings(){ void menuHandleInput(SDL_Event event){ //compare 'handleInput_runningState(SDL_Event event)' in input.c + switch(activeMenu) + { + case START: + switch (event.key.keysym.sym) + { + case SDLK_q: // q: quit + game.gameState = EXIT; + break; + + case SDLK_RETURN: // Enter key + game.gameState = RUNNING; + activeMenu = NONE; + // delete text + for (int i = 0; i < 5; ++i) + { + SDL_DestroyTexture(ttlStorage.textTextures[i]); + } + } + break; + + + case SETTINGS: + break; + } + return; -} \ No newline at end of file +} + diff --git a/src/render.c b/src/render.c index 86a0f48..58a9a8b 100644 --- a/src/render.c +++ b/src/render.c @@ -4,6 +4,8 @@ #include "snake.h" #include "food.h" #include "config.h" +#include "menu.h" +#include "common.h" #include @@ -113,6 +115,123 @@ void renderGame(){ +//-------------------------------------------------------------- +//-----------------START MENU----------------------------------- +//-------------------------------------------------------------- +void renderStartMenu() +{ + + + //-------------------- + // only first loop + //-------------------- + if(ttlStorage.lastTimeStep == 0) + { + + + ttlStorage.ptrFont_200 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_200); + ttlStorage.ptrFont_30 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_30); + + + SDL_Color textColor1 = {255, 0, 255}; // rosa Text + SDL_Color textColor2 = {255, 200, 0}; // oranger Text + SDL_Color textColor3 = {0, 255, 0}; // grüner Text + SDL_Color textColor4 = {255, 0, 0}; // rot Text + SDL_Color textColor5 = {0, 255, 255}; // türkiser Text + SDL_Color textColor6 = {255, 255, 255}; // weißer Text + + ttlStorage.textColour[0] = textColor1; + ttlStorage.textColour[1] = textColor2; + ttlStorage.textColour[2] = textColor3; + ttlStorage.textColour[3] = textColor4; + ttlStorage.textColour[4] = textColor5; + ttlStorage.textColour[5] = textColor6; + + + + + + // text in start screen + const char* textLines[] = { + "Snake++", + "In Pixeln bunt, sie schlaengelt flink,", + "Durch Mauern, Portale, ohne Blink.", + "Starte das Spiel, sei klug und schnell,", + "Die Schlange wartet, auf dein Pixel-Ziel!", + "-- ENTER --" + }; + + + // render game name (SNAKE++) bigger than poem + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_200, textLines[0], ttlStorage.textColour[0]); + ttlStorage.textTextures[0] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + + // render poem + for (int i = 1; i < (MAX_LINES_STARTSCREEN); ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, textLines[i], ttlStorage.textColour[i]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + } + + // render ENTER + + + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, textLines[MAX_LINES_STARTSCREEN], ttlStorage.textColour[5]); + ttlStorage.textTextures[MAX_LINES_STARTSCREEN] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + } + + + //------------------------------ + // is always performed + //----------------------------- + SDL_RenderClear(game.renderer); + + int textWidth, textHeight; + + + // print game name + ttlStorage.textPrintPosition = (config.windowSize) / 9; // print position for game name (SNAKE++) + SDL_QueryTexture(ttlStorage.textTextures[0], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[0], NULL, &dstRect); + + // print poem + ttlStorage.textPrintPosition = (config.windowSize) / 2.7; // change print position for poem + for (int i = 1; i < (MAX_LINES_STARTSCREEN); ++i) { + int textWidth, textHeight; + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + + + SDL_Rect dstRect = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + + + } + //print ENTER every second cycle + if(ttlStorage.showEnter) + { + ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_STARTSCREEN], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_STARTSCREEN], NULL, &dstRect1); + } + + + SDL_RenderPresent(game.renderer); + ttlStorage.lastTimeStep = GET_TIME_MS(); + // show inital menu frame + + + return; + + +} + + int CreateSDLWindow(){ // Erstelle ein SDL-Fenster @@ -132,6 +251,14 @@ int CreateSDLWindow(){ void DestroySDLWindow(){ // Zerstöre das Fenster und beende SDL + + TTF_CloseFont(ttlStorage.ptrFont_30); + TTF_CloseFont(ttlStorage.ptrFont_200); + SDL_DestroyRenderer(game.renderer); SDL_DestroyWindow(game.window); -} \ No newline at end of file + + TTF_Quit(); + SDL_Quit(); +} + From a7714ec15fceca141a8e3394382da1c452f95199 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Sun, 17 Dec 2023 02:42:10 +0100 Subject: [PATCH 06/32] Add setting and info screen - setting screen is only implemented, without features - info screen is completed currently --- include/menu.h | 17 ++++- include/render.h | 6 +- src/menu.c | 135 +++++++++++++++++++++++++++++----- src/render.c | 188 ++++++++++++++++++++++++++++++++++++++--------- 4 files changed, 286 insertions(+), 60 deletions(-) diff --git a/include/menu.h b/include/menu.h index acc96d1..0154645 100644 --- a/include/menu.h +++ b/include/menu.h @@ -7,7 +7,9 @@ #define MAX_COLOURS 10 #define MAX_LINES_TFF 20 //max lines (of ttf) for the whole project -#define MAX_LINES_STARTSCREEN 5 +#define MAX_LINES_STARTSCREEN 6 +#define MAX_LINES_SETTINGS 7 +#define MAX_LINE_INFOSCREEN 17 #define TIME_BETWEEN_UPDATE_MENU 1000 // [ms] // Enum that defines the active menu @@ -16,26 +18,29 @@ typedef enum menus_t NONE = 0, START, SETTINGS, + INFOSCREEN, LEADERBOARD, PAUSE } menus_t; // Struct that include pointer for ttl-functions in menu.c and render.c typedef struct tllData_t -{ +{ + TTF_Font *ptrFont_20; TTF_Font *ptrFont_30; // used by menu.c and render.c TTF_Font *ptrFont_200; // used by menu.c and render.c SDL_Surface *textSurface; // used by menu.c and render.c SDL_Texture *textTexture; // used by menu.c and render.c SDL_Texture *textTextures[MAX_LINES_TFF]; SDL_Color textColour[MAX_COLOURS]; // colour in which the text is printed + const int fontSize_20; const int fontSize_30; const int fontSize_200; int64_t lastTimeStep; int lineHeight; // to print text in middle int totalHeight; // to print text in middle int textPrintPosition; // where first line is printed - time_t cycleDuration; + const time_t cycleDuration; bool showEnter; } ttlData_t; @@ -61,6 +66,12 @@ void showLeaderboard(); void showSettings(); //optional //startet Settungs-Menü + +// show info screen +void showInfoScreen(); + void menuHandleInput(SDL_Event event); //als Übergabeparameter: int(?) event -> welcher Datentyp hängt von SDL ab //switch case für welcher Modus //switch case für welche Taste gedrückt wurde + + diff --git a/include/render.h b/include/render.h index 30dca2e..7401ad2 100644 --- a/include/render.h +++ b/include/render.h @@ -12,4 +12,8 @@ int CreateSDLWindow(); void DestroySDLWindow(); -void renderStartMenu(); \ No newline at end of file +void renderStartMenu(); + +void renderSettings(); + +void renderInfoScreen(); \ No newline at end of file diff --git a/src/menu.c b/src/menu.c index 7a754fb..d825087 100644 --- a/src/menu.c +++ b/src/menu.c @@ -10,19 +10,19 @@ //define global struct for tllStorage values //default values defined here: (note: gets modified by render.c or menu.c) ttlData_t ttlStorage = -{ - .fontSize_30 = 30, - .fontSize_200 = 200, - .lastTimeStep = 0, - .cycleDuration = 500, +{ + .fontSize_20 = 20, // size of font + .fontSize_30 = 30, // size of font + .fontSize_200 = 200, // size of font + .cycleDuration = 500, // time between show and not showing ENTER in start screen .showEnter = false }; // Default menus_t activeMenu = START; -// is called by main function -// choose between the selected menu-rendering functions +// is called by main function if game.gameState == MENU +// choose between the selected menu functions void manageMenu() { switch(activeMenu) @@ -30,29 +30,45 @@ void manageMenu() case START: showStartScreen(); break; + + case SETTINGS: + showSettings(); + break; + + case INFOSCREEN: + showInfoScreen(); + break; + + case LEADERBOARD: + showLeaderboard(); + break; + + case PAUSE: + showPauseScreen(); + break; } } +// shows start screen with blinking ENTER void showStartScreen() { LOGI("menu: showing start-screen\n"); + time_t now = GET_TIME_MS(); + + // is used to make ENTER blink if(now > (ttlStorage.lastTimeStep + ttlStorage.cycleDuration)) { - ttlStorage.showEnter = !ttlStorage.showEnter; // is used to make ENTER blink + ttlStorage.showEnter = !ttlStorage.showEnter; renderStartMenu(); } - - //------------------------------------------------------------------------------------ - return; } - - -void showLeaderboard(){ +void showLeaderboard() +{ LOGI("menu: showing leaderboard\n"); //--- play crash sound --- @@ -66,17 +82,50 @@ void showLeaderboard(){ return; } -void showPauseScreen(){ +void showPauseScreen() +{ LOGI("menu: showing leaderboard\n"); game.gameState = PAUSED; return; } -void showSettings(){ + +void showSettings() +{ LOGI("menu: showing settings\n"); + + + time_t now = GET_TIME_MS(); + + // is used to make ENTER blink + if(now > (ttlStorage.lastTimeStep + ttlStorage.cycleDuration)) + { + ttlStorage.showEnter = !ttlStorage.showEnter; + renderSettings(); + } + return; } + +void showInfoScreen() +{ + LOGI("menu: showing info-screen\n"); + + time_t now = GET_TIME_MS(); + + // is used to make ENTER blink + if(now > (ttlStorage.lastTimeStep + ttlStorage.cycleDuration)) + { + ttlStorage.showEnter = !ttlStorage.showEnter; + renderInfoScreen(); + } + + return; +} + +// handle input over keyboard +// delete text at the and of one menu section void menuHandleInput(SDL_Event event){ //compare 'handleInput_runningState(SDL_Event event)' in input.c switch(activeMenu) @@ -89,10 +138,10 @@ void menuHandleInput(SDL_Event event){ break; case SDLK_RETURN: // Enter key - game.gameState = RUNNING; - activeMenu = NONE; + activeMenu = SETTINGS; + ttlStorage.lastTimeStep = 0; // delete text - for (int i = 0; i < 5; ++i) + for (int i = 0; i < MAX_LINES_TFF; ++i) { SDL_DestroyTexture(ttlStorage.textTextures[i]); } @@ -101,9 +150,55 @@ void menuHandleInput(SDL_Event event){ case SETTINGS: + switch(event.key.keysym.sym) + { + case SDLK_q: // q: quit + game.gameState = EXIT; + break; + + case SDLK_F1: // go to info screen + activeMenu = INFOSCREEN; + ttlStorage.lastTimeStep = 0; + // delete text + for (int i = 0; i < MAX_LINES_TFF; ++i) + { + SDL_DestroyTexture(ttlStorage.textTextures[i]); + } + break; + + case SDLK_RETURN: //start game + activeMenu = NONE; + game.gameState = RUNNING; + // delete text + for (int i = 0; i < MAX_LINES_TFF; ++i) + { + SDL_DestroyTexture(ttlStorage.textTextures[i]); + } + break; + } + + break; + + case INFOSCREEN: + switch(event.key.keysym.sym) + { + case SDLK_q: // q: quit + game.gameState = EXIT; + break; + + case SDLK_RETURN: // go return to settings + activeMenu = SETTINGS; + ttlStorage.lastTimeStep = 0; + // delete text + for (int i = 0; i < MAX_LINES_TFF; ++i) + { + SDL_DestroyTexture(ttlStorage.textTextures[i]); + } + } break; } - + + return; } diff --git a/src/render.c b/src/render.c index 58a9a8b..f825458 100644 --- a/src/render.c +++ b/src/render.c @@ -120,15 +120,9 @@ void renderGame(){ //-------------------------------------------------------------- void renderStartMenu() { - - - //-------------------- - // only first loop - //-------------------- + //=========== only first loop ================ if(ttlStorage.lastTimeStep == 0) { - - ttlStorage.ptrFont_200 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_200); ttlStorage.ptrFont_30 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_30); @@ -140,16 +134,12 @@ void renderStartMenu() SDL_Color textColor5 = {0, 255, 255}; // türkiser Text SDL_Color textColor6 = {255, 255, 255}; // weißer Text - ttlStorage.textColour[0] = textColor1; - ttlStorage.textColour[1] = textColor2; - ttlStorage.textColour[2] = textColor3; - ttlStorage.textColour[3] = textColor4; - ttlStorage.textColour[4] = textColor5; - ttlStorage.textColour[5] = textColor6; - - - - + ttlStorage.textColour[0] = textColor1; // rosa + ttlStorage.textColour[1] = textColor2; // orange + ttlStorage.textColour[2] = textColor3; // grün + ttlStorage.textColour[3] = textColor4; // rot + ttlStorage.textColour[4] = textColor5; // türkis + ttlStorage.textColour[5] = textColor6; // weiß // text in start screen const char* textLines[] = { @@ -168,7 +158,7 @@ void renderStartMenu() SDL_FreeSurface(ttlStorage.textSurface); // render poem - for (int i = 1; i < (MAX_LINES_STARTSCREEN); ++i) + for (int i = 1; i < (MAX_LINES_STARTSCREEN - 1); ++i) { ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, textLines[i], ttlStorage.textColour[i]); ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); @@ -176,22 +166,17 @@ void renderStartMenu() } // render ENTER - - - ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, textLines[MAX_LINES_STARTSCREEN], ttlStorage.textColour[5]); - ttlStorage.textTextures[MAX_LINES_STARTSCREEN] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, textLines[MAX_LINES_STARTSCREEN-1], ttlStorage.textColour[5]); + ttlStorage.textTextures[MAX_LINES_STARTSCREEN-1] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); SDL_FreeSurface(ttlStorage.textSurface); } - //------------------------------ - // is always performed - //----------------------------- + //=========== is always performerd ================ SDL_RenderClear(game.renderer); int textWidth, textHeight; - // print game name ttlStorage.textPrintPosition = (config.windowSize) / 9; // print position for game name (SNAKE++) SDL_QueryTexture(ttlStorage.textTextures[0], NULL, NULL, &textWidth, &textHeight); @@ -200,35 +185,165 @@ void renderStartMenu() // print poem ttlStorage.textPrintPosition = (config.windowSize) / 2.7; // change print position for poem - for (int i = 1; i < (MAX_LINES_STARTSCREEN); ++i) { - int textWidth, textHeight; + for (int i = 1; i < (MAX_LINES_STARTSCREEN-1); ++i) { SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); - SDL_Rect dstRect = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); ttlStorage.textPrintPosition += textHeight; // increase print position - - } //print ENTER every second cycle if(ttlStorage.showEnter) { ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER - SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_STARTSCREEN], NULL, NULL, &textWidth, &textHeight); + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_STARTSCREEN-1], NULL, NULL, &textWidth, &textHeight); SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; - SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_STARTSCREEN], NULL, &dstRect1); + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_STARTSCREEN-1], NULL, &dstRect1); } - + // update screen SDL_RenderPresent(game.renderer); ttlStorage.lastTimeStep = GET_TIME_MS(); - // show inital menu frame + return; +} + + +//-------------------------------------------------------------- +//-------------------SETTINGS----------------------------------- +//-------------------------------------------------------------- +void renderSettings() +{ + //=========== only first loop ================ + if(ttlStorage.lastTimeStep == 0) + { + ttlStorage.ptrFont_20 = TTF_OpenFont("../fonts/Prototype.ttf", ttlStorage.fontSize_20); + + // text in start screen + const char* textLines[] = { + "Fuer Infos zum Gameplay, sowie einigen Shortcuts druecken Sie bitte F1", + " ", + //"Bitte geben Sie ihren Spielnamen ein: ", + "test", + "test", + "test", + "test", + "-- ENTER --" + }; + + // render setting screen + for (int i = 0; i < MAX_LINES_SETTINGS; ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLines[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + } + } + + + //=========== is always performerd ================ + SDL_RenderClear(game.renderer); + + int textWidth, textHeight; + + // print settings + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < (MAX_LINES_SETTINGS - 1); ++i) { + + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } + + //print ENTER every second cycle + if(ttlStorage.showEnter) + { + ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, &dstRect1); + } + // update screen + SDL_RenderPresent(game.renderer); + ttlStorage.lastTimeStep = GET_TIME_MS(); + return; - +} + +//-------------------------------------------------------------- +//-------------------INFO SCREEN-------------------------------- +//-------------------------------------------------------------- +void renderInfoScreen() +{ + //=========== only first loop ================ + if(ttlStorage.lastTimeStep == 0) + { + // text in start screen + const char* textLines[] = { + " Steuerung: W (nach oben)", + " A (nach links)", + " S (nach unten)", + " D (nach rechts) ", + " oder: Pfeiltasten ", + " ", + " ", + " Pause: p", + " oder: Leertaste", + " ", + " ", + "Spiel verlassen: q ", + " ", + " ", + " ", + "By Jonas Schoenberger, Johannes Graf und Julia Steinberger", + "-- ENTER --" + }; + + // render setting screen + for (int i = 0; i < MAX_LINE_INFOSCREEN; ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLines[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + } + } + + + //=========== is always performerd ================ + SDL_RenderClear(game.renderer); + + int textWidth, textHeight; + + // print settings + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < (MAX_LINE_INFOSCREEN - 1); ++i) { + + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } + + //print ENTER every second cycle + if(ttlStorage.showEnter) + { + ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINE_INFOSCREEN-1], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINE_INFOSCREEN-1], NULL, &dstRect1); + } + + + // update screen + SDL_RenderPresent(game.renderer); + ttlStorage.lastTimeStep = GET_TIME_MS(); + + return; } @@ -252,6 +367,7 @@ int CreateSDLWindow(){ void DestroySDLWindow(){ // Zerstöre das Fenster und beende SDL + TTF_CloseFont(ttlStorage.ptrFont_20); TTF_CloseFont(ttlStorage.ptrFont_30); TTF_CloseFont(ttlStorage.ptrFont_200); From 814cee7ba103cb13d9eb078cc29313167b6962d7 Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 17 Dec 2023 10:56:10 +0100 Subject: [PATCH 07/32] Fix Windows no output, Fix Linux ttf undefined errors (cmake) - in windows .dll files for SDL_TTF were not copied to output due to typo resulted in no output at all (e.g. not even printf in main) - in linux library is called SDL_ttf instead of SDL2_ttf resulted in undefined reference to `TTF_Init' etc --- CMakeLists.txt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6d02d5a..018aeee 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,7 +17,7 @@ if(WIN32) set(SDL2_TTF_FOLDER "${CMAKE_SOURCE_DIR}/SDL2_ttf/") set(SDL2_TTF_INCLUDE_DIRS "${SDL2_TTF_FOLDER}/include") - set(SDL2_TTF_LIBRARIES "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.lib") + set(SDL_TTF_LIBRARIES "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.lib") set(SDL2_TTF_LIBS "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.lib") set(SDL2_TTF_DLLS "${SDL2_TTF_FOLDER}/lib/x64/SDL2_ttf.dll") set(SDL2_TTF_DIR "${SDL2_TTF_FOLDER}/cmake/") @@ -30,9 +30,13 @@ endif() # Uses SDL2_DIR on Windows, on Linux it's found automatically # Locate SDL2 find_package(SDL2 REQUIRED) -# Locate SDL_ttf -#find_package(SDL2_ttf REQUIRED) + +# --- Locate SDL2_ttf --- +if(WIN32) find_package(SDL2_ttf REQUIRED) +else() +find_package(SDL_ttf REQUIRED) +endif() #--- Include directories --- include_directories(${SDL2_INCLUDE_DIRS} ${SDL2_TTF_INCLUDE_DIRS} ./include ./src) @@ -56,12 +60,12 @@ set(SOURCES add_executable(Snake ${SOURCES}) -target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL2_TTF_LIBRARIES}) +target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL_TTF_LIBRARIES}) # --- Copy SDL2 DLLs to the output folder on Windows --- if(WIN32) - foreach(DLL ${SDL2_DLLS} ${SDL_TTF_DLLS}) + foreach(DLL ${SDL2_DLLS} ${SDL2_TTF_DLLS}) add_custom_command(TARGET Snake POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DLL} $) endforeach() From c94f205e4793521ee8c6726733a3bf1c690b7f0c Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 17 Dec 2023 12:42:44 +0100 Subject: [PATCH 08/32] Add support for difficulty-level 1-3 (food placement) New file for all difficulty related parameters Food placement parameters depend on difficulty --- CMakeLists.txt | 1 + include/difficulty.h | 12 ++++++++++++ src/difficulty.c | 33 +++++++++++++++++++++++++++++++++ src/food.c | 9 +++++---- 4 files changed, 51 insertions(+), 4 deletions(-) create mode 100644 include/difficulty.h create mode 100644 src/difficulty.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 018aeee..bb16117 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,6 +56,7 @@ set(SOURCES src/map.c src/common.c src/sound.c + src/difficulty.c ) diff --git a/include/difficulty.h b/include/difficulty.h new file mode 100644 index 0000000..2bbab35 --- /dev/null +++ b/include/difficulty.h @@ -0,0 +1,12 @@ +#pragma once +#include "config.h" + +//---------------------------------------------------------------- +// All functions/options regarding/affecting the difficulty level +// -> collected in one file for easy adjustment +//---------------------------------------------------------------- + + + +// set parameters for food placement by current difficulty level +void difficulty_getFoodPlacementParam(float * minDist, float * maxDist); \ No newline at end of file diff --git a/src/difficulty.c b/src/difficulty.c new file mode 100644 index 0000000..2b6979a --- /dev/null +++ b/src/difficulty.c @@ -0,0 +1,33 @@ +#include "difficulty.h" + +//---------------------------------------------------------------- +// All functions/options regarding/affecting the difficulty level +// -> collected in one file for easy adjustment +//---------------------------------------------------------------- + + +//====================================== +//== difficulty_getFoodPlacementParam == +//====================================== +// set parameters for food placement by current difficulty level +void difficulty_getFoodPlacementParam(float *minDist, float *maxDist) +{ + switch (config.difficulty) + { + default: + case 0: + case 1: //EASY/default: always place far away + *minDist = 3.0; // new food has to be at least minDist blocks away from any object + *maxDist = 5.0; // new food has to be closer than maxDist to an object + break; + case 2: //MEDIUM: place next to OR further away + *minDist = 1.0; + *maxDist = 4.0; + break; + case 3: //HARD: always place next to block + *minDist = 1.0; + *maxDist = 1.0; + break; + } + return; +} diff --git a/src/food.c b/src/food.c index 92c3060..3364273 100644 --- a/src/food.c +++ b/src/food.c @@ -5,6 +5,7 @@ #include "common.h" #include "map.h" #include "game.h" +#include "difficulty.h" @@ -87,11 +88,11 @@ newValues: void placeFood() { //--- config --- - static const float minDist = 3; // new food has to be at least minDist blocks away from any object - float maxDist = 5; // new food has to be closer than maxDist to an object + float minDist; // new food has to be at least minDist blocks away from any object + float maxDist; // new food has to be closer than maxDist to an object static const int maxTries = 25; // each maxTries the limit maxDist get loosened (prevents deadlock) - // TODO calculate this range using configured difficulty level - // e.g. in hard difficulty the maxDist could be <2 so it is always placed close to a collision + // get food placement parameters according to difficulty (difficulty.c) + difficulty_getFoodPlacementParam(&minDist, &maxDist); //--- variables --- int foodX, foodY, triesMax = 0, triesMin; From 5c723034092e731ca0d487cfd365e44ca9161778 Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 17 Dec 2023 14:21:39 +0100 Subject: [PATCH 09/32] Fix segfault on linux (use SDL2_ttf) Loading font caused a segmentation fault beceause of using SDL_ttf with SDL2 on linux (not compatible) Note: This section might have helped too but was not necessary at the end: --- Locate SDL2_ttf --- find_package(SDL2_ttf REQUIRED) if(SDL2_ttf_FOUND) add_definitions(-DUSE_SDL2_TTF) set(nativeExtraLibs ${nativeExtraLibs} SDL2_ttf::SDL2_ttf) #message(STATUS "DEBUG: ttf-library found!") endif() --- CMakeLists.txt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bb16117..9f9cc51 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,11 +32,7 @@ endif() find_package(SDL2 REQUIRED) # --- Locate SDL2_ttf --- -if(WIN32) find_package(SDL2_ttf REQUIRED) -else() -find_package(SDL_ttf REQUIRED) -endif() #--- Include directories --- include_directories(${SDL2_INCLUDE_DIRS} ${SDL2_TTF_INCLUDE_DIRS} ./include ./src) @@ -61,7 +57,14 @@ set(SOURCES add_executable(Snake ${SOURCES}) -target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL_TTF_LIBRARIES}) + + +#--- link libraries --- +if(WIN32) + target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL_TTF_LIBRARIES}) +else() + target_link_libraries(Snake SDL2::SDL2 SDL2_ttf::SDL2_ttf) +endif() # --- Copy SDL2 DLLs to the output folder on Windows --- From 14a66b8e27011a0409451f91d181a2ddd0524527 Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 17 Dec 2023 19:40:42 +0100 Subject: [PATCH 10/32] Fix bugged tail element at 0,0 when first eaten Fixed array index -> prevents render functions from accessing uninitialized value in `snake.tail[]` --- src/snake.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/snake.c b/src/snake.c index 9520aa7..6a9ffc0 100644 --- a/src/snake.c +++ b/src/snake.c @@ -36,8 +36,8 @@ void snakeGrow() game.snake.length++; // tail part is attached left of last tail part // maybe problem while rendering --> MUST BE SOLVED THEN - game.snake.tail[game.snake.length][0] = game.snake.tail[game.snake.length - 1][0] - 1; - game.snake.tail[game.snake.length][1] = game.snake.tail[game.snake.length - 1][1]; + game.snake.tail[game.snake.length - 1][0] = game.snake.tail[game.snake.length - 2][0]; + game.snake.tail[game.snake.length - 1][1] = game.snake.tail[game.snake.length - 2][1]; return; } From 8465c16b47cdecb5bde5863969db3c4a3e651d0c Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 17 Dec 2023 22:54:32 +0100 Subject: [PATCH 11/32] Update Readme: Add image, Optimize links --- README.md | 23 +++++++++++++++-------- demo.jpg | Bin 0 -> 26079 bytes 2 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 demo.jpg diff --git a/README.md b/README.md index b42d54c..a2daf10 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,11 @@ -Development of the game Snake++ using C, C++ and SDK2 for the Software Engineering course as part of our studies. +# Snake++ +Development of the game "Snake" featuring portals, custom maps and sound effects. +Cross-platform compatibility using CMake, C, C++ and SDL2. +A project for the Software Engineering course as part of our studies. + +## Preview + + # Compilation @@ -18,12 +25,12 @@ make ## Windows **Download SDL** -- Download `SDL2-devel-2.28.5-VC.zip` from https://github.com/libsdl-org/SDL/releases/tag/release-2.28.5 +- Download `SDL2-devel-2.28.5-VC.zip` from [github/libsdl-org](https://github.com/libsdl-org/SDL/releases/download/release-2.28.5/SDL2-devel-2.28.5-VC.zip) - Unzip the file and rename the folder to `SDL2` (avoid unnecessary subfolder) - Place it in the root folder of this repository. **Download SDL_ttf** -- Download `SDL2_ttf-devel-2.20.2-VC.zip` from https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.20.2/SDL2_ttf-devel-2.20.2-VC.zip +- Download `SDL2_ttf-devel-2.20.2-VC.zip` from [github/libsdl-org](https://github.com/libsdl-org/SDL_ttf/releases/download/release-2.20.2/SDL2_ttf-devel-2.20.2-VC.zip) - Unzip the file and rename the folder to `SDL2_ttf` (avoid unnecessary subfolder) - Place it in the root folder of this repository. @@ -46,17 +53,17 @@ See VS Code section # VS Code instructions ## Required extensions -- Cmake -- CmakeTools -- C/C++ +- [Cmake](https://open-vsx.org/extension/twxs/cmake) +- [CmakeTools](https://open-vsx.org/extension/ms-vscode/cmake-tools) +- [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) -## setup +## Setup - With CmakeTools installed open the project folder in VS Code - open cmd-prompt with `CTRL + SHIFT + P` run `cmake.build` - select kit (gcc or installed minGW compiler) Alternatively use cmake related buttons in bottom toolbar (CMake: Kit, Build, [all]...) -## compile +## Compile - Use buttons in bottom toolbar (CMake: ... Build [BUG-BUTTON] [PLAY-BUTTON] ... ) You can also use: - `ctrl-F5` run without debugger diff --git a/demo.jpg b/demo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9ef9ad196672a3a5ddc237b1b4683178bafe82fb GIT binary patch literal 26079 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
fQd!xX= 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 literal 0 HcmV?d00001 From 0590a782b81560ea0be2e6ef753d9fa56fc449df Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 00:06:28 +0100 Subject: [PATCH 12/32] Add input functions - user must enter nickname - user must enter difficulty level - user must enter map --- include/menu.h | 15 +++- include/render.h | 1 + src/input.c | 7 ++ src/menu.c | 95 ++++++++++++++++----- src/render.c | 214 +++++++++++++++++++++++++++++++++++------------ 5 files changed, 253 insertions(+), 79 deletions(-) diff --git a/include/menu.h b/include/menu.h index 0154645..c5268c0 100644 --- a/include/menu.h +++ b/include/menu.h @@ -8,8 +8,10 @@ #define MAX_COLOURS 10 #define MAX_LINES_TFF 20 //max lines (of ttf) for the whole project #define MAX_LINES_STARTSCREEN 6 -#define MAX_LINES_SETTINGS 7 -#define MAX_LINE_INFOSCREEN 17 +#define MAX_LINES_SETTINGS 14 +#define MAX_LINES_INFOSCREEN 17 + +#define TEXT_INPUT_SIZE 30 #define TIME_BETWEEN_UPDATE_MENU 1000 // [ms] // Enum that defines the active menu @@ -40,8 +42,13 @@ typedef struct tllData_t int lineHeight; // to print text in middle int totalHeight; // to print text in middle int textPrintPosition; // where first line is printed - const time_t cycleDuration; - bool showEnter; + const time_t cycleDuration; // time between blinking ENTER + bool showEnter; // ENTER should be printed only every second cycle + int inputStatus; // 1 if player name was entered; 2 if difficulty level was entered, 3 map was entered + char textInput[TEXT_INPUT_SIZE]; // auxiliary variable for user input + char userName[TEXT_INPUT_SIZE]; // user name + int userDifficultyLevel; // difficulty level which was entered by user + int userSelectedMap; // map which was entered by user } ttlData_t; extern ttlData_t ttlStorage; diff --git a/include/render.h b/include/render.h index 7401ad2..081f034 100644 --- a/include/render.h +++ b/include/render.h @@ -1,5 +1,6 @@ #pragma once +#include #include "game.h" #include "snake.h" #include "menu.h" diff --git a/src/input.c b/src/input.c index 9a38cf9..d39e656 100644 --- a/src/input.c +++ b/src/input.c @@ -81,6 +81,7 @@ void handleInput_runningState(SDL_Event event) void processInputEvent() { SDL_Event event; + // loop through all queued input events that occoured since last run while (SDL_PollEvent(&event)) { @@ -110,6 +111,12 @@ void processInputEvent() break; } } + //--- key text input --- + // not possible to make this check in the else if query before + else if(event.type == SDL_TEXTINPUT && game.gameState == MENU) + { + menuHandleInput(event); + } } return; diff --git a/src/menu.c b/src/menu.c index d825087..80b4728 100644 --- a/src/menu.c +++ b/src/menu.c @@ -15,7 +15,11 @@ ttlData_t ttlStorage = .fontSize_30 = 30, // size of font .fontSize_200 = 200, // size of font .cycleDuration = 500, // time between show and not showing ENTER in start screen - .showEnter = false + .showEnter = false, + .inputStatus = 0, + .textInput[0] = '\0' + + }; // Default @@ -53,7 +57,7 @@ void manageMenu() // shows start screen with blinking ENTER void showStartScreen() { - LOGI("menu: showing start-screen\n"); + LOGD("menu: showing start-screen\n"); time_t now = GET_TIME_MS(); @@ -69,7 +73,7 @@ void showStartScreen() void showLeaderboard() { - LOGI("menu: showing leaderboard\n"); + LOGD("menu: showing leaderboard\n"); //--- play crash sound --- //play audio file, wait until playback is finished @@ -84,7 +88,7 @@ void showLeaderboard() void showPauseScreen() { - LOGI("menu: showing leaderboard\n"); + LOGD("menu: showing leaderboard\n"); game.gameState = PAUSED; return; } @@ -92,7 +96,7 @@ void showPauseScreen() void showSettings() { - LOGI("menu: showing settings\n"); + LOGD("menu: showing settings\n"); time_t now = GET_TIME_MS(); @@ -110,7 +114,7 @@ void showSettings() void showInfoScreen() { - LOGI("menu: showing info-screen\n"); + LOGD("menu: showing info-screen\n"); time_t now = GET_TIME_MS(); @@ -125,11 +129,12 @@ void showInfoScreen() } // handle input over keyboard -// delete text at the and of one menu section +// delete text at the end of one menu section void menuHandleInput(SDL_Event event){ //compare 'handleInput_runningState(SDL_Event event)' in input.c switch(activeMenu) - { + { + // start case START: switch (event.key.keysym.sym) { @@ -148,13 +153,13 @@ void menuHandleInput(SDL_Event event){ } break; - + // settings case SETTINGS: switch(event.key.keysym.sym) { - case SDLK_q: // q: quit - game.gameState = EXIT; - break; + // case SDLK_q: // q: quit + // game.gameState = EXIT; + // break; case SDLK_F1: // go to info screen activeMenu = INFOSCREEN; @@ -166,19 +171,70 @@ void menuHandleInput(SDL_Event event){ } break; - case SDLK_RETURN: //start game - activeMenu = NONE; - game.gameState = RUNNING; - // delete text - for (int i = 0; i < MAX_LINES_TFF; ++i) + case SDLK_RETURN: // confirm user input or start game + + switch(ttlStorage.inputStatus) { - SDL_DestroyTexture(ttlStorage.textTextures[i]); - } + case 0: // confirm user name + // user must enter at least one letter + if(ttlStorage.textInput[0] != '\0') + { + ttlStorage.inputStatus++; + strcpy(ttlStorage.userName, ttlStorage.textInput); // copy textInput to userName + memset(ttlStorage.textInput, 0, sizeof(ttlStorage.textInput)); // clear textInput[] + } + break; + + case 1: // confirm difficulty level + // user input must be between 0 and 3 + if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) + { + ttlStorage.inputStatus++; + ttlStorage.userDifficultyLevel = ttlStorage.textInput[0] - '\0'; // copy textInput to userDifficultyLevel + } + memset(ttlStorage.textInput, 0, sizeof(ttlStorage.textInput)); // clear textInput[] + break; + + case 2: // confirm map + // user input must be between 0 and 3 + if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) + { + ttlStorage.inputStatus++; + ttlStorage.userSelectedMap = ttlStorage.textInput[0] - '\0'; // copy textInput to userSelectedMap + } + memset(ttlStorage.textInput, 0, sizeof(ttlStorage.textInput)); // clear textInput[] + break; + + case 3: // start game + activeMenu = NONE; + game.gameState = RUNNING; + // delete text + for (int i = 0; i < MAX_LINES_TFF; ++i) + { + SDL_DestroyTexture(ttlStorage.textTextures[i]); + } + break; + } + break; + + + default: // for user inputs + // keyboard input + if (event.type == SDL_TEXTINPUT) + { + strcat(ttlStorage.textInput, event.text.text); + } + // delete single inputs via backspace + else if (event.type == SDL_KEYDOWN && event.key.keysym.sym == SDLK_BACKSPACE && strlen(ttlStorage.textInput) > 0) + { + ttlStorage.textInput[strlen(ttlStorage.textInput) - 1] = '\0'; + } break; } break; + // info screen case INFOSCREEN: switch(event.key.keysym.sym) { @@ -198,7 +254,6 @@ void menuHandleInput(SDL_Event event){ break; } - return; } diff --git a/src/render.c b/src/render.c index f825458..102e051 100644 --- a/src/render.c +++ b/src/render.c @@ -213,65 +213,168 @@ void renderStartMenu() //-------------------SETTINGS----------------------------------- //-------------------------------------------------------------- void renderSettings() -{ +{ + int textWidth, textHeight; // auxiliary variables for printing + + // text in menu settings + static char* textLinesInMenu[MAX_LINES_SETTINGS] = { + "Fuer Infos zum Gameplay, sowie einigen Shortcuts druecken Sie bitte F1", + " ", + " ", + "Bitte geben Sie ihren Nickname ein: ", + " ", + " ", + "Bitte geben Sie ein Schwierigkeitslevel ein:", + "1 fuer Einfach - 2 fuer Fortgeschritten - 3 fuer Profi", + " ", + " ", + "Bitte waehlen Sie eine Map:", + "1 fuer Klein - 2 fuer Mittel - 3 fuer Gross", + " ", + "-- ENTER --" + }; + + //=========== only first loop ================ if(ttlStorage.lastTimeStep == 0) - { + { + printf("In first loop\n"); ttlStorage.ptrFont_20 = TTF_OpenFont("../fonts/Prototype.ttf", ttlStorage.fontSize_20); - - // text in start screen - const char* textLines[] = { - "Fuer Infos zum Gameplay, sowie einigen Shortcuts druecken Sie bitte F1", - " ", - //"Bitte geben Sie ihren Spielnamen ein: ", - "test", - "test", - "test", - "test", - "-- ENTER --" - }; - - // render setting screen - for (int i = 0; i < MAX_LINES_SETTINGS; ++i) - { - ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLines[i], ttlStorage.textColour[5]); - ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); - SDL_FreeSurface(ttlStorage.textSurface); - } + SDL_StartTextInput(); // start text input } + - //=========== is always performerd ================ - SDL_RenderClear(game.renderer); - - int textWidth, textHeight; - - // print settings - ttlStorage.textPrintPosition = 0; // first print position - for (int i = 0; i < (MAX_LINES_SETTINGS - 1); ++i) { + //=========dependent of which text is currently entered(userName, difficultyLevel, userSelectedMap) ========= + switch(ttlStorage.inputStatus) + { + //=== no user inputs === + case 0: + //--- rendering --- + for (int i = 0; i < 4; ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLinesInMenu[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + + } - SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, ttlStorage.textInput, ttlStorage.textColour[5]); + ttlStorage.textTextures[4] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + SDL_RenderClear(game.renderer); - SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; - SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); - ttlStorage.textPrintPosition += textHeight; // increase print position - } + //--- printing --- + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < 5; ++i) + { + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } + break; + + + // === one user input === + case 1: + textLinesInMenu[4] = ttlStorage.userName; + //--- rendering --- + for (int i = 0; i < 8; ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLinesInMenu[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + + } + + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, ttlStorage.textInput, ttlStorage.textColour[5]); + ttlStorage.textTextures[8] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + SDL_RenderClear(game.renderer); + + //---printing --- + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < 9; ++i) + { + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } + break; + + //=== two user inputs === + case 2: + textLinesInMenu[8] = &(ttlStorage.userDifficultyLevel); + //--- rendering --- + for (int i = 0; i < 12; ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLinesInMenu[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + + } + + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, ttlStorage.textInput, ttlStorage.textColour[5]); + ttlStorage.textTextures[12] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + SDL_RenderClear(game.renderer); + + //---printing --- + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < 13; ++i) + { + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } + break; + + //=== user inputs completely + case 3: + textLinesInMenu[12] = &(ttlStorage.userSelectedMap); + //--- rendering --- + for (int i = 0; i < (MAX_LINES_SETTINGS - 1); ++i) + { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLinesInMenu[i], ttlStorage.textColour[5]); + ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + + } + + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLinesInMenu[MAX_LINES_SETTINGS - 1], ttlStorage.textColour[5]); + ttlStorage.textTextures[MAX_LINES_SETTINGS - 1] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + SDL_FreeSurface(ttlStorage.textSurface); + SDL_RenderClear(game.renderer); + + //---printing --- + ttlStorage.textPrintPosition = 0; // first print position + for (int i = 0; i < (MAX_LINES_SETTINGS - 1); ++i) + { + SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect = { 1, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[i], NULL, &dstRect); + ttlStorage.textPrintPosition += textHeight; // increase print position + } //print ENTER every second cycle - if(ttlStorage.showEnter) - { - ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER - SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, NULL, &textWidth, &textHeight); - SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; - SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, &dstRect1); - } - - // update screen + if(ttlStorage.showEnter) + { + ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, NULL, &textWidth, &textHeight); + SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_SETTINGS-1], NULL, &dstRect1); + } + break; + } + + // update screen SDL_RenderPresent(game.renderer); ttlStorage.lastTimeStep = GET_TIME_MS(); return; - } //-------------------------------------------------------------- @@ -284,27 +387,28 @@ void renderInfoScreen() { // text in start screen const char* textLines[] = { - " Steuerung: W (nach oben)", + " STEUERUNG: W (nach oben)", " A (nach links)", " S (nach unten)", " D (nach rechts) ", - " oder: Pfeiltasten ", + " oder: Pfeiltasten ", " ", " ", - " Pause: p", - " oder: Leertaste", + " PAUSE: p", + " oder: Leertaste", " ", " ", - "Spiel verlassen: q ", + "SPIEL VERLASSEN: q ", " ", " ", " ", "By Jonas Schoenberger, Johannes Graf und Julia Steinberger", "-- ENTER --" }; - + + // render setting screen - for (int i = 0; i < MAX_LINE_INFOSCREEN; ++i) + for (int i = 0; i < MAX_LINES_INFOSCREEN; ++i) { ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_20, textLines[i], ttlStorage.textColour[5]); ttlStorage.textTextures[i] = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); @@ -320,7 +424,7 @@ void renderInfoScreen() // print settings ttlStorage.textPrintPosition = 0; // first print position - for (int i = 0; i < (MAX_LINE_INFOSCREEN - 1); ++i) { + for (int i = 0; i < (MAX_LINES_INFOSCREEN - 1); ++i) { SDL_QueryTexture(ttlStorage.textTextures[i], NULL, NULL, &textWidth, &textHeight); @@ -333,9 +437,9 @@ void renderInfoScreen() if(ttlStorage.showEnter) { ttlStorage.textPrintPosition = (config.windowSize / 1.5); // print position for ENTER - SDL_QueryTexture(ttlStorage.textTextures[MAX_LINE_INFOSCREEN-1], NULL, NULL, &textWidth, &textHeight); + SDL_QueryTexture(ttlStorage.textTextures[MAX_LINES_INFOSCREEN-1], NULL, NULL, &textWidth, &textHeight); SDL_Rect dstRect1 = { (config.windowSize - textWidth) / 2, ttlStorage.textPrintPosition, textWidth, textHeight }; - SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINE_INFOSCREEN-1], NULL, &dstRect1); + SDL_RenderCopy(game.renderer, ttlStorage.textTextures[MAX_LINES_INFOSCREEN-1], NULL, &dstRect1); } From f6619d12890f72cea11ce83f3e77600cec10a27c Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 01:42:13 +0100 Subject: [PATCH 13/32] Add difficulty level and start map - game speed(cycleDurationMs) and food placement depend on difficulty level - start map would be chosen at the beginning - switching maps and game speed(cycleDurationMs) is not available during playing --- include/menu.h | 7 ++++--- src/game.c | 4 +++- src/input.c | 22 +++++++++++----------- src/main.cpp | 2 +- src/menu.c | 20 ++++++++++++++------ src/render.c | 11 +++++++---- 6 files changed, 40 insertions(+), 26 deletions(-) diff --git a/include/menu.h b/include/menu.h index c5268c0..5a487e1 100644 --- a/include/menu.h +++ b/include/menu.h @@ -46,9 +46,10 @@ typedef struct tllData_t bool showEnter; // ENTER should be printed only every second cycle int inputStatus; // 1 if player name was entered; 2 if difficulty level was entered, 3 map was entered char textInput[TEXT_INPUT_SIZE]; // auxiliary variable for user input - char userName[TEXT_INPUT_SIZE]; // user name - int userDifficultyLevel; // difficulty level which was entered by user - int userSelectedMap; // map which was entered by user + char numbers[2][TEXT_INPUT_SIZE]; // auxiliary variable to store entered textInput-number into local pointer 'textLinesInMenu' in render.c + char userName[TEXT_INPUT_SIZE]; // user name + int userDifficultyLevel; // difficulty level which was entered by user + int userSelectedMap; // map which was entered by user } ttlData_t; extern ttlData_t ttlStorage; diff --git a/src/game.c b/src/game.c index 907e9f1..5a85809 100644 --- a/src/game.c +++ b/src/game.c @@ -43,7 +43,9 @@ void gameInit() //load default map if no map loaded yet if (!game.mapIsLoaded){ //loadMapByName("default"); - loadMapByName(config.defaultMapName); + + //loadMapByName(config.defaultMapName); + loadMap(*storedMaps[ttlStorage.userSelectedMap - 1]); } //----- snake ----- diff --git a/src/input.c b/src/input.c index d39e656..c72f800 100644 --- a/src/input.c +++ b/src/input.c @@ -52,19 +52,19 @@ void handleInput_runningState(SDL_Event event) snakeSetDir(RIGHT); break; - case SDLK_m: // m: cycle through maps - rotateMapNext(); - break; + // case SDLK_m: // m: cycle through maps + // rotateMapNext(); + // break; - case SDLK_2: // 2: speed up game by increment - config.cycleDurationMs -= sqrt(config.cycleDurationMs) + 1; - if (config.cycleDurationMs < 20) - config.cycleDurationMs = 20; - break; + // case SDLK_2: // 2: speed up game by increment + // config.cycleDurationMs -= sqrt(config.cycleDurationMs) + 1; + // if (config.cycleDurationMs < 20) + // config.cycleDurationMs = 20; + // break; - case SDLK_1: // 1: slow down game by increment - config.cycleDurationMs += 50; - break; + // case SDLK_1: // 1: slow down game by increment + // config.cycleDurationMs += 50; + // break; default: LOGD("input: key %d is not handled in RUNNING mode\n", event.key.keysym.sym); diff --git a/src/main.cpp b/src/main.cpp index 56ba0c2..491e532 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -31,7 +31,7 @@ extern "C" int main(int argc, char *argv[]) { - gameInit(); + // gameInit(); is removed in menu.c // Initialisiere SDL if (SDL_Init(SDL_INIT_VIDEO) < 0) { diff --git a/src/menu.c b/src/menu.c index 80b4728..df76b0f 100644 --- a/src/menu.c +++ b/src/menu.c @@ -186,21 +186,23 @@ void menuHandleInput(SDL_Event event){ break; case 1: // confirm difficulty level - // user input must be between 0 and 3 + // user input must be between 1 and 3 if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) - { + { ttlStorage.inputStatus++; - ttlStorage.userDifficultyLevel = ttlStorage.textInput[0] - '\0'; // copy textInput to userDifficultyLevel + strcpy(ttlStorage.numbers[0], ttlStorage.textInput); // copy textInput to userDifficultyLevel + ttlStorage.userDifficultyLevel = ttlStorage.textInput[0] - '0'; // copy textInput to userDifficultyLevel } memset(ttlStorage.textInput, 0, sizeof(ttlStorage.textInput)); // clear textInput[] break; case 2: // confirm map - // user input must be between 0 and 3 + // user input must be between 1 and 3 if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) - { + { ttlStorage.inputStatus++; - ttlStorage.userSelectedMap = ttlStorage.textInput[0] - '\0'; // copy textInput to userSelectedMap + strcpy(ttlStorage.numbers[1], ttlStorage.textInput); // copy textInput to userSelectedMap + ttlStorage.userSelectedMap = ttlStorage.textInput[0] - '0'; // copy textInput to userSelectedMap } memset(ttlStorage.textInput, 0, sizeof(ttlStorage.textInput)); // clear textInput[] break; @@ -213,6 +215,12 @@ void menuHandleInput(SDL_Event event){ { SDL_DestroyTexture(ttlStorage.textTextures[i]); } + + // initialize game + config.difficulty = ttlStorage.userDifficultyLevel; + config.cycleDurationMs = config.cycleDurationMs / sqrt(config.difficulty); + gameInit(); + break; } break; diff --git a/src/render.c b/src/render.c index 102e051..bc53d78 100644 --- a/src/render.c +++ b/src/render.c @@ -225,11 +225,11 @@ void renderSettings() " ", " ", "Bitte geben Sie ein Schwierigkeitslevel ein:", - "1 fuer Einfach - 2 fuer Fortgeschritten - 3 fuer Profi", + "1 fuer Beginner - 2 fuer Fortgeschrittener - 3 fuer Profi", " ", " ", "Bitte waehlen Sie eine Map:", - "1 fuer Klein - 2 fuer Mittel - 3 fuer Gross", + "1 fuer Standard - 2 fuer Leer - 3 fuer Intermediate", " ", "-- ENTER --" }; @@ -306,7 +306,7 @@ void renderSettings() //=== two user inputs === case 2: - textLinesInMenu[8] = &(ttlStorage.userDifficultyLevel); + textLinesInMenu[8] = ttlStorage.numbers[0]; //--- rendering --- for (int i = 0; i < 12; ++i) { @@ -334,7 +334,7 @@ void renderSettings() //=== user inputs completely case 3: - textLinesInMenu[12] = &(ttlStorage.userSelectedMap); + textLinesInMenu[12] = ttlStorage.numbers[1]; //--- rendering --- for (int i = 0; i < (MAX_LINES_SETTINGS - 1); ++i) { @@ -450,7 +450,10 @@ void renderInfoScreen() return; } +void renderLeaderboard() +{ +} int CreateSDLWindow(){ // Erstelle ein SDL-Fenster From 7acb37824ea8ebe37cc9240f8290d5a0fb23d0b0 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 03:16:36 +0100 Subject: [PATCH 14/32] Minor fixes --- include/game.h | 18 ++++++++++++++++-- include/menu.h | 5 +++-- src/game.c | 37 ++++++++++++++++++++++++++++++++++++- src/input.c | 2 +- src/menu.c | 2 ++ 5 files changed, 58 insertions(+), 6 deletions(-) diff --git a/include/game.h b/include/game.h index e34e021..f30aff7 100644 --- a/include/game.h +++ b/include/game.h @@ -1,5 +1,6 @@ #pragma once #include +#include #include "snake.h" #include "config.h" @@ -31,10 +32,20 @@ typedef struct gameData_t gameState_t gameState; // state the game is in } gameData_t; + +// struct that store player score at the end of the game +typedef struct playerScore_t +{ + int score; + char playerName[30]; + int difficulty; + char map[30]; +} playerScore_t; + + // global struct for storing all game data (defined in game.c) extern gameData_t game; - // run once at game start and does the following: // - init snake // - load map @@ -50,4 +61,7 @@ void handlePortals(); //(ran in gameCycle) // - moves snake to next position // - handles collision, portals, food // - triggers frame update (render.c) -void runGameCycle(); \ No newline at end of file +void runGameCycle(); + +// function which saves score in a .csv file + // void savePlayerScore() \ No newline at end of file diff --git a/include/menu.h b/include/menu.h index 5a487e1..086960d 100644 --- a/include/menu.h +++ b/include/menu.h @@ -56,12 +56,13 @@ extern ttlData_t ttlStorage; extern menus_t activeMenu; + + + // edit various menus // is called up in main.cpp void manageMenu(); - - void showStartScreen(); //zum Starten Enter drücken //optional: "E" eingeben für Settings diff --git a/src/game.c b/src/game.c index 5a85809..10c11b4 100644 --- a/src/game.c +++ b/src/game.c @@ -111,6 +111,7 @@ void runGameCycle() // TODO consider game.lifesRemaining and reset if still good? LOGI("game: collided with wall or self! => show leaderboard\n"); //game.gameState = MENU; //TODO add config.collisionEnabled option? + //savePlayerScore(/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); showLeaderboard(); return; } @@ -134,4 +135,38 @@ void runGameCycle() printMap(game.map); //render game to console #endif return; -} \ No newline at end of file +} + + +//========================== +//==== savePlayerScores ==== +//========================== +// void savePlayerScore(/*int score, int difficulty, const char *playerName, const char *map*/) +// { +// // playerScore_t playerScore; + +// // // copy data into struct +// // playerScore.score = game.snake.length - config.snakeDefaultLength; +// // playerScore.difficulty = config.difficulty; +// // strcpy(playerScore.playerName, ttlStorage.userName); +// // strcpy(playerScore.map, "testmap"); + + +// // FILE *file; +// // // open file +// // file = fopen("../player_scores.bin", "ab"); + +// // // write data in file +// // if (file != NULL) +// // { +// // fwrite(&playerScore, sizeof(playerScore_t), 1, file); +// // fclose(file); + +// // LOGI("Spielergebnis wurde erfolgreich in die Binärdatei gespeichert.\n"); +// // } +// // else +// // { +// // LOGI("Fehler beim Öffnen der Datei!\n"); +// // } +// } + diff --git a/src/input.c b/src/input.c index c72f800..ce17f8a 100644 --- a/src/input.c +++ b/src/input.c @@ -1,5 +1,5 @@ #include - +#include "render.h" #include "input.h" #include "common.h" #include "SDL.h" diff --git a/src/menu.c b/src/menu.c index df76b0f..81ba624 100644 --- a/src/menu.c +++ b/src/menu.c @@ -3,6 +3,7 @@ #include "sound.h" #include "common.h" #include +#include //#include @@ -56,6 +57,7 @@ void manageMenu() // shows start screen with blinking ENTER void showStartScreen() + { LOGD("menu: showing start-screen\n"); From b5e85de24cc19e5aef8338bf72ef04c82dc98385 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 04:47:44 +0100 Subject: [PATCH 15/32] Add module 'files' - write score after death - read a number of scores --- CMakeLists.txt | 1 + include/files.h | 26 +++++++++ include/game.h | 13 +---- src/files.c | 147 ++++++++++++++++++++++++++++++++++++++++++++++++ src/game.c | 41 ++------------ src/menu.c | 1 + 6 files changed, 183 insertions(+), 46 deletions(-) create mode 100644 include/files.h create mode 100644 src/files.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 9f9cc51..e776c8b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,6 +53,7 @@ set(SOURCES src/common.c src/sound.c src/difficulty.c + src/files.c ) diff --git a/include/files.h b/include/files.h new file mode 100644 index 0000000..0c3f0c0 --- /dev/null +++ b/include/files.h @@ -0,0 +1,26 @@ +#pragma once +#include "config.h" + +#define MAX_PRINTED_SCORES 5 + + +// struct that store player score at the end of the game +typedef struct playerScore_t +{ + int score; + char playerName[30]; + int difficulty; + char map[30]; +} playerScore_t; + +// global struct for storing the 10 best players after reading it from the file (defined in files.c) +extern playerScore_t topScores[MAX_PRINTED_SCORES]; + +// function which saves score in a .bin file +void savePlayerScore(const char *filename); + +// function which reads the 10 best finisher from the .bin file +void readTopScores(const char *filename); + +// counts records in file +int countRecordsInFile(const char *filename); \ No newline at end of file diff --git a/include/game.h b/include/game.h index f30aff7..9a971d8 100644 --- a/include/game.h +++ b/include/game.h @@ -33,19 +33,14 @@ typedef struct gameData_t } gameData_t; -// struct that store player score at the end of the game -typedef struct playerScore_t -{ - int score; - char playerName[30]; - int difficulty; - char map[30]; -} playerScore_t; + // global struct for storing all game data (defined in game.c) extern gameData_t game; + + // run once at game start and does the following: // - init snake // - load map @@ -63,5 +58,3 @@ void handlePortals(); //(ran in gameCycle) // - triggers frame update (render.c) void runGameCycle(); -// function which saves score in a .csv file - // void savePlayerScore() \ No newline at end of file diff --git a/src/files.c b/src/files.c new file mode 100644 index 0000000..615140b --- /dev/null +++ b/src/files.c @@ -0,0 +1,147 @@ +#include "game.h" +#include "menu.h" +#include "files.h" + + + +//global struct for storing all data of the 10 best players +playerScore_t topScores[]; + + + +//========================== +//==== savePlayerScores ==== +//========================== + void savePlayerScore(const char *filename/*int score, int difficulty, const char *playerName, const char *map*/) + { + playerScore_t playerScore; + + // copy data into struct + playerScore.score = game.snake.length - config.snakeDefaultLength; + playerScore.difficulty = config.difficulty; + strcpy(playerScore.playerName, ttlStorage.userName); + strcpy(playerScore.map, "testmap"); + + + FILE *file; + // open file + file = fopen(filename, "ab"); + + // write data in file + if (file != NULL) + { + fwrite(&playerScore, sizeof(playerScore_t), 1, file); + fclose(file); + + LOGI("Spielergebnis wurde erfolgreich in die Binaerdatei gespeichert.\n"); + } + else + { + LOGI("Fehler beim Öffnen der Datei!\n"); + } +} + + +//========================== +//==== readTopScores ====== +//========================== +// number of reads depends on 'MAX_PRINTED_SCORES' +void readTopScores(const char *filename) +{ + FILE *filePtr; + playerScore_t tempPlayerScore; + int recordsInFile; + int highestPlayerScore; + int count = 0; // increase up to 'MAX_PRINTED_SCORES' + + // determine the number of contents in the file + recordsInFile = countRecordsInFile(filename); + // if failure + if(recordsInFile == -1) + { + game.gameState = EXIT; + return; + } + + filePtr = fopen(filename, "rb"); + + // fail with file opening + if (filePtr == NULL) + { + LOGI("Datei: Fehler beim Öffnen der Datei für die besten 10 Ergebnisse!\n"); + game.gameState = EXIT; + return; + } + + + LOGI("Datensaetze in Datei: %d\n", recordsInFile); + + + //---- search for the highest score------ + for (int i = 0; i < recordsInFile; i++) + { + fread(&tempPlayerScore, sizeof(playerScore_t), 1, filePtr); + if(tempPlayerScore.score > highestPlayerScore) + { + highestPlayerScore == tempPlayerScore.score; + } + } + + //--- decrease highest score ----- + while((count < MAX_PRINTED_SCORES) && (count < MAX_PRINTED_SCORES)) + { + // set file pointer to start of the file + rewind(filePtr); + + // search for the highest score and then save it in topScores + for (int i = 0; i < recordsInFile; i++) + { + fread(&tempPlayerScore, sizeof(playerScore_t), 1, filePtr); + + // current highscore found + if(tempPlayerScore.score == highestPlayerScore) + { + topScores[count] = tempPlayerScore; + LOGI("score: %d name: %s schwierigkeit: %d map: %s\n", topScores[count].score, topScores[count].playerName, topScores[count].difficulty, topScores[count].map); + count++; + } + + // leave if MAX_PRINTED_SCORES is reached + if(count >= MAX_PRINTED_SCORES) + { + break; + } + } + highestPlayerScore--; + } + + fclose(filePtr); +} + + + +//========================== +//==== readTop10Scores ===== +//========================== +// return the number of various scores of the file +int countRecordsInFile(const char *filename) +{ + FILE *file; + file = fopen(filename, "rb"); + + // failure + if (file == NULL) + { + LOGI("Datei: Fehler beim Öffnen der Datei!\n"); + return -1; + } + + fseek(file, 0, SEEK_END); // Gehe zum Dateiende + long fileSize = ftell(file); // Hole die Größe der Datei in Bytes + fclose(file); + + int recordSize = sizeof(playerScore_t); + int numberOfRecords = fileSize / recordSize; // Berechne die Anzahl der Datensätze + + return numberOfRecords; +} diff --git a/src/game.c b/src/game.c index 10c11b4..d416fb2 100644 --- a/src/game.c +++ b/src/game.c @@ -5,6 +5,7 @@ #include "food.h" #include "render.h" #include "sound.h" +#include "files.h" // global struct for storing all game data @@ -111,8 +112,10 @@ void runGameCycle() // TODO consider game.lifesRemaining and reset if still good? LOGI("game: collided with wall or self! => show leaderboard\n"); //game.gameState = MENU; //TODO add config.collisionEnabled option? - //savePlayerScore(/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); - showLeaderboard(); + savePlayerScore("../build/player_scores.bin"/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); + readTopScores("../build/player_scores.bin"); + game.gameState = MENU; + activeMenu = LEADERBOARD; return; } @@ -136,37 +139,3 @@ void runGameCycle() #endif return; } - - -//========================== -//==== savePlayerScores ==== -//========================== -// void savePlayerScore(/*int score, int difficulty, const char *playerName, const char *map*/) -// { -// // playerScore_t playerScore; - -// // // copy data into struct -// // playerScore.score = game.snake.length - config.snakeDefaultLength; -// // playerScore.difficulty = config.difficulty; -// // strcpy(playerScore.playerName, ttlStorage.userName); -// // strcpy(playerScore.map, "testmap"); - - -// // FILE *file; -// // // open file -// // file = fopen("../player_scores.bin", "ab"); - -// // // write data in file -// // if (file != NULL) -// // { -// // fwrite(&playerScore, sizeof(playerScore_t), 1, file); -// // fclose(file); - -// // LOGI("Spielergebnis wurde erfolgreich in die Binärdatei gespeichert.\n"); -// // } -// // else -// // { -// // LOGI("Fehler beim Öffnen der Datei!\n"); -// // } -// } - diff --git a/src/menu.c b/src/menu.c index 81ba624..4f3e66a 100644 --- a/src/menu.c +++ b/src/menu.c @@ -77,6 +77,7 @@ void showLeaderboard() { LOGD("menu: showing leaderboard\n"); + //--- play crash sound --- //play audio file, wait until playback is finished //note: when displaying actual leaderboard, the second parameter should be 'false' to not block the program From 18feb2ec62fd39eb84e51fd0fa1f26b4ab9720fe Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 07:22:01 +0100 Subject: [PATCH 16/32] Add Leaderboard - it is only possible to close with clicking on 'X' with mouse --- include/render.h | 4 +- src/files.c | 4 +- src/game.c | 4 ++ src/menu.c | 14 +++--- src/render.c | 115 +++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 134 insertions(+), 7 deletions(-) diff --git a/include/render.h b/include/render.h index 081f034..1cbed2b 100644 --- a/include/render.h +++ b/include/render.h @@ -17,4 +17,6 @@ void renderStartMenu(); void renderSettings(); -void renderInfoScreen(); \ No newline at end of file +void renderInfoScreen(); + +void renderLeaderboard(); \ No newline at end of file diff --git a/src/files.c b/src/files.c index 615140b..0cd5d4f 100644 --- a/src/files.c +++ b/src/files.c @@ -20,7 +20,9 @@ playerScore_t topScores[]; playerScore.score = game.snake.length - config.snakeDefaultLength; playerScore.difficulty = config.difficulty; strcpy(playerScore.playerName, ttlStorage.userName); - strcpy(playerScore.map, "testmap"); + //strcpy(playerScore.map, "testmap"); + + strcpy(playerScore.map, storedMaps[ttlStorage.userSelectedMap - 1]->name); FILE *file; diff --git a/src/game.c b/src/game.c index d416fb2..d4e0a3c 100644 --- a/src/game.c +++ b/src/game.c @@ -116,6 +116,10 @@ void runGameCycle() readTopScores("../build/player_scores.bin"); game.gameState = MENU; activeMenu = LEADERBOARD; + + // cut out of showLeaderboard() + playSound("../sounds/crash_rock-cinematic.wav", true); + DELAY(100); return; } diff --git a/src/menu.c b/src/menu.c index 4f3e66a..4c71f51 100644 --- a/src/menu.c +++ b/src/menu.c @@ -77,16 +77,17 @@ void showLeaderboard() { LOGD("menu: showing leaderboard\n"); - + //--- play crash sound --- //play audio file, wait until playback is finished //note: when displaying actual leaderboard, the second parameter should be 'false' to not block the program - playSound("../sounds/crash_rock-cinematic.wav", true); - DELAY(100); - //--- quit game --- - game.gameState = EXIT; + + renderLeaderboard(); + return; + + } void showPauseScreen() @@ -163,6 +164,9 @@ void menuHandleInput(SDL_Event event){ // case SDLK_q: // q: quit // game.gameState = EXIT; // break; + case SDLK_F2: + activeMenu = LEADERBOARD; + break; case SDLK_F1: // go to info screen activeMenu = INFOSCREEN; diff --git a/src/render.c b/src/render.c index bc53d78..3577e9d 100644 --- a/src/render.c +++ b/src/render.c @@ -6,6 +6,7 @@ #include "config.h" #include "menu.h" #include "common.h" +#include "files.h" #include @@ -452,9 +453,123 @@ void renderInfoScreen() void renderLeaderboard() { +#define NUM_COLUMNS 4 + char* menuDescription[] ={"LEADERBOARD"}; + char* columnDescriptions[NUM_COLUMNS] = + { + "Score", + "Spieler", + "Schwierigkeitslevel", + "Map" + }; + + SDL_SetRenderDrawColor(game.renderer, 0, 0, 0, 255); + SDL_RenderClear(game.renderer); + + int rowHeight = config.windowSize / (MAX_PRINTED_SCORES * 10); // Höhe einer Zeile + int columnWidth = config.windowSize / NUM_COLUMNS; // Breite einer Spalte + int textWidth, textHeight; + + + // rendering 'LEADERBOARD' + + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, menuDescription[0], ttlStorage.textColour[5]); + ttlStorage.textTexture = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + + SDL_QueryTexture(ttlStorage.textTexture, NULL, NULL, &textWidth, &textHeight); + + SDL_Rect dstRect = {1 , 0, textWidth, textHeight }; + SDL_RenderCopy(game.renderer, ttlStorage.textTexture, NULL, &dstRect); + + SDL_FreeSurface(ttlStorage.textSurface); + SDL_DestroyTexture(ttlStorage.textTexture); + + + // rendering columns description + for (int i = 0; i < NUM_COLUMNS; ++i) { + ttlStorage.textSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, columnDescriptions[i], ttlStorage.textColour[5]); + ttlStorage.textTexture = SDL_CreateTextureFromSurface(game.renderer, ttlStorage.textSurface); + + SDL_Rect textRect; + textRect.x = i * columnWidth + (columnWidth - ttlStorage.textSurface->w) / 2 - 30; // Zentrieren + textRect.y = 50; // Y-Koordinate für die Spaltenbeschreibung + textRect.w = ttlStorage.textSurface->w; + textRect.h = ttlStorage.textSurface->h; + + SDL_RenderCopy(game.renderer, ttlStorage.textTexture, NULL, &textRect); + + SDL_FreeSurface(ttlStorage.textSurface); + SDL_DestroyTexture(ttlStorage.textTexture); + } + + // rendering score data + for (int i = 0; i < MAX_PRINTED_SCORES; ++i) { + char playerName[50]; // temporary buffer for text + char map[50]; // temporary buffer for text + strcpy(playerName, topScores[i].playerName); + strcpy(map, topScores[i].map); + + // player name + SDL_Surface* playerNameSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, playerName, ttlStorage.textColour[5]); + SDL_Texture* playerNameTexture = SDL_CreateTextureFromSurface(game.renderer, playerNameSurface); + + // map name + SDL_Surface* mapSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, map, ttlStorage.textColour[5]); + SDL_Texture* mapTexture = SDL_CreateTextureFromSurface(game.renderer, mapSurface); + + + // score + SDL_Surface *scoreSurface = NULL; + char numberScore[30]; // buffer for number 'score' + snprintf(numberScore, sizeof(numberScore), "%d", topScores[i].score); + scoreSurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, numberScore, ttlStorage.textColour[5]); + SDL_Texture *numberTexture1 = SDL_CreateTextureFromSurface(game.renderer, scoreSurface); + + // difficulty + SDL_Surface *difficultySurface = NULL; + char numberDifficulty[30]; // buffer for number 'difficulty' + snprintf(numberDifficulty, sizeof(numberDifficulty), "%d", topScores->difficulty); + difficultySurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, numberDifficulty, ttlStorage.textColour[5]); + SDL_Texture *numberTexture2 = SDL_CreateTextureFromSurface(game.renderer, difficultySurface); + + int numberS = 70; //x distance + int textPlayer = 220; //x distance + int numberD = 470; //x distance + int textMap = 620; //x distance + int y = 90 + i*30; //y distance + + SDL_Rect scoreRect = {numberS, y, scoreSurface->w, scoreSurface->h}; + SDL_Rect playerNameRect = {textPlayer, y, playerNameSurface->w, playerNameSurface->h }; + SDL_Rect difficultyRect = {numberD, y, difficultySurface->w, difficultySurface->h}; + SDL_Rect mapNameRect = {textMap, y, mapSurface->w, mapSurface->h }; + + SDL_RenderCopy(game.renderer, numberTexture1, NULL, &scoreRect); + SDL_RenderCopy(game.renderer, playerNameTexture, NULL, &playerNameRect); + SDL_RenderCopy(game.renderer, numberTexture2, NULL, &difficultyRect); + SDL_RenderCopy(game.renderer, mapTexture, NULL, &mapNameRect); + + SDL_FreeSurface(playerNameSurface); + SDL_FreeSurface(mapSurface); + SDL_FreeSurface(scoreSurface); + SDL_FreeSurface(difficultySurface); + + SDL_DestroyTexture(playerNameTexture); + SDL_DestroyTexture(mapTexture); + SDL_DestroyTexture(numberTexture1); + SDL_DestroyTexture(numberTexture2); + + + + + } + SDL_RenderPresent(game.renderer); + } + + + int CreateSDLWindow(){ // Erstelle ein SDL-Fenster game.window = SDL_CreateWindow("Snake", 350, 50, config.windowSize, config.windowSize, SDL_WINDOW_OPENGL); From 747b949218a40593c70103a683142041f5bf5b16 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Mon, 18 Dec 2023 07:44:03 +0100 Subject: [PATCH 17/32] Add pause function - press 'p' or 'space' for pause+ - it goes on with pressing any key --- src/input.c | 10 ++++++++-- src/main.cpp | 5 ++++- src/menu.c | 12 +++++++++--- src/render.c | 8 ++++---- 4 files changed, 25 insertions(+), 10 deletions(-) diff --git a/src/input.c b/src/input.c index ce17f8a..f9b039b 100644 --- a/src/input.c +++ b/src/input.c @@ -27,8 +27,13 @@ void handleInput_runningState(SDL_Event event) case SDLK_p: // p: pause case SDLK_ESCAPE: - game.gameState = PAUSED; - showPauseScreen(); + case SDLK_SPACE: + if(game.gameState == RUNNING) + { + game.gameState = PAUSED; + showPauseScreen(); + } + break; //--- control snake direction --- @@ -105,6 +110,7 @@ void processInputEvent() handleInput_runningState(event); break; case PAUSED: + game.gameState = RUNNING; case MENU: // pass key event to menu handle function which updates menu menuHandleInput(event); diff --git a/src/main.cpp b/src/main.cpp index 491e532..08e3673 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -61,7 +61,10 @@ int main(int argc, char *argv[]) { manageMenu(); } - + if(game.gameState == PAUSE) + { + printf("PAuse\n"); + } if (game.gameState == RUNNING) { now = GET_TIME_MS(); // Timer startet diff = now-game.timestampLastCycle; diff --git a/src/menu.c b/src/menu.c index 4c71f51..93020ab 100644 --- a/src/menu.c +++ b/src/menu.c @@ -164,9 +164,6 @@ void menuHandleInput(SDL_Event event){ // case SDLK_q: // q: quit // game.gameState = EXIT; // break; - case SDLK_F2: - activeMenu = LEADERBOARD; - break; case SDLK_F1: // go to info screen activeMenu = INFOSCREEN; @@ -267,6 +264,15 @@ void menuHandleInput(SDL_Event event){ } } break; + + case LEADERBOARD: + switch(event.key.keysym.sym) + { + case SDLK_q: // q: quit + case SDLK_RETURN: + game.gameState = EXIT; + } + break; } return; diff --git a/src/render.c b/src/render.c index 3577e9d..79e4ca7 100644 --- a/src/render.c +++ b/src/render.c @@ -451,6 +451,10 @@ void renderInfoScreen() return; } + +//-------------------------------------------------------------- +//-------------------RENDER LEADERBOARD------------------------- +//-------------------------------------------------------------- void renderLeaderboard() { #define NUM_COLUMNS 4 @@ -558,10 +562,6 @@ void renderLeaderboard() SDL_DestroyTexture(mapTexture); SDL_DestroyTexture(numberTexture1); SDL_DestroyTexture(numberTexture2); - - - - } SDL_RenderPresent(game.renderer); From 4ea40d99d23e9c01a4a3eb91b3af3dff9ec41edd Mon Sep 17 00:00:00 2001 From: jonny_l480 Date: Mon, 18 Dec 2023 14:13:42 +0100 Subject: [PATCH 18/32] Fix delay after crash (play crash sound async) --- src/game.c | 11 +++++------ src/render.c | 2 +- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/game.c b/src/game.c index d4e0a3c..e17ecd8 100644 --- a/src/game.c +++ b/src/game.c @@ -108,18 +108,17 @@ void runGameCycle() //--- handle collision --- //collision with map object or snake tail if (checkCollides(game.map, game.snake.headX, game.snake.headY) || !snakeIsAlive()){ - // show leaderboard when collided // TODO consider game.lifesRemaining and reset if still good? + //--- play crash sound --- LOGI("game: collided with wall or self! => show leaderboard\n"); + playSound("../sounds/crash_rock-cinematic.wav", false); + DELAY(200); + //--- leaderboard --- //game.gameState = MENU; //TODO add config.collisionEnabled option? savePlayerScore("../build/player_scores.bin"/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); readTopScores("../build/player_scores.bin"); game.gameState = MENU; activeMenu = LEADERBOARD; - - // cut out of showLeaderboard() - playSound("../sounds/crash_rock-cinematic.wav", true); - DELAY(100); return; } @@ -134,7 +133,7 @@ void runGameCycle() // NOTE: order of place and grow is relevant, otherwise function in food.c will access invalid memory placeFood(); snakeGrow(); -} + } //--- update frame --- renderGame(); diff --git a/src/render.c b/src/render.c index 79e4ca7..3fe1565 100644 --- a/src/render.c +++ b/src/render.c @@ -533,7 +533,7 @@ void renderLeaderboard() // difficulty SDL_Surface *difficultySurface = NULL; char numberDifficulty[30]; // buffer for number 'difficulty' - snprintf(numberDifficulty, sizeof(numberDifficulty), "%d", topScores->difficulty); + snprintf(numberDifficulty, sizeof(numberDifficulty), "%d", topScores[i].difficulty); difficultySurface = TTF_RenderText_Solid(ttlStorage.ptrFont_30, numberDifficulty, ttlStorage.textColour[5]); SDL_Texture *numberTexture2 = SDL_CreateTextureFromSurface(game.renderer, difficultySurface); From 778c69f67aa0332221b9ce1ecf5ccab83de9e850 Mon Sep 17 00:00:00 2001 From: jonny-vb Date: Tue, 19 Dec 2023 09:40:39 -0800 Subject: [PATCH 19/32] Change file strcture: Add assets folder Change file strcture to make creating a release easier: - files: move all resources needed by the executable to the folder assets - cmake: copy the assets folder to build folder after compilation - adjust all filepaths in source files --- CMakeLists.txt | 6 ++++- {fonts => assets/fonts}/CenturyGothic.ttf | Bin {fonts => assets/fonts}/Prototype.ttf | Bin {fonts => assets/fonts}/Quirkus.ttf | Bin {fonts => assets/fonts}/ZIPERHEA.ttf | Bin assets/player_scores.bin | Bin 0 -> 360 bytes .../sounds}/crash_rock-cinematic.wav | Bin {sounds => assets/sounds}/eat-bite1.wav | Bin {sounds => assets/sounds}/eat-bite2.wav | Bin {sounds => assets/sounds}/eat-crunch1.wav | Bin {sounds => assets/sounds}/eat-crunch2.wav | Bin {sounds => assets/sounds}/portal1_short.wav | Bin .../sounds}/portal2_oscillate.wav | Bin {sounds => assets/sounds}/portal3_in-out.wav | Bin {sounds => assets/sounds}/portal4_ramp.wav | Bin {sounds => assets/sounds}/space-gun.wav | Bin src/config.c | 2 +- src/game.c | 24 +++++++++--------- src/render.c | 6 ++--- 19 files changed, 21 insertions(+), 17 deletions(-) rename {fonts => assets/fonts}/CenturyGothic.ttf (100%) rename {fonts => assets/fonts}/Prototype.ttf (100%) rename {fonts => assets/fonts}/Quirkus.ttf (100%) rename {fonts => assets/fonts}/ZIPERHEA.ttf (100%) create mode 100644 assets/player_scores.bin rename {sounds => assets/sounds}/crash_rock-cinematic.wav (100%) rename {sounds => assets/sounds}/eat-bite1.wav (100%) rename {sounds => assets/sounds}/eat-bite2.wav (100%) rename {sounds => assets/sounds}/eat-crunch1.wav (100%) rename {sounds => assets/sounds}/eat-crunch2.wav (100%) rename {sounds => assets/sounds}/portal1_short.wav (100%) rename {sounds => assets/sounds}/portal2_oscillate.wav (100%) rename {sounds => assets/sounds}/portal3_in-out.wav (100%) rename {sounds => assets/sounds}/portal4_ramp.wav (100%) rename {sounds => assets/sounds}/space-gun.wav (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index e776c8b..d55b362 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,6 @@ endif() # --- Locate SDL2 --- # Uses SDL2_DIR on Windows, on Linux it's found automatically -# Locate SDL2 find_package(SDL2 REQUIRED) # --- Locate SDL2_ttf --- @@ -57,6 +56,7 @@ set(SOURCES ) +#--- executable --- add_executable(Snake ${SOURCES}) @@ -68,6 +68,10 @@ else() endif() +# --- Copy assets to output folder --- +file(COPY ${CMAKE_SOURCE_DIR}/assets DESTINATION ${CMAKE_BINARY_DIR}) + + # --- Copy SDL2 DLLs to the output folder on Windows --- if(WIN32) foreach(DLL ${SDL2_DLLS} ${SDL2_TTF_DLLS}) diff --git a/fonts/CenturyGothic.ttf b/assets/fonts/CenturyGothic.ttf similarity index 100% rename from fonts/CenturyGothic.ttf rename to assets/fonts/CenturyGothic.ttf diff --git a/fonts/Prototype.ttf b/assets/fonts/Prototype.ttf similarity index 100% rename from fonts/Prototype.ttf rename to assets/fonts/Prototype.ttf diff --git a/fonts/Quirkus.ttf b/assets/fonts/Quirkus.ttf similarity index 100% rename from fonts/Quirkus.ttf rename to assets/fonts/Quirkus.ttf diff --git a/fonts/ZIPERHEA.ttf b/assets/fonts/ZIPERHEA.ttf similarity index 100% rename from fonts/ZIPERHEA.ttf rename to assets/fonts/ZIPERHEA.ttf diff --git a/assets/player_scores.bin b/assets/player_scores.bin new file mode 100644 index 0000000000000000000000000000000000000000..12df44f555b4f6b76db330114bd47afb04cc6967 GIT binary patch literal 360 zcmZQ%U|=XU1QK`vGf*xyx1gjFNsT2E8^mM+;!-0tK{PJW<`|=CMB@@;4kJ)csR^1! QG%nHRn4)P!;}T;I0ONWOX8-^I literal 0 HcmV?d00001 diff --git a/sounds/crash_rock-cinematic.wav b/assets/sounds/crash_rock-cinematic.wav similarity index 100% rename from sounds/crash_rock-cinematic.wav rename to assets/sounds/crash_rock-cinematic.wav diff --git a/sounds/eat-bite1.wav b/assets/sounds/eat-bite1.wav similarity index 100% rename from sounds/eat-bite1.wav rename to assets/sounds/eat-bite1.wav diff --git a/sounds/eat-bite2.wav b/assets/sounds/eat-bite2.wav similarity index 100% rename from sounds/eat-bite2.wav rename to assets/sounds/eat-bite2.wav diff --git a/sounds/eat-crunch1.wav b/assets/sounds/eat-crunch1.wav similarity index 100% rename from sounds/eat-crunch1.wav rename to assets/sounds/eat-crunch1.wav diff --git a/sounds/eat-crunch2.wav b/assets/sounds/eat-crunch2.wav similarity index 100% rename from sounds/eat-crunch2.wav rename to assets/sounds/eat-crunch2.wav diff --git a/sounds/portal1_short.wav b/assets/sounds/portal1_short.wav similarity index 100% rename from sounds/portal1_short.wav rename to assets/sounds/portal1_short.wav diff --git a/sounds/portal2_oscillate.wav b/assets/sounds/portal2_oscillate.wav similarity index 100% rename from sounds/portal2_oscillate.wav rename to assets/sounds/portal2_oscillate.wav diff --git a/sounds/portal3_in-out.wav b/assets/sounds/portal3_in-out.wav similarity index 100% rename from sounds/portal3_in-out.wav rename to assets/sounds/portal3_in-out.wav diff --git a/sounds/portal4_ramp.wav b/assets/sounds/portal4_ramp.wav similarity index 100% rename from sounds/portal4_ramp.wav rename to assets/sounds/portal4_ramp.wav diff --git a/sounds/space-gun.wav b/assets/sounds/space-gun.wav similarity index 100% rename from sounds/space-gun.wav rename to assets/sounds/space-gun.wav diff --git a/src/config.c b/src/config.c index e482e95..4da2d06 100644 --- a/src/config.c +++ b/src/config.c @@ -8,7 +8,7 @@ config_t config = { .cycleDurationMs = 400, .difficulty = 1, .snakeDefaultLength = 2, - .leaderboardFilename = "", + .leaderboardFilename = "player_scores.bin", //.defaultMapName = "default" //10x10 .defaultMapName = "intermediate" //15x15 //.defaultMapName = "empty" //20x10 diff --git a/src/game.c b/src/game.c index e17ecd8..2b811cf 100644 --- a/src/game.c +++ b/src/game.c @@ -23,10 +23,10 @@ gameData_t game = { // list of audio files randomly played when food eaten const char *eatSounds[] = { - "../sounds/eat-bite1.wav", - "../sounds/eat-bite2.wav", - "../sounds/eat-crunch1.wav", - "../sounds/eat-crunch2.wav"}; + "assets/sounds/eat-bite1.wav", + "assets/sounds/eat-bite2.wav", + "assets/sounds/eat-crunch1.wav", + "assets/sounds/eat-crunch2.wav"}; #define EAT_SOUNDS_COUNT 4 @@ -76,11 +76,11 @@ void handlePortals() snakeSetHeadPos(p.targetX, p.targetY); LOGI("game: entered portal i=%d at x=%d, y=%d -> set head to x=%d y=%d\n", i, p.posX, p.posY, p.targetX, p.targetY); //--- play sound --- - //playSoundAsync("../sounds/portal1_short.wav"); //too short - //playSoundAsync("../sounds/portal2_oscillate.wav"); //too much bass - //playSoundAsync("../sounds/space-gun.wav"); //too loud - playSoundAsync("../sounds/portal3_in-out.wav"); - //playSoundAsync("../sounds/portal4_ramp.wav"); + //playSoundAsync("assets/sounds/portal1_short.wav"); //too short + //playSoundAsync("assets/sounds/portal2_oscillate.wav"); //too much bass + //playSoundAsync("assets/sounds/space-gun.wav"); //too loud + playSoundAsync("assets/sounds/portal3_in-out.wav"); + //playSoundAsync("assets/sounds/portal4_ramp.wav"); return; } } @@ -111,12 +111,12 @@ void runGameCycle() // TODO consider game.lifesRemaining and reset if still good? //--- play crash sound --- LOGI("game: collided with wall or self! => show leaderboard\n"); - playSound("../sounds/crash_rock-cinematic.wav", false); + playSound("assets/sounds/crash_rock-cinematic.wav", false); DELAY(200); //--- leaderboard --- //game.gameState = MENU; //TODO add config.collisionEnabled option? - savePlayerScore("../build/player_scores.bin"/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); - readTopScores("../build/player_scores.bin"); + savePlayerScore(config.leaderboardFilename/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); + readTopScores(config.leaderboardFilename); game.gameState = MENU; activeMenu = LEADERBOARD; return; diff --git a/src/render.c b/src/render.c index 3fe1565..a523d2c 100644 --- a/src/render.c +++ b/src/render.c @@ -124,8 +124,8 @@ void renderStartMenu() //=========== only first loop ================ if(ttlStorage.lastTimeStep == 0) { - ttlStorage.ptrFont_200 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_200); - ttlStorage.ptrFont_30 = TTF_OpenFont("../fonts/Quirkus.ttf", ttlStorage.fontSize_30); + ttlStorage.ptrFont_200 = TTF_OpenFont("assets/fonts/Quirkus.ttf", ttlStorage.fontSize_200); + ttlStorage.ptrFont_30 = TTF_OpenFont("assets/fonts/Quirkus.ttf", ttlStorage.fontSize_30); SDL_Color textColor1 = {255, 0, 255}; // rosa Text @@ -240,7 +240,7 @@ void renderSettings() if(ttlStorage.lastTimeStep == 0) { printf("In first loop\n"); - ttlStorage.ptrFont_20 = TTF_OpenFont("../fonts/Prototype.ttf", ttlStorage.fontSize_20); + ttlStorage.ptrFont_20 = TTF_OpenFont("assets/fonts/Prototype.ttf", ttlStorage.fontSize_20); SDL_StartTextInput(); // start text input } From 0999c5888ea262334d9d2bbefe237a8997e5bf26 Mon Sep 17 00:00:00 2001 From: jonny-vb Date: Tue, 19 Dec 2023 09:44:54 -0800 Subject: [PATCH 20/32] Add CPack for creating releases for windows (zip) On windows a release can be created by running 'cpack' in build folder. It creates a .zip file with the .exe file as well as all required libraries and assets. --- CMakeLists.txt | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index d55b362..1240192 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,6 +62,8 @@ add_executable(Snake ${SOURCES}) #--- link libraries --- if(WIN32) + # Link libraries statically on Windows to prevent missing basic libraries on other systems. + target_link_options(Snake PRIVATE -static) target_link_libraries(Snake ${SDL2_LIBRARIES} ${SDL_TTF_LIBRARIES}) else() target_link_libraries(Snake SDL2::SDL2 SDL2_ttf::SDL2_ttf) @@ -78,4 +80,43 @@ if(WIN32) add_custom_command(TARGET Snake POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DLL} $) endforeach() +endif() + + + + +############################################ +######## generate release .zip file ######## +############################################ +# Generate a distributable ZIP archive for sharing the game. +# Note: currently only intended for windows systems +# Usage: +# 1. Build the project: cd build && cmake .. && make +# 2. Generate ZIP file: cpack +# 3. Share the ZIP file for others to run the game effortlessly. +if(WIN32) +# generator for zip archive TODO add other generator e.g. installer +set(CPACK_GENERATOR "ZIP") + +# Specify to exclude the top-level directory from the archive. +set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY ON) + +# Specify the components to be included in the package +install(TARGETS Snake + RUNTIME DESTINATION . + COMPONENT Runtime +) + +# copy DLL files +install(FILES ${SDL2_DLLS} ${SDL2_TTF_DLLS} + DESTINATION . + COMPONENT Runtime +) +# copy assets folder +install(DIRECTORY ${CMAKE_SOURCE_DIR}/assets + DESTINATION . + COMPONENT Assets +) + +include(CPack) endif() \ No newline at end of file From 1a9a348793534a417b13ce96b5d4b501890a49b2 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Wed, 20 Dec 2023 16:35:25 +0100 Subject: [PATCH 21/32] fix scoreboard --- include/files.h | 1 + src/files.c | 23 ++++++++++------------- src/menu.c | 1 - src/render.c | 10 ++++++---- 4 files changed, 17 insertions(+), 18 deletions(-) diff --git a/include/files.h b/include/files.h index 0c3f0c0..486753a 100644 --- a/include/files.h +++ b/include/files.h @@ -3,6 +3,7 @@ #define MAX_PRINTED_SCORES 5 +int recordsInFile; // struct that store player score at the end of the game typedef struct playerScore_t diff --git a/src/files.c b/src/files.c index 0cd5d4f..35b6ae1 100644 --- a/src/files.c +++ b/src/files.c @@ -7,7 +7,7 @@ //global struct for storing all data of the 10 best players playerScore_t topScores[]; - +int recordsInFile; //========================== //==== savePlayerScores ==== @@ -52,8 +52,7 @@ void readTopScores(const char *filename) { FILE *filePtr; playerScore_t tempPlayerScore; - int recordsInFile; - int highestPlayerScore; + int highestPlayerScore = 0; int count = 0; // increase up to 'MAX_PRINTED_SCORES' // determine the number of contents in the file @@ -70,13 +69,13 @@ void readTopScores(const char *filename) // fail with file opening if (filePtr == NULL) { - LOGI("Datei: Fehler beim Öffnen der Datei für die besten 10 Ergebnisse!\n"); + LOGI("Datei: Fehler beim Öffnen der Datei für die besten 10 Ergebnisse!\n"); game.gameState = EXIT; return; } - LOGI("Datensaetze in Datei: %d\n", recordsInFile); + LOGI("Datei: Datensaetze in Datei: %d\n", recordsInFile); //---- search for the highest score------ @@ -85,38 +84,36 @@ void readTopScores(const char *filename) fread(&tempPlayerScore, sizeof(playerScore_t), 1, filePtr); if(tempPlayerScore.score > highestPlayerScore) { - highestPlayerScore == tempPlayerScore.score; + highestPlayerScore = tempPlayerScore.score; } } //--- decrease highest score ----- - while((count < MAX_PRINTED_SCORES) && (count < MAX_PRINTED_SCORES)) + while((count < MAX_PRINTED_SCORES) && (count < recordsInFile)) { // set file pointer to start of the file rewind(filePtr); - // search for the highest score and then save it in topScores for (int i = 0; i < recordsInFile; i++) { + // read record from the file fread(&tempPlayerScore, sizeof(playerScore_t), 1, filePtr); // current highscore found if(tempPlayerScore.score == highestPlayerScore) { topScores[count] = tempPlayerScore; - LOGI("score: %d name: %s schwierigkeit: %d map: %s\n", topScores[count].score, topScores[count].playerName, topScores[count].difficulty, topScores[count].map); + LOGI("Datei: score: %d name: %s schwierigkeit: %d map: %s\n", topScores[count].score, topScores[count].playerName, topScores[count].difficulty, topScores[count].map); count++; } - - // leave if MAX_PRINTED_SCORES is reached - if(count >= MAX_PRINTED_SCORES) + // leave if limit is reached + if(count >= recordsInFile || count >= MAX_PRINTED_SCORES) { break; } } highestPlayerScore--; } - fclose(filePtr); } diff --git a/src/menu.c b/src/menu.c index 93020ab..dcb6eac 100644 --- a/src/menu.c +++ b/src/menu.c @@ -82,7 +82,6 @@ void showLeaderboard() //play audio file, wait until playback is finished //note: when displaying actual leaderboard, the second parameter should be 'false' to not block the program - renderLeaderboard(); return; diff --git a/src/render.c b/src/render.c index 3fe1565..b297dd8 100644 --- a/src/render.c +++ b/src/render.c @@ -10,6 +10,8 @@ #include +#define NUM_COLUMNS 4 + void renderGame(){ SDL_SetRenderDrawColor(game.renderer, 0, 0, 0, 255); @@ -457,7 +459,6 @@ void renderInfoScreen() //-------------------------------------------------------------- void renderLeaderboard() { -#define NUM_COLUMNS 4 char* menuDescription[] ={"LEADERBOARD"}; char* columnDescriptions[NUM_COLUMNS] = @@ -508,7 +509,8 @@ void renderLeaderboard() } // rendering score data - for (int i = 0; i < MAX_PRINTED_SCORES; ++i) { + int maxCycles = (recordsInFile < MAX_PRINTED_SCORES) ? recordsInFile : MAX_PRINTED_SCORES; + for (int i = 0; i < maxCycles; ++i) { char playerName[50]; // temporary buffer for text char map[50]; // temporary buffer for text strcpy(playerName, topScores[i].playerName); @@ -574,13 +576,13 @@ int CreateSDLWindow(){ // Erstelle ein SDL-Fenster game.window = SDL_CreateWindow("Snake", 350, 50, config.windowSize, config.windowSize, SDL_WINDOW_OPENGL); if (game.window == NULL) { - printf("Fenster konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); + LOGI("SDL: Fenster konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); return 1; } game.renderer = SDL_CreateRenderer(game.window, -1, SDL_RENDERER_ACCELERATED); if (game.renderer == NULL) { - printf("Renderer konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); + LOGI("SDL: Renderer konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); return 1; } return 0; From 1f4abeaa00b931b827148e65c3381a8270e75940 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Wed, 20 Dec 2023 16:57:29 +0100 Subject: [PATCH 22/32] fix change direction into itself #7 --- src/snake.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/snake.c b/src/snake.c index 6a9ffc0..2a22497 100644 --- a/src/snake.c +++ b/src/snake.c @@ -1,6 +1,7 @@ #include "snake.h" #include "game.h" //for access to global 'game' struct +bool snakeSetDirectionIsAllowed = true; void snakeInit() { @@ -44,6 +45,8 @@ void snakeGrow() void snakeMove() { int i = game.snake.length - 1; // counter for snake moving + + snakeSetDirectionIsAllowed = true; // direction can be changed now // update head position automatically snakeUpdateHeadPos(); @@ -63,6 +66,12 @@ void snakeMove() void snakeSetDir(snakeDirection_t dir) { + // if direction mustn changed + if(!snakeSetDirectionIsAllowed) + { + return; + } + // check, if snake should be move in opposite direction -> new direction stays old direction switch(dir) { @@ -92,6 +101,7 @@ void snakeSetDir(snakeDirection_t dir) } game.snake.direction = dir; + snakeSetDirectionIsAllowed = false; // direction cannot updated until next snakeMove return; } From 6ae1bdbfd7932303ac18d2ab0d1fb8cba031df81 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Wed, 20 Dec 2023 17:03:14 +0100 Subject: [PATCH 23/32] minor change: remove print line debugging --- src/main.cpp | 6 +++--- src/render.c | 1 - 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 08e3673..d94499c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -35,13 +35,13 @@ int main(int argc, char *argv[]) // Initialisiere SDL if (SDL_Init(SDL_INIT_VIDEO) < 0) { - printf("SDL konnte nicht initialisiert werden! SDL_Error: %s\n", SDL_GetError()); + LOGI("SDL: SDL konnte nicht initialisiert werden! SDL_Error: %s\n", SDL_GetError()); return 1; } // Initialisiere SDL_ttl, um Text ausgeben zu können if (TTF_Init() == -1) { - printf("SDL_ttf konnte nicht initialisiert werden! SDL_Error: %s\n"); + LOGI("SDL: SDL_ttf konnte nicht initialisiert werden! SDL_Error: %s\n"); return 1; } @@ -63,7 +63,7 @@ int main(int argc, char *argv[]) } if(game.gameState == PAUSE) { - printf("PAuse\n"); + LOGI("Spielmodus: Pause\n"); } if (game.gameState == RUNNING) { now = GET_TIME_MS(); // Timer startet diff --git a/src/render.c b/src/render.c index b297dd8..8ec408e 100644 --- a/src/render.c +++ b/src/render.c @@ -241,7 +241,6 @@ void renderSettings() //=========== only first loop ================ if(ttlStorage.lastTimeStep == 0) { - printf("In first loop\n"); ttlStorage.ptrFont_20 = TTF_OpenFont("../fonts/Prototype.ttf", ttlStorage.fontSize_20); SDL_StartTextInput(); // start text input } From f6ba560da3b7fce34a3d5b132965e66ec102a82a Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Wed, 20 Dec 2023 17:21:13 +0100 Subject: [PATCH 24/32] Fix: entering long numbers in preferences is no longer allowed --- src/menu.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/menu.c b/src/menu.c index dcb6eac..c161bf5 100644 --- a/src/menu.c +++ b/src/menu.c @@ -135,6 +135,9 @@ void showInfoScreen() // delete text at the end of one menu section void menuHandleInput(SDL_Event event){ //compare 'handleInput_runningState(SDL_Event event)' in input.c + + int numberOfContents = 0; // count number of entered numbers by the user + switch(activeMenu) { // start @@ -189,8 +192,14 @@ void menuHandleInput(SDL_Event event){ break; case 1: // confirm difficulty level + // count number of entered numbers + while (ttlStorage.textInput[numberOfContents] != '\0' && numberOfContents < sizeof(ttlStorage.textInput)) + { + numberOfContents++; + } + // user input must be between 1 and 3 - if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) + if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3') && numberOfContents == 1) { ttlStorage.inputStatus++; strcpy(ttlStorage.numbers[0], ttlStorage.textInput); // copy textInput to userDifficultyLevel @@ -200,8 +209,14 @@ void menuHandleInput(SDL_Event event){ break; case 2: // confirm map + // count number of entered numbers + while (ttlStorage.textInput[numberOfContents] != '\0' && numberOfContents < sizeof(ttlStorage.textInput)) + { + numberOfContents++; + } + // user input must be between 1 and 3 - if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3')) + if((ttlStorage.textInput[0] > '0') && (ttlStorage.textInput[0] <= '3') && numberOfContents == 1) { ttlStorage.inputStatus++; strcpy(ttlStorage.numbers[1], ttlStorage.textInput); // copy textInput to userSelectedMap From f01630fe6714d5e033e36435560ce804fe322d43 Mon Sep 17 00:00:00 2001 From: Hanse-14 Date: Thu, 21 Dec 2023 10:19:48 +0100 Subject: [PATCH 25/32] Change scores in leaderboard to 10 --- include/files.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/files.h b/include/files.h index 486753a..6e78608 100644 --- a/include/files.h +++ b/include/files.h @@ -1,7 +1,7 @@ #pragma once #include "config.h" -#define MAX_PRINTED_SCORES 5 +#define MAX_PRINTED_SCORES 10 int recordsInFile; From 119f9a106d75e9a009b546cdeb0b97415c177ee8 Mon Sep 17 00:00:00 2001 From: jonny_l480 Date: Fri, 22 Dec 2023 11:40:40 +0100 Subject: [PATCH 26/32] Fix compiler errors and warnings, Cleanup main.cpp MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove old comments and unused code from main.cpp - Fix the following compiler errors and warnings (compiles now): WARNING: main.cpp:64:23: warning: comparison between ‘gameState_t’ {aka ‘enum gameState_t’} and ‘enum menus_t’ if(game.gameState == PAUSE) WARNING: menu.c:111:9: warning: implicit declaration of function ‘renderSettings’ ERROR: multiple definitions / redefinition of 'int recordsInFile' --- include/files.h | 2 +- src/main.cpp | 55 +++++++------------------------------------------ src/menu.c | 2 +- 3 files changed, 9 insertions(+), 50 deletions(-) diff --git a/include/files.h b/include/files.h index 6e78608..987a834 100644 --- a/include/files.h +++ b/include/files.h @@ -3,7 +3,7 @@ #define MAX_PRINTED_SCORES 10 -int recordsInFile; +extern int recordsInFile; // struct that store player score at the end of the game typedef struct playerScore_t diff --git a/src/main.cpp b/src/main.cpp index d94499c..17b83eb 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -10,28 +10,15 @@ extern "C" #include "menu.h" } -//initialize SDL window -//ruft showStartScreen -//initialize game -//main loop: processInputEvents, runGameCycle -//uninitialize SDL - - - -//========================== -//====== enabled test ====== -//========================== -//uncomment one test at a time to run the corresponding code in main() -//#define TEST__FOOD_PLACEMENT -//#define TEST__SDL_INPUT -#define TEST__GAME_WITH_CONSOLE_OUTPUT - - - +//1. initialize SDL window +//2. call showStartScreen +//3. initialize game +//4. main loop: processInputEvents, runGameCycle +//5. uninitialize SDL int main(int argc, char *argv[]) { - // gameInit(); is removed in menu.c + // gameInit(); moved to menu.c // Initialisiere SDL if (SDL_Init(SDL_INIT_VIDEO) < 0) { @@ -45,12 +32,9 @@ int main(int argc, char *argv[]) return 1; } - CreateSDLWindow(); - - time_t now; now = GET_TIME_MS(); // Timer startet game.timestampLastCycle = now; @@ -61,7 +45,7 @@ int main(int argc, char *argv[]) { manageMenu(); } - if(game.gameState == PAUSE) + if(game.gameState == PAUSED) { LOGI("Spielmodus: Pause\n"); } @@ -78,31 +62,6 @@ int main(int argc, char *argv[]) processInputEvent(); } -/* time_t t; - - long long ms = time(NULL) *1000; - game.timestampLastCycle = ms; - - printf("timestamp: %lld",game.timestampLastCycle); - printf("ms: %lld",ms); - - while(game.gameState != EXIT) { - if (game.gameState == RUNNING) { - ms = time(NULL) *1000; // Timer startet - - printf("ms2: %lld", ms); - - if (ms - game.timestampLastCycle > config.cycleDurationMs){ - - game.timestampLastCycle = ms; - runGameCycle(); - } - } - DELAY(5); //verhindert maximale Durchlaufgeschwindigkeit der Schleife - processInputEvent(); - }*/ - - DestroySDLWindow(); diff --git a/src/menu.c b/src/menu.c index c161bf5..70287eb 100644 --- a/src/menu.c +++ b/src/menu.c @@ -4,7 +4,7 @@ #include "common.h" #include #include -//#include +#include "render.h" From a0622fff1ef08ed15c7a7b766b9df22bd3851f07 Mon Sep 17 00:00:00 2001 From: jonny_l480 Date: Fri, 22 Dec 2023 13:31:24 +0100 Subject: [PATCH 27/32] Add LOGE(), Optimize logging - Add LOGE() macro with colored output - use LOGE for all errors (adjust all files) - main.cpp: fix log spam in PAUSED state - log formatting optimizations - fix food tries count - add log output when switching from and too PAUSED --- include/common.h | 17 +++++++++++++++++ include/config.h | 1 + src/files.c | 8 ++++---- src/food.c | 10 ++++++---- src/game.c | 6 ++++-- src/input.c | 10 ++++------ src/main.cpp | 8 ++------ src/map.c | 2 +- src/render.c | 4 ++-- 9 files changed, 41 insertions(+), 25 deletions(-) diff --git a/include/common.h b/include/common.h index 3b88384..f6b23e1 100644 --- a/include/common.h +++ b/include/common.h @@ -24,6 +24,23 @@ #define LOGI(format, ...) do {} while (0) #endif +//conditional logging when ERROR_OUTPUT_ENABLED is defined in config.h +//also prints in text in red color +//example: LOGE("game: %d", count) +#ifdef ERROR_OUTPUT_ENABLED +#ifdef _WIN32 + #include + #define RED_TEXT SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED) + #define RESET_TEXT SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) +#else + #define RED_TEXT "\033[1;31m" + #define RESET_TEXT "\033[0m" +#endif +#define LOGE(format, ...) printf("[E] " RED_TEXT format RESET_TEXT, ##__VA_ARGS__) +#else +#define LOGE(format, ...) do {} while (0) +#endif + //=========================== //========== DELAY ========== diff --git a/include/config.h b/include/config.h index 58095a5..3e43dae 100644 --- a/include/config.h +++ b/include/config.h @@ -7,6 +7,7 @@ // logging settings //#define DEBUG_OUTPUT_ENABLED #define INFO_OUTPUT_ENABLED +#define ERROR_OUTPUT_ENABLED //#define RENDER_GAME_TO_CONSOLE diff --git a/src/files.c b/src/files.c index 35b6ae1..74bd736 100644 --- a/src/files.c +++ b/src/files.c @@ -35,11 +35,11 @@ int recordsInFile; fwrite(&playerScore, sizeof(playerScore_t), 1, file); fclose(file); - LOGI("Spielergebnis wurde erfolgreich in die Binaerdatei gespeichert.\n"); + LOGI("Datei: Spielergebnis erfolgreich in %s gespeichert.\n", config.leaderboardFilename); } else { - LOGI("Fehler beim Öffnen der Datei!\n"); + LOGE("file: Fehler beim Öffnen der Datei!\n"); } } @@ -69,7 +69,7 @@ void readTopScores(const char *filename) // fail with file opening if (filePtr == NULL) { - LOGI("Datei: Fehler beim Öffnen der Datei für die besten 10 Ergebnisse!\n"); + LOGE("Datei: Fehler beim Öffnen der Datei für die besten 10 Ergebnisse!\n"); game.gameState = EXIT; return; } @@ -103,7 +103,7 @@ void readTopScores(const char *filename) if(tempPlayerScore.score == highestPlayerScore) { topScores[count] = tempPlayerScore; - LOGI("Datei: score: %d name: %s schwierigkeit: %d map: %s\n", topScores[count].score, topScores[count].playerName, topScores[count].difficulty, topScores[count].map); + LOGI("Datei: score: %d name: %s schwierigkeit: %d map: %s\n", topScores[count].score, topScores[count].playerName, topScores[count].difficulty, topScores[count].map); count++; } // leave if limit is reached diff --git a/src/food.c b/src/food.c index 3364273..42652ea 100644 --- a/src/food.c +++ b/src/food.c @@ -57,7 +57,7 @@ newValues: { //decrease min distance but not below 1 if ((in_minDist -= 0.1) < 1) in_minDist = 1; - LOGI("[WARN] food: too much tries achieving min dist -> loosen limit to %.1f\n", in_minDist); + LOGI("[WARN] food: too many tries achieving min dist -> loosen limit to %.1f\n", in_minDist); } //reset stored distance and reroll coordinates minActualDistance = MAX_MAP_SIZE; @@ -95,7 +95,7 @@ void placeFood() difficulty_getFoodPlacementParam(&minDist, &maxDist); //--- variables --- - int foodX, foodY, triesMax = 0, triesMin; + int foodX, foodY, triesMax = 0, triesMin, triesTotal = 0; float currentMinDist; //--- generate random food position within min/max range --- @@ -107,15 +107,17 @@ void placeFood() if (triesMax % maxTries == 0) { maxDist += 0.1; - LOGI("[WARN] food: too many tries for MAX_DIST -> loosen limits to max=%.1f\n", maxDist); + LOGI("[WARN] food: too many tries achieving max dist -> loosen limits to max=%.1f\n", maxDist); } // generate random coordinates respecting minimum distance to objects getRandomPositionWithMinDistance(&foodX, &foodY, ¤tMinDist, &triesMin, minDist); + triesTotal += triesMin; //restart when max distance limit exceeded } while (currentMinDist > maxDist); //--- update position --- - LOGI("food: placed food at x=%d, y=%d (took %d = %d*%d tries)\n", foodX, foodY, triesMax * triesMin, triesMax, triesMin); + LOGI("food: placed food at x=%d, y=%d (took %d tries)\n", foodX, foodY, triesTotal); + LOGD("food: tries for constraints: Max=%d Min(last)=%d Total=%d)\n", triesMax, triesMin, triesTotal); game.foodX = foodX; game.foodY = foodY; return; diff --git a/src/game.c b/src/game.c index 2b811cf..d4617a7 100644 --- a/src/game.c +++ b/src/game.c @@ -54,8 +54,8 @@ void gameInit() snakeInit(); //TODO assign return value to game.snake? //--- place initial food --- + LOGI("game: placing initial food\n"); placeFood(); - LOGI("game: placed initial food at x=%d, y=%d\n", game.foodX, game.foodY); } @@ -110,13 +110,15 @@ void runGameCycle() if (checkCollides(game.map, game.snake.headX, game.snake.headY) || !snakeIsAlive()){ // TODO consider game.lifesRemaining and reset if still good? //--- play crash sound --- - LOGI("game: collided with wall or self! => show leaderboard\n"); + LOGI("game: collided with wall or self\n"); playSound("assets/sounds/crash_rock-cinematic.wav", false); DELAY(200); //--- leaderboard --- //game.gameState = MENU; //TODO add config.collisionEnabled option? + LOGI("game: saving player score\n"); savePlayerScore(config.leaderboardFilename/*(game.snake.length - config.snakeDefaultLength), ttlStorage.userName, config.difficulty, *storedMaps[ttlStorage.userSelectedMap - 1]*/); readTopScores(config.leaderboardFilename); + LOGI("game: showing leaderboard\n"); game.gameState = MENU; activeMenu = LEADERBOARD; return; diff --git a/src/input.c b/src/input.c index f9b039b..9479969 100644 --- a/src/input.c +++ b/src/input.c @@ -28,12 +28,9 @@ void handleInput_runningState(SDL_Event event) case SDLK_p: // p: pause case SDLK_ESCAPE: case SDLK_SPACE: - if(game.gameState == RUNNING) - { - game.gameState = PAUSED; - showPauseScreen(); - } - + LOGI("input: pausing game\n"); + game.gameState = PAUSED; + showPauseScreen(); break; //--- control snake direction --- @@ -110,6 +107,7 @@ void processInputEvent() handleInput_runningState(event); break; case PAUSED: + LOGI("input: resume game from paused state\n"); game.gameState = RUNNING; case MENU: // pass key event to menu handle function which updates menu diff --git a/src/main.cpp b/src/main.cpp index 17b83eb..d5ca543 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,13 +22,13 @@ int main(int argc, char *argv[]) // Initialisiere SDL if (SDL_Init(SDL_INIT_VIDEO) < 0) { - LOGI("SDL: SDL konnte nicht initialisiert werden! SDL_Error: %s\n", SDL_GetError()); + LOGE("SDL: SDL konnte nicht initialisiert werden! SDL_Error: %s\n", SDL_GetError()); return 1; } // Initialisiere SDL_ttl, um Text ausgeben zu können if (TTF_Init() == -1) { - LOGI("SDL: SDL_ttf konnte nicht initialisiert werden! SDL_Error: %s\n"); + LOGE("SDL: SDL_ttf konnte nicht initialisiert werden! SDL_Error: %s\n"); return 1; } @@ -45,10 +45,6 @@ int main(int argc, char *argv[]) { manageMenu(); } - if(game.gameState == PAUSED) - { - LOGI("Spielmodus: Pause\n"); - } if (game.gameState == RUNNING) { now = GET_TIME_MS(); // Timer startet diff = now-game.timestampLastCycle; diff --git a/src/map.c b/src/map.c index a35cc62..07c0733 100644 --- a/src/map.c +++ b/src/map.c @@ -145,7 +145,7 @@ void loadMapByName(const char *name) } } // map not found - printf("[FATAL ERROR] map: could not find '%s' in storedMaps!\n", name); + LOGE("[FATAL] map: could not find '%s' in storedMaps!\n", name); game.gameState = EXIT; return; } diff --git a/src/render.c b/src/render.c index 0dfeaf6..b782e73 100644 --- a/src/render.c +++ b/src/render.c @@ -575,13 +575,13 @@ int CreateSDLWindow(){ // Erstelle ein SDL-Fenster game.window = SDL_CreateWindow("Snake", 350, 50, config.windowSize, config.windowSize, SDL_WINDOW_OPENGL); if (game.window == NULL) { - LOGI("SDL: Fenster konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); + LOGE("SDL: Fenster konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); return 1; } game.renderer = SDL_CreateRenderer(game.window, -1, SDL_RENDERER_ACCELERATED); if (game.renderer == NULL) { - LOGI("SDL: Renderer konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); + LOGE("SDL: Renderer konnte nicht erstellt werden! SDL_Error: %s\n", SDL_GetError()); return 1; } return 0; From fcea6f57ab48d2d440edb91bcf035f9037d534db Mon Sep 17 00:00:00 2001 From: jonny_l480 Date: Fri, 22 Dec 2023 13:34:51 +0100 Subject: [PATCH 28/32] Fix deadlock on sound error (mutex not released) when sound failed to play, the function returned but did not release mutex. --- src/sound.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/sound.c b/src/sound.c index 7c724a9..b08e86e 100644 --- a/src/sound.c +++ b/src/sound.c @@ -27,7 +27,7 @@ int initAudio() //--- initialize SDL audio --- if (SDL_Init(SDL_INIT_AUDIO) < 0) { - printf("SDL: could not init audio!\n"); + LOGE("sound: SDL - could not init audio!\n"); return 1; } audioIsInitialized = true; @@ -66,7 +66,8 @@ int playSound(const char *filePath, bool wait) //--- load file --- if (SDL_LoadWAV(filePath, &wavSpec, &wavBuffer, &wavLength) == NULL) { - printf("sound: file '%s' could not be loaded E:'%s'\n", filePath, SDL_GetError()); + LOGE("sound: file '%s' could not be loaded E:'%s'\n", filePath, SDL_GetError()); + pthread_mutex_unlock(&mutexSoundPlaying); return 1; } @@ -75,7 +76,7 @@ int playSound(const char *filePath, bool wait) deviceExists = true; SDL_QueueAudio(deviceId, wavBuffer, wavLength); SDL_PauseAudioDevice(deviceId, 0); - LOGI("sound: playing file '%s'\n", filePath); + LOGD("sound: playing file '%s'\n", filePath); //--- wait until playback is finished --- while (SDL_GetQueuedAudioSize(deviceId) > 0) @@ -123,14 +124,14 @@ int playSoundAsync(const char *filePath) { //--- allocate memory for filePath --- char *filePathCopy = strdup(filePath); if (filePathCopy == NULL) { - fprintf(stderr, "Memory allocation failed\n"); + LOGE("sound: Memory allocation failed\n"); return 1; } //--- create new thread --- pthread_t thread; if (pthread_create(&thread, NULL, playSoundThread, filePathCopy) != 0) { - fprintf(stderr, "Failed to create thread\n"); + LOGE("sound: Failed to create thread\n"); free(filePathCopy); return 1; } else { From 797805b5e48c393fa2b9029755f5120fbe0a8c2b Mon Sep 17 00:00:00 2001 From: jonny_l480 Date: Fri, 22 Dec 2023 13:43:24 +0100 Subject: [PATCH 29/32] gitignore: ignore *.bin files (player_scores.bin) --- .gitignore | 3 +++ assets/player_scores.bin | Bin 360 -> 0 bytes 2 files changed, 3 insertions(+) delete mode 100644 assets/player_scores.bin diff --git a/.gitignore b/.gitignore index 41ed50d..b12b28d 100644 --- a/.gitignore +++ b/.gitignore @@ -26,6 +26,9 @@ compile_commands.json *.exe *.out +# Binary files +*.bin + # Libraries *.a *.lib diff --git a/assets/player_scores.bin b/assets/player_scores.bin deleted file mode 100644 index 12df44f555b4f6b76db330114bd47afb04cc6967..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 360 zcmZQ%U|=XU1QK`vGf*xyx1gjFNsT2E8^mM+;!-0tK{PJW<`|=CMB@@;4kJ)csR^1! QG%nHRn4)P!;}T;I0ONWOX8-^I From 32a0b44f0d46acc181db77d9043094c7ba1775bd Mon Sep 17 00:00:00 2001 From: jonny-vb Date: Sun, 7 Jan 2024 12:28:59 -0800 Subject: [PATCH 30/32] Fix LOGE macro (disable color on win), Fix map size "empty" - Recently added color to LOGE output did not compile on windows. Removed color support on windows for now. - Changed map size of map "empty" from 20x15 to 20x20 (square now) --- include/common.h | 16 +++++++--------- src/map.c | 2 +- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/include/common.h b/include/common.h index f6b23e1..d15f2b0 100644 --- a/include/common.h +++ b/include/common.h @@ -25,20 +25,18 @@ #endif //conditional logging when ERROR_OUTPUT_ENABLED is defined in config.h -//also prints in text in red color +//also prints in text in red color (windows not supported) //example: LOGE("game: %d", count) #ifdef ERROR_OUTPUT_ENABLED -#ifdef _WIN32 - #include - #define RED_TEXT SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED) - #define RESET_TEXT SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE) -#else + #ifdef _WIN32 //print error output in default color (currently no color support for windows) + #define LOGE(format, ...) printf("[E] " format, ##__VA_ARGS__) + #else //print error output in red color #define RED_TEXT "\033[1;31m" #define RESET_TEXT "\033[0m" -#endif -#define LOGE(format, ...) printf("[E] " RED_TEXT format RESET_TEXT, ##__VA_ARGS__) + #define LOGE(format, ...) printf(RED_TEXT "[E] " format RESET_TEXT, ##__VA_ARGS__) + #endif #else -#define LOGE(format, ...) do {} while (0) + #define LOGE(format, ...) do {} while (1) #endif diff --git a/src/map.c b/src/map.c index 07c0733..4eb5d8e 100644 --- a/src/map.c +++ b/src/map.c @@ -224,7 +224,7 @@ static const map_t map_default = { static const map_t map_empty = { .width = 20, - .height = 15, + .height = 20, .name = "empty", .collisions = {}, .collisionCount = 0, From 33247f8a5bc45ce91c951851c15dfc58edf7af52 Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 7 Jan 2024 21:47:26 +0100 Subject: [PATCH 31/32] Adjust volume of crash and portal sounds Crash sound was way too loud, Portal also felt slightly annoying - crash: -7dB - portal: -3dB --- assets/sounds/crash_rock-cinematic.wav | Bin 284030 -> 284030 bytes assets/sounds/portal3_in-out.wav | Bin 105036 -> 105036 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/sounds/crash_rock-cinematic.wav b/assets/sounds/crash_rock-cinematic.wav index e5871b7bf04647db2b185a840e94767a75102f7f..fb595c50407fc91aeaef6dbdc4b73e93ab440e7d 100644 GIT binary patch literal 284030 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Ⓢ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�R60 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 literal 284030 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 z�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 d=+iB#K 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 b|Kb4XK2PyT99XyG}1O=Tzg@QYq02 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 TcU6k%mP9BxzG$};Zy literal 105036 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 KS`AuR?EeD+M?(+* From 7ec022dd2b20c6e2066280463b466886865e903f Mon Sep 17 00:00:00 2001 From: jonny_jr9 Date: Sun, 7 Jan 2024 22:17:32 +0100 Subject: [PATCH 32/32] Update Readme: Add install section --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index a2daf10..de21bfc 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,14 @@ A project for the Software Engineering course as part of our studies. +# Installation +For Windows 64-Bit a pre-compiled release, that also includes the required .dll files and assets is available: +- Download the zip file from [Releases](https://github.com/Jonny999999/snake-pp/releases/latest) (e.g. "Snake-1.0-win64.zip") +- Extract zip file +- Navigate to the folder and run `Snake.exe` +On other Systems you currently have to compile from source (see next sections) + + # Compilation ## Linux