- Exemple updatat a SDL3

This commit is contained in:
2025-03-27 09:40:13 +01:00
parent d7d813718c
commit e994ab2678

View File

@@ -1,6 +1,6 @@
#include "jail_audio.h" #include "jail_audio.h"
#include <stdlib.h> #include <stdlib.h>
#include <SDL2/SDL.h> #include <SDL3/SDL.h>
#include <stdio.h> #include <stdio.h>
SDL_Event event; SDL_Event event;
@@ -8,12 +8,12 @@ SDL_Window *sdlWindow;
int main(int argc, char **argv) { int main(int argc, char **argv) {
SDL_Init(SDL_INIT_EVERYTHING); SDL_Init(SDL_INIT_AUDIO|SDL_INIT_EVENTS);
sdlWindow = SDL_CreateWindow("JailAudio", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 320, 240, SDL_WINDOW_SHOWN); sdlWindow = SDL_CreateWindow("JailAudio", 320, 240, 0);
JA_Init(48000, AUDIO_S16, 2); JA_Init(48000, SDL_AUDIO_S16, 2);
JA_Music music = JA_LoadMusic("intro2.ogg"); JA_Music_t *music = JA_LoadMusic("intro2.ogg");
JA_Sound peiv = JA_LoadSound("menu_select.wav"); JA_Sound_t *peiv = JA_LoadSound("menu_select.wav");
int channel = -1; int channel = -1;
JA_PlayMusic(music, true); JA_PlayMusic(music, true);
@@ -21,9 +21,9 @@ int main(int argc, char **argv) {
bool should_exit = false; bool should_exit = false;
while(!should_exit) { while(!should_exit) {
while(SDL_PollEvent(&event)) { while(SDL_PollEvent(&event)) {
if (event.type == SDL_QUIT) { should_exit = true; break; } if (event.type == SDL_EVENT_QUIT) { should_exit = true; break; }
if (event.type == SDL_KEYDOWN) { if (event.type == SDL_EVENT_KEY_DOWN) {
switch (event.key.keysym.scancode) { switch (event.key.scancode) {
case SDL_SCANCODE_1: // Si pulsem la tecla '1' pausem o despausem la música case SDL_SCANCODE_1: // Si pulsem la tecla '1' pausem o despausem la música
if (JA_GetMusicState() == JA_MUSIC_PLAYING) { JA_PauseMusic(); } else { JA_ResumeMusic(); } if (JA_GetMusicState() == JA_MUSIC_PLAYING) { JA_PauseMusic(); } else { JA_ResumeMusic(); }
break; break;
@@ -48,6 +48,9 @@ int main(int argc, char **argv) {
case SDL_SCANCODE_DOWN: case SDL_SCANCODE_DOWN:
volume = JA_SetVolume(volume-16); volume = JA_SetVolume(volume-16);
break; break;
case SDL_SCANCODE_ESCAPE:
should_exit = true;
break;
default: default:
break; break;
} }
@@ -57,6 +60,7 @@ int main(int argc, char **argv) {
} }
JA_DeleteSound(peiv); JA_DeleteSound(peiv);
JA_DeleteMusic(music); JA_DeleteMusic(music);
JA_Quit();
SDL_DestroyWindow(sdlWindow); SDL_DestroyWindow(sdlWindow);
SDL_Quit(); SDL_Quit();
return 0; return 0;