#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <math.h>
#include "SDL/SDL.h"
#include "SDL/SDL_mixer.h"
#include "include.h"


using namespace std;

Mix_Music *music;
Mix_Chunk *s_coin;
Mix_Chunk *s_fall;
Mix_Chunk *s_winner;

void Play_Music()
{
// Włączamy obsługe dźwięku
   if(Mix_OpenAudio(11025,MIX_DEFAULT_FORMAT,2,512) == -1)
   {
      cerr << "Something is wrong.";
      exit(EXIT_FAILURE);
   }

// Ustawiamy głośność
   Mix_VolumeMusic(MIX_MAX_VOLUME/2);

// Wczytujemy pliki dźwiękowe do pamięci
   s_coin = Mix_LoadWAV("coin.wav");
   s_fall = Mix_LoadWAV("fall.wav");
   s_winner = Mix_LoadWAV("winner.wav");
   music = Mix_LoadMUS("music.ogg");

/*
  Mix_PlayMusic(music,-1);
  Mix_PlayChannel(0,s_coin,0);
  Mix_PlayChannel(1,s_fall,0);
  Mix_PlayChannel(2,s_winner,0);
*/
}

void Close_Audio(void)
{
// Wyciszenie wszystkich kanałów w ciągu 1 sekundy
	Mix_FadeOutChannel(-1, 1000);

// oraz muzyki także w ciągu 1 sekundy
	Mix_FadeOutMusic(1000);

// Czekamy 1 sekunde
	SDL_Delay(1000);

// Czyścimy pamięć zajmowaną przez pliki dźwiękowe
	Mix_FreeMusic(music); 
	Mix_FreeChunk(s_coin);
	Mix_FreeChunk(s_fall);

// i wyłączamy obsługe dźwięku
	Mix_CloseAudio();
}
