]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - snd_3dras.c
Fix incorrect layer color values that caused models to be completely black in RENDERP...
[xonotic/darkplaces.git] / snd_3dras.c
index 0f54d1742fe2fecf3dd0266359ed4309b099ba6c..0619796a670b433167eb7f12017d0f0dafeadaec 100644 (file)
@@ -5,11 +5,11 @@
 #include "snd_3dras.h"
 
 cvar_t bgmvolume = {CVAR_SAVE, "bgmvolume", "1", "volume of background music (such as CD music or replacement files such as sound/cdtracks/track002.ogg)"};
+cvar_t mastervolume = {CVAR_SAVE, "mastervolume", "1", "master volume"};
 cvar_t volume = {CVAR_SAVE, "volume", "0.7", "volume of sound effects"};
 cvar_t snd_staticvolume = {CVAR_SAVE, "snd_staticvolume", "1", "volume of ambient sound effects (such as swampy sounds at the start of e1m2)"};
 cvar_t snd_initialized = { CVAR_READONLY, "snd_initialized", "0", "indicates the sound subsystem is active"};
 cvar_t snd_mutewhenidle = {CVAR_SAVE, "snd_mutewhenidle", "1", "whether to disable sound output when game window is inactive"};
-cvar_t snd_streaming = { CVAR_SAVE, "snd_streaming", "1", "enables keeping compressed ogg sound files compressed, decompressing them only as needed, otherwise they will be decompressed completely at load (may use a lot of memory)"};
 static cvar_t snd_precache = {0, "snd_precache", "1", "loads sounds before they are used"};
 
 static dllhandle_t   ras_dll = NULL;
@@ -115,15 +115,13 @@ static dllfunction_t ras_funcs[] =
 };
 static const char* ras_dllname [] =
 {
-       #if defined(WIN64)
-               "3dras64.dll",
-       #elif defined(WIN32)
+#if defined(WIN32)
                "3dras32.dll",
-       #elif defined(MACOSX)
+#elif defined(MACOSX)
                "3dras.dylib",
-       #else
+#else
                "3dras.so",
-       #endif
+#endif
                NULL
 };
 
@@ -370,6 +368,7 @@ void S_Init (void){
                        Con_Printf ("Version %i found\n",ras_version);
                        Cvar_RegisterVariable(&volume);
                        Cvar_RegisterVariable(&bgmvolume);
+                       Cvar_RegisterVariable(&mastervolume);
                        Cvar_RegisterVariable(&snd_staticvolume);
                        Cvar_RegisterVariable(&snd_precache);
 
@@ -599,7 +598,7 @@ int S_LoadSound(sfx_t *sfx, int complain){
        void* decoder_ptr=NULL;
        if(ras_version>0 && ras_dll){
 
-               fileext[4]=0; //Terminator
+               fileext[3]=0; //Terminator
                // See if already loaded
                if (sfx->rasptr) return true;
 
@@ -790,13 +789,13 @@ int S_StartSound_OnEnt (int entnum, int entchannel, sfx_t *sfx, float fvol, floa
                S_KillChannel(now_c);
        }else{ //We found no channel .... So we need to make a new one ...
                channel_new_smart(&prev_c,&now_c);
-               now_c->entnum    =entnum;
-               now_c->entchannel=entchannel;
                if(!now_c){
                        Con_Printf("S_StartSound_OnEnt: could not make new channel_t\n");
                        channel_delete_and_next(&prev_c,&now_c);
                        return -1;
                }
+               now_c->entnum    =entnum;
+               now_c->entchannel=entchannel;
        }
 
        //Lets start the sound on the acquired sound source and channel