X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGameTick.cpp;h=b74cb5e9331e43761ae81e111ed56282b41d3ef5;hb=089f2f48ecc1c838f303842e17a618c26b43d794;hp=6deec4030fe73405b37c88a878b3a8e20896b5f6;hpb=bba3631a5899f8f9f26fd596e13f097ae2d6f8b8;p=lugaru.git diff --git a/Source/GameTick.cpp b/Source/GameTick.cpp index 6deec40..b74cb5e 100644 --- a/Source/GameTick.cpp +++ b/Source/GameTick.cpp @@ -214,10 +214,6 @@ static bool stripfx(const char *str, const char *pfx) return !strncasecmp(str, pfx, strlen(pfx)); } -extern "C" void PlaySoundEx(int channel, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); -extern "C" void PlayStreamEx(int chan, OPENAL_STREAM *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); - - static const char *cmd_names[] = { #define DECLARE_COMMAND(cmd) #cmd " ", #include "ConsoleCmds.h" @@ -1104,18 +1100,7 @@ static void cmd_dispatch(Game *game, const char *cmd) cmd_handlers[i](game, cmd + strlen(cmd_names[i])); break; } - if (i < n_cmds) - { - PlaySoundEx(consolesuccesssound, samp[consolesuccesssound], NULL, true); - OPENAL_SetVolume(channels[consolesuccesssound], 256); - OPENAL_SetPaused(channels[consolesuccesssound], false); - } - else - { - PlaySoundEx(consolefailsound, samp[consolefailsound], NULL, true); - OPENAL_SetVolume(channels[consolefailsound], 256); - OPENAL_SetPaused(channels[consolefailsound], false); - } + emit_sound_np(i < n_cmds ? consolesuccesssound : consolefailsound); } /********************> Tick() <*****/ @@ -1347,12 +1332,8 @@ void Game::Setenvironment(int which) if(environment==snowyenvironment){ windvector=0; windvector.z=3; - if(ambientsound){ - //PlaySoundEx( wind, samp[wind], NULL, true); - PlayStreamEx(stream_wind, samp[stream_wind], 0, true); - OPENAL_SetPaused(channels[stream_wind], false); - OPENAL_SetVolume(channels[stream_wind], 256); - } + if(ambientsound) + emit_stream_np(stream_wind); LoadTexture(":Data:Textures:snowtree.png",&objects.treetextureptr,0,1); LoadTexture(":Data:Textures:bushsnow.png",&objects.bushtextureptr,0,1); @@ -1398,12 +1379,8 @@ void Game::Setenvironment(int which) LoadTexture(":Data:Textures:desertbox.jpg",&objects.boxtextureptr,1,0); - if(ambientsound){ - //PlaySoundEx( desertambient, samp[desertambient], NULL, true); - PlayStreamEx( stream_desertambient, samp[stream_desertambient], NULL, true); - OPENAL_SetPaused(channels[stream_desertambient], false); - OPENAL_SetVolume(channels[stream_desertambient], 256); - } + if(ambientsound) + emit_stream_np(stream_desertambient); footstepsound = footstepsn1; footstepsound2 = footstepsn2; @@ -1442,11 +1419,8 @@ void Game::Setenvironment(int which) LoadTexture(":Data:Textures:boulder.jpg",&objects.rocktextureptr,1,0); LoadTexture(":Data:Textures:grassbox.jpg",&objects.boxtextureptr,1,0); - if(ambientsound){ - PlayStreamEx( stream_wind, samp[stream_wind], NULL, true); - OPENAL_SetPaused(channels[stream_wind], false); - OPENAL_SetVolume(channels[stream_wind], 100); - } + if(ambientsound) + emit_stream_np(stream_wind, 100.); footstepsound = footstepgr1; footstepsound2 = footstepgr2; @@ -1625,9 +1599,7 @@ void Game::Loadlevel(char *name){ changedelay=0; if(console) { - PlaySoundEx( consolesuccesssound, samp[consolesuccesssound], NULL, true); - OPENAL_SetVolume(channels[consolesuccesssound], 256); - OPENAL_SetPaused(channels[consolesuccesssound], false); + emit_sound_np(consolesuccesssound); freeze=0; console=0; } @@ -2231,33 +2203,17 @@ void Game::Loadlevel(char *name){ if(environment==snowyenvironment) { if(ambientsound) - { - PlayStreamEx(stream_wind, samp[stream_wind], NULL, true); - OPENAL_SetPaused(channels[stream_wind], false); - OPENAL_SetVolume(channels[stream_wind], 256); - } + emit_stream_np(stream_wind); } else if(environment==desertenvironment) { if(ambientsound) - { - //PlaySoundEx(desertambient, - // samp[desertambient], NULL, true); - PlayStreamEx(stream_desertambient, - samp[stream_desertambient], NULL, true); - OPENAL_SetPaused(channels[stream_desertambient], false); - OPENAL_SetVolume(channels[stream_desertambient], 256); - } + emit_stream_np(stream_desertambient); } else if(environment==grassyenvironment) { if(ambientsound) - { - //PlaySoundEx(wind, samp[wind], NULL, true); - PlayStreamEx(stream_wind, samp[stream_wind], NULL, true); - OPENAL_SetPaused(channels[stream_wind], false); - OPENAL_SetVolume(channels[stream_wind], 100); - } + emit_stream_np(stream_wind, 100.); } oldmusicvolume[0]=0; oldmusicvolume[1]=0; @@ -2352,9 +2308,7 @@ void Game::Tick() if(mainmenu&&musictoggle){ if(mainmenu==1||mainmenu==2||mainmenu==100){ OPENAL_SetFrequency(OPENAL_ALL, 0.001); - PlayStreamEx( stream_music3, samp[stream_music3], NULL, true); - OPENAL_SetPaused(channels[stream_music3], false); - OPENAL_SetVolume(channels[stream_music3], 256); + emit_stream_np(stream_music3); OPENAL_SetPaused(channels[music1], true); } } @@ -2405,9 +2359,7 @@ void Game::Tick() if(Input::isKeyDown(SDLK_TAB)&&!minimaptogglekeydown&&tutoriallevel){ if(tutorialstage!=51) tutorialstagetime=tutorialmaxtime; - PlaySoundEx( consolefailsound, samp[consolefailsound], NULL, true); - OPENAL_SetVolume(channels[consolefailsound], 128); - OPENAL_SetPaused(channels[consolefailsound], false); + emit_sound_np(consolefailsound, 128.); minimaptogglekeydown=1; } if(!Input::isKeyDown(SDLK_TAB)){ @@ -2558,11 +2510,8 @@ void Game::Tick() } } - if(musictoggle){ - PlayStreamEx( stream_music3, samp[stream_music3], NULL, true); - OPENAL_SetPaused(channels[stream_music3], false); - OPENAL_SetVolume(channels[stream_music3], 256); - } + if(musictoggle) + emit_stream_np(stream_music3); } if(Input::Button()&&!oldbutton&&selected==9){ invertmouse=1-invertmouse; @@ -3029,9 +2978,7 @@ void Game::Tick() static int oldwinfreeze; if(winfreeze&&!oldwinfreeze){ OPENAL_SetFrequency(OPENAL_ALL, 0.001); - PlaySoundEx( consolesuccesssound, samp[consolesuccesssound], NULL, true); - OPENAL_SetVolume(channels[consolesuccesssound], 256); - OPENAL_SetPaused(channels[consolesuccesssound], false); + emit_sound_np(consolesuccesssound); } if(winfreeze==0)oldwinfreeze=winfreeze; else oldwinfreeze++; @@ -3602,9 +3549,7 @@ void Game::Tick() if(tutorialstagetime==tutorialmaxtime-3){ - PlaySoundEx( consolesuccesssound, samp[consolesuccesssound], NULL, true); - OPENAL_SetVolume(channels[consolesuccesssound], 256); - OPENAL_SetPaused(channels[consolesuccesssound], false); + emit_sound_np(consolesuccesssound); } if(tutorialsuccess>=1){ @@ -3622,16 +3567,12 @@ void Game::Tick() if(tutoriallevel!=1){ if(bonustime==0&&bonus!=solidhit&&bonus!=spinecrusher&&bonus!=tracheotomy&&bonus!=backstab&&bonusvalue>10){ - PlaySoundEx( consolesuccesssound, samp[consolesuccesssound], NULL, true); - OPENAL_SetVolume(channels[consolesuccesssound], 256); - OPENAL_SetPaused(channels[consolesuccesssound], false); + emit_sound_np(consolesuccesssound); } } else if(bonustime==0){ - PlaySoundEx( fireendsound, samp[fireendsound], NULL, true); - OPENAL_SetVolume(channels[fireendsound], 256); - OPENAL_SetPaused(channels[fireendsound], false); + emit_sound_np(fireendsound); } if(bonustime==0){ if(bonus!=solidhit&&bonus!=twoxcombo&&bonus!=threexcombo&&bonus!=fourxcombo&&bonus!=megacombo)bonusnum[bonus]++; @@ -7356,9 +7297,7 @@ void Game::Tick() OPENAL_StopSound(OPENAL_ALL); // hack...OpenAL renderer isn't stopping music after tutorial goes to level menu... OPENAL_SetFrequency(OPENAL_ALL, 0.001); - PlayStreamEx( stream_music3, samp[stream_music3], NULL, true); - OPENAL_SetPaused(channels[stream_music3], false); - OPENAL_SetVolume(channels[stream_music3], 256); + emit_stream_np(stream_music3); gameon=0; mainmenu=5; @@ -7516,17 +7455,7 @@ void Game::TickOnceAfter(){ if(musictoggle){ if(musictype!=oldmusictype&&musictype==stream_music2){ - static float gLoc[3]; - static float vel[3]; - gLoc[0]=cameraloc.x; - gLoc[1]=cameraloc.y; - gLoc[2]=cameraloc.z; - vel[0]=0; - vel[1]=0; - vel[2]=0; - PlaySoundEx( alarmsound, samp[alarmsound], NULL, true); - OPENAL_SetVolume(channels[alarmsound], 512); - OPENAL_SetPaused(channels[alarmsound], false); + emit_sound_np(alarmsound); } } @@ -7547,18 +7476,12 @@ void Game::TickOnceAfter(){ if(musicvolume[2]>128&&!loading&&!mainmenu)musicvolume[2]=128; if(musictoggle){ - if(musicvolume[0]>0&&oldmusicvolume[0]<=0){ - PlayStreamEx( music1, samp[music1], NULL, true); - OPENAL_SetPaused(channels[music1], false); - } - if(musicvolume[1]>0&&oldmusicvolume[1]<=0){ - PlayStreamEx( stream_music2, samp[stream_music2], NULL, true); - OPENAL_SetPaused(channels[stream_music2], false); - } - if(musicvolume[2]>0&&oldmusicvolume[2]<=0){ - PlayStreamEx( stream_music3, samp[stream_music3], NULL, true); - OPENAL_SetPaused(channels[stream_music3], false); - } + if(musicvolume[0]>0&&oldmusicvolume[0]<=0) + emit_stream_np(music1, musicvolume[0]); + if(musicvolume[1]>0&&oldmusicvolume[1]<=0) + emit_stream_np(stream_music2, musicvolume[1]); + if(musicvolume[2]>0&&oldmusicvolume[2]<=0) + emit_stream_np(stream_music3, musicvolume[2]); if(musicvolume[0]<=0&&oldmusicvolume[0]>0){ OPENAL_SetPaused(channels[music1], true); }