From 78a231a4f2a68ea76eb4223fedbb0bdd64c6b4e6 Mon Sep 17 00:00:00 2001 From: Quinn Date: Wed, 12 Feb 2025 17:41:59 +0100 Subject: [PATCH] rename most types to lowercase, shuffle things around about definition-wise and added more default definitions --- src/errors.c | 14 ++++++-------- src/errors.h | 9 ++++++--- src/game/game.c | 14 ++++++++------ src/game/game.h | 5 +++-- src/main.c | 29 ++++++++--------------------- src/window/renderer.c | 25 +++++++++++++------------ src/window/renderer.h | 9 ++++++--- 7 files changed, 50 insertions(+), 55 deletions(-) diff --git a/src/errors.c b/src/errors.c index abd7cda..cccc373 100644 --- a/src/errors.c +++ b/src/errors.c @@ -5,14 +5,12 @@ #include #include -#define MAX_STR_LEN 128 - -void error(const ErrorCode error_code, const char* format, ...) { - char buffer[MAX_STR_LEN] = {0}; // contains the buffer of the final string +void error(error_code const error_code, char const* const format, ...) { + char buffer[ERROR_MAX_STR_LEN] = {0}; // contains the buffer of the final string va_list args; va_start(args, format); - vsnprintf(buffer, MAX_STR_LEN, format, args); + vsnprintf(buffer, ERROR_MAX_STR_LEN, format, args); va_end(args); printf("\033[91mE\033[0m: %s\n", buffer); @@ -21,12 +19,12 @@ void error(const ErrorCode error_code, const char* format, ...) { exit(error_code); } -void warn(const char* format, ...) { - char buffer[MAX_STR_LEN] = {0}; // contains the buffer of the final string +void warn(char const* const format, ...) { + char buffer[ERROR_MAX_STR_LEN] = {0}; // contains the buffer of the final string va_list args; va_start(args, format); - vsnprintf(buffer, MAX_STR_LEN, format, args); + vsnprintf(buffer, ERROR_MAX_STR_LEN, format, args); va_end(args); printf("\033[93mW\033[0m: %s\n", buffer); diff --git a/src/errors.h b/src/errors.h index 07f1613..c78b8e6 100644 --- a/src/errors.h +++ b/src/errors.h @@ -1,6 +1,9 @@ #pragma once +#include -typedef unsigned char ErrorCode; +#define ERROR_MAX_STR_LEN 128 + +typedef uint8_t error_code; enum { ERROR_MISC = -1, @@ -21,5 +24,5 @@ enum { }; // call when a fatal error has occurred, the program will immediately terminate when called -void error(const ErrorCode error_code, const char* format, ...); -void warn(const char* format, ...); +void error(error_code const error_code, char const* format, ...); +void warn(char const* format, ...); diff --git a/src/game/game.c b/src/game/game.c index 311fba2..fd6eff7 100644 --- a/src/game/game.c +++ b/src/game/game.c @@ -6,10 +6,12 @@ #include "../main.h" -// called every time the game's state is updated -void game_update(GameData game_data, const uint8_t* keys) { - (void)game_data; - if (keys[SDL_SCANCODE_ESCAPE]) { - stop(); - } +void game_init(game_data* const dat) { + *dat = (game_data){0}; +} + +// called every time the game's state is updated +void game_update(game_data* const dat, uint8_t const* const keys) { + (void)dat; + if (keys[SDL_SCANCODE_ESCAPE]) stop(); } diff --git a/src/game/game.h b/src/game/game.h index 1a21f24..4b6f9ad 100644 --- a/src/game/game.h +++ b/src/game/game.h @@ -4,7 +4,8 @@ // stores the data used in the game typedef struct { void* val; -} GameData; +} game_data; // updates the game's state -void game_update(GameData game_data, const uint8_t* keys); +void game_init(game_data* game_dat); +void game_update(game_data* game_dat, const uint8_t* keys); diff --git a/src/main.c b/src/main.c index 5a74782..2792ca5 100644 --- a/src/main.c +++ b/src/main.c @@ -4,8 +4,6 @@ #include #include #include -#include -#include #include #include #include @@ -14,18 +12,12 @@ #include "errors.h" #include "game/game.h" -// #include "window/audio.h" #include "window/renderer.h" -#ifdef __EMSCRIPTEN__ // for web builds -#include -#endif - - bool playing = true; -SDL_Window* window = NULL; -SDL_Renderer* renderer = NULL; +render_data render_dat = {0}; +game_data game_dat = {0}; // handles game application initialisation static void init(void) { @@ -35,15 +27,13 @@ static void init(void) { return; } - // initialize the renderer - if (renderer_init(&window, &renderer) < 0) { - error(ERROR_SDL_RENDERER_INIT, SDL_GetError()); - return; - } + renderer_init(&render_dat, &game_dat); // initialize audio // AudioDevice* audio_device = audio_device_init(32000, AUDIO_S16, 1, 255); + // AudioData audio1 = audio_load_wav(audio_device, "FILE NAME"); + game_init(&game_dat); } // handles game application updating @@ -60,12 +50,9 @@ static void update(void) { } } - // updates the game - game_update((GameData){NULL}, SDL_GetKeyboardState(NULL)); - - // updates the render - RenderData render_data = {window, renderer}; - renderer_update(&render_data); + // perform updates + game_update(&game_dat, SDL_GetKeyboardState(NULL)); + renderer_update(&render_dat); } // handles game application quitting diff --git a/src/window/renderer.c b/src/window/renderer.c index e13b05a..faa429e 100644 --- a/src/window/renderer.c +++ b/src/window/renderer.c @@ -1,4 +1,3 @@ -// initializes the window and renderer #include "renderer.h" #include @@ -7,27 +6,29 @@ #include #include "../errors.h" +#include "../game/game.h" -int renderer_init(SDL_Window** window, SDL_Renderer** renderer) { +// initializes the window and renderer +void renderer_init(render_data* const render_dat, game_data const* const game_dat) { // create a new window - *window = SDL_CreateWindow("", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 100, 100, SDL_WINDOW_SHOWN); - if (*window == NULL) { + SDL_Window* const window = SDL_CreateWindow("", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 100, 100, SDL_WINDOW_SHOWN); + if (window == NULL) error(ERROR_SDL_RENDERER_INIT, "Window failed to be created! SDL Error: %s", SDL_GetError()); - return -1; - } // create a renderer - *renderer = SDL_CreateRenderer(*window, -1, SDL_RENDERER_PRESENTVSYNC); - if (*renderer == NULL) { + SDL_Renderer* const renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_PRESENTVSYNC); + if (renderer == NULL) error(ERROR_SDL_RENDERER_INIT, "Renderer failed to be created! SDL Error: %s", SDL_GetError()); - return -1; - } - return 0; + *render_dat = (render_data){ + window, + renderer, + game_dat, + }; } -void renderer_update(const RenderData* render_data) { +void renderer_update(const render_data* render_data) { SDL_Renderer* renderer = render_data->renderer; int success = 0; // if an error occurs, this value is <0 diff --git a/src/window/renderer.h b/src/window/renderer.h index aeca01e..8ec760b 100644 --- a/src/window/renderer.h +++ b/src/window/renderer.h @@ -2,10 +2,13 @@ #include #include +#include "../game/game.h" + typedef struct { SDL_Window* window; SDL_Renderer* renderer; -} RenderData; + game_data const* game_dat; +} render_data; -int renderer_init(SDL_Window** window, SDL_Renderer** renderer); -void renderer_update(const RenderData* render_data); +void renderer_init(render_data* render_dat, game_data const* game_dat); +void renderer_update(render_data const* render_data);