Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <fmod.h>
- #include <SDL.h>
- void soundJump();
- int main (int argc, char *argv[])
- {
- SDL_Surface *ecran = NULL;
- SDL_Event event;
- FMOD_SYSTEM *system;
- FMOD_SOUND *mainTheme;
- FMOD_RESULT resultat;
- int continuer = 1;
- FMOD_System_Create(&system);
- FMOD_System_Init(system, 2, FMOD_INIT_NORMAL, NULL);
- /* Ouverture du fichier MarioTheme.mid */
- resultat = FMOD_System_CreateSound(system, "MarioTheme.mid", FMOD_SOFTWARE | FMOD_2D | FMOD_CREATESTREAM, 0, &mainTheme);
- /* Vérification du succès d'ouverture */
- if(resultat != FMOD_OK)
- {
- fprintf(stderr, "Impossible d'ouvrir MarioTheme.mid\n");
- exit (EXIT_FAILURE);
- }
- /* On joue la musique */
- FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, mainTheme, 0, NULL);
- /* Initialisation de la SDL + ouverture d'un fenêtre */
- SDL_Init(SDL_INIT_VIDEO);
- SDL_ShowCursor(SDL_ENABLE);
- ecran = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE | SDL_DOUBLEBUF);
- SDL_WM_SetCaption("Bibliothèque de sons pour Donkey-Kong", NULL);
- while(continuer)
- {
- SDL_WaitEvent(&event);
- switch(event.type)
- {
- case SDL_QUIT:
- continuer = 0;
- break;
- case SDL_KEYDOWN:
- if(event.key.keysym.sym == SDLK_SPACE) //Si on appuie sur SPACE
- {
- soundJump();
- }
- break;
- SDL_FillRect(ecran, NULL, SDL_MapRGB(ecran->format, 0, 0, 0));
- SDL_Flip(ecran);
- }
- }
- FMOD_Sound_Release(mainTheme);
- FMOD_System_Close(system);
- FMOD_System_Release(system);
- /* Fermeture de la SDL */
- SDL_Quit();
- return EXIT_SUCCESS;
- }
- void soundJump()
- {
- FMOD_SOUND *jump;
- FMOD_RESULT resultat;
- /* Chargement et vérification du son */
- resultat = FMOD_System_CreateSound(system, "Saut.wav", FMOD_CREATESAMPLE, 0, &jump);
- if (resultat != FMOD_OK)
- {
- fprintf(stderr, "Impossible d'ouvrir le fichier Saut.wav\n");
- exit(EXIT_FAILURE);
- }
- /* Lancement du son */
- FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, jump, 0, NULL);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement