summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorMenase Teshale <osome3717@gmail.com>2026-08-22 11:23:54 +0300
committerMenase Teshale <osome3717@gmail.com>2026-08-22 11:23:54 +0300
commit15b194df64db5850757d195344e682bb8ec4c138 (patch)
tree70b387ae167f8fe2636fbfcaaf8b9c7869c0c435 /src/main.c
parent05d3e3628f8d4ffe0e9dde7ecfdcb0a15d03cf23 (diff)
Audiooo
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/main.c b/src/main.c
index 4c138f8..b126e92 100644
--- a/src/main.c
+++ b/src/main.c
@@ -4,6 +4,7 @@
#include <stdlib.h>
#define SDL_MAIN_USE_CALLBACKS
#include <SDL3/SDL_main.h>
+#include <SDL3_mixer/SDL_mixer.h>
#include "app.h"
@@ -15,10 +16,12 @@
SDL_Window* window;
SDL_Renderer* renderer;
+MIX_Mixer* mixer;
+
application_state app_state;
SDL_AppResult SDL_AppInit(void** userdata, int nargs, char** argc) {
- SDL_Init(SDL_INIT_VIDEO);
+ SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO);
srand(time(NULL));
window = SDL_CreateWindow(WINDOW_TITLE, WINDOW_WIDTH, WINDOW_HEIGHT, 0);
@@ -27,7 +30,10 @@ SDL_AppResult SDL_AppInit(void** userdata, int nargs, char** argc) {
SDL_SetRenderVSync(renderer, true);
#endif
- init_app(renderer);
+ MIX_Init();
+ mixer = MIX_CreateMixerDevice( SDL_AUDIO_DEVICE_DEFAULT_PLAYBACK, NULL);
+
+ init_app(renderer, mixer);
return SDL_APP_CONTINUE;
}
@@ -60,7 +66,7 @@ SDL_AppResult SDL_AppIterate(void* userdata) {
switch (app_state) {
case game_state:
- update_game(SDL_min(dt, MAX_DELTATIME));
+ update_game(SDL_min(dt, MAX_DELTATIME), mixer);
draw_game(renderer);
break;
@@ -81,8 +87,8 @@ void SDL_AppQuit(void* userdata, SDL_AppResult result) {
SDL_Quit();
}
-void init_app(SDL_Renderer* renderer) {
- init_game(renderer);
+void init_app(SDL_Renderer* renderer, MIX_Mixer* mixer) {
+ init_game(renderer, mixer);
app_state = game_state;
}