fix misc things that I previously missed.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4625 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
cdf7815cf7
commit
42d428df5a
8 changed files with 48 additions and 27 deletions
|
@ -8,6 +8,14 @@
|
||||||
#include "shader.h"
|
#include "shader.h"
|
||||||
|
|
||||||
#if !defined(NOMEDIA)
|
#if !defined(NOMEDIA)
|
||||||
|
#if defined(_WIN32) && !defined(WINRT)
|
||||||
|
#define WINAMP
|
||||||
|
#endif
|
||||||
|
#if defined(_WIN32) && !defined(WINRT)
|
||||||
|
#define WINAVI
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
typedef struct mediatrack_s{
|
typedef struct mediatrack_s{
|
||||||
char filename[MAX_QPATH];
|
char filename[MAX_QPATH];
|
||||||
char nicename[MAX_QPATH];
|
char nicename[MAX_QPATH];
|
||||||
|
@ -456,9 +464,15 @@ void CD_f (void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!bgmvolume.ival)
|
if (Q_strcasecmp(command, "stop") == 0)
|
||||||
{
|
{
|
||||||
Con_Printf("Background music is disabled. %s is 0\n", bgmvolume.name);
|
Media_Clear();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!bgmvolume.value)
|
||||||
|
{
|
||||||
|
Con_Printf("Background music is disabled: %s is 0\n", bgmvolume.name);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -509,12 +523,6 @@ void CD_f (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Q_strcasecmp(command, "stop") == 0)
|
|
||||||
{
|
|
||||||
CDAudio_Stop();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Q_strcasecmp(command, "pause") == 0)
|
if (Q_strcasecmp(command, "pause") == 0)
|
||||||
{
|
{
|
||||||
Media_SetPauseTrack(true);
|
Media_SetPauseTrack(true);
|
||||||
|
|
|
@ -503,6 +503,16 @@ static void OpenAL_ChannelUpdate(soundcardinfo_t *sc, channel_t *chan, unsigned
|
||||||
offset = (chan->pos>>PITCHSHIFT) - sbuf.soundoffset;
|
offset = (chan->pos>>PITCHSHIFT) - sbuf.soundoffset;
|
||||||
sbuf.data += offset * sc->width*sc->numchannels;
|
sbuf.data += offset * sc->width*sc->numchannels;
|
||||||
sbuf.length -= offset;
|
sbuf.length -= offset;
|
||||||
|
|
||||||
|
if (!sbuf.length && (chan->pos>>PITCHSHIFT) == sbuf.soundoffset)
|
||||||
|
{
|
||||||
|
chan->sfx = NULL;
|
||||||
|
if (sfx->decoder.abort)
|
||||||
|
{
|
||||||
|
if (!S_IsPlayingSomewhere(sfx))
|
||||||
|
sfx->decoder.abort(sfx);
|
||||||
|
}
|
||||||
|
}
|
||||||
sbuf.soundoffset = 0;
|
sbuf.soundoffset = 0;
|
||||||
|
|
||||||
//build a buffer with it and queue it up.
|
//build a buffer with it and queue it up.
|
||||||
|
|
|
@ -61,7 +61,7 @@ int desired_bits = 16;
|
||||||
|
|
||||||
int sound_started=0;
|
int sound_started=0;
|
||||||
|
|
||||||
cvar_t bgmvolume = CVARAFD( "musicvolume", "0", "bgmvolume", CVAR_ARCHIVE,
|
cvar_t bgmvolume = CVARAFD( "musicvolume", "0.3", "bgmvolume", CVAR_ARCHIVE,
|
||||||
"Volume level for background music.");
|
"Volume level for background music.");
|
||||||
cvar_t volume = CVARFD( "volume", "0.7", CVAR_ARCHIVE,
|
cvar_t volume = CVARFD( "volume", "0.7", CVAR_ARCHIVE,
|
||||||
"Main volume level for all engine sound.");
|
"Main volume level for all engine sound.");
|
||||||
|
@ -2566,6 +2566,7 @@ void S_UpdateAmbientSounds (soundcardinfo_t *sc)
|
||||||
|
|
||||||
for (i = MUSIC_FIRST; i < MUSIC_STOP; i++)
|
for (i = MUSIC_FIRST; i < MUSIC_STOP; i++)
|
||||||
{
|
{
|
||||||
|
qboolean changed = false;
|
||||||
chan = &sc->channel[i];
|
chan = &sc->channel[i];
|
||||||
if (!chan->sfx)
|
if (!chan->sfx)
|
||||||
{
|
{
|
||||||
|
@ -2581,13 +2582,17 @@ void S_UpdateAmbientSounds (soundcardinfo_t *sc)
|
||||||
chan->sfx = newmusic;
|
chan->sfx = newmusic;
|
||||||
chan->rate = 1<<PITCHSHIFT;
|
chan->rate = 1<<PITCHSHIFT;
|
||||||
chan->pos = 0;
|
chan->pos = 0;
|
||||||
|
changed = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (chan->sfx)
|
if (chan->sfx)
|
||||||
{
|
{
|
||||||
chan->master_vol = 255; //bypasses volume cvar completely.
|
chan->flags = CF_ABSVOLUME; //bypasses volume cvar completely.
|
||||||
chan->vol[0] = chan->vol[1] = chan->vol[2] = chan->vol[3] = chan->vol[4] = chan->vol[5] = bound(0, chan->master_vol*bgmvolume.value*voicevolumemod, 255);
|
chan->master_vol = bound(0, 255*bgmvolume.value*voicevolumemod, 255);
|
||||||
|
chan->vol[0] = chan->vol[1] = chan->vol[2] = chan->vol[3] = chan->vol[4] = chan->vol[5] = chan->master_vol;
|
||||||
|
if (sc->ChannelUpdate)
|
||||||
|
sc->ChannelUpdate(sc, chan, changed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2336,7 +2336,6 @@ static void Mod_FloodFillSkin( qbyte *skin, int skinwidth, int skinheight )
|
||||||
skin[x + skinwidth * y] = fdc;
|
skin[x + skinwidth * y] = fdc;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
skinid_t *skinfilelist;
|
skinid_t *skinfilelist;
|
||||||
int skinfilecount;
|
int skinfilecount;
|
||||||
|
@ -2467,7 +2466,6 @@ shader_t *Mod_ShaderFromQ3SkinFile(char *out, galiasinfo_t *surf, char *modelnam
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef SERVERONLY
|
|
||||||
shader_t *Mod_LoadSkinFile(char *defaultshadername, galiasinfo_t *surf, int skinnumber, unsigned char *rawdata, int width, int height, unsigned char *palette, char *outskinname)
|
shader_t *Mod_LoadSkinFile(char *defaultshadername, galiasinfo_t *surf, int skinnumber, unsigned char *rawdata, int width, int height, unsigned char *palette, char *outskinname)
|
||||||
{
|
{
|
||||||
shader_t *shader;
|
shader_t *shader;
|
||||||
|
|
|
@ -456,6 +456,8 @@ typedef struct zonegroupblock_s
|
||||||
} zonegroupblock_t;
|
} zonegroupblock_t;
|
||||||
|
|
||||||
#ifdef USE_MSVCRT_DEBUG
|
#ifdef USE_MSVCRT_DEBUG
|
||||||
|
#undef ZG_Malloc
|
||||||
|
void *ZG_Malloc(zonegroup_t *ctx, int size){return ZG_MallocNamed(ctx, size, "ZG_Malloc", size);}
|
||||||
void *ZG_MallocNamed(zonegroup_t *ctx, int size, char *file, int line)
|
void *ZG_MallocNamed(zonegroup_t *ctx, int size, char *file, int line)
|
||||||
#else
|
#else
|
||||||
void *ZG_Malloc(zonegroup_t *ctx, int size)
|
void *ZG_Malloc(zonegroup_t *ctx, int size)
|
||||||
|
|
|
@ -2310,7 +2310,6 @@ void BE_GenPolyBatches(batch_t **batches)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
void R_HalfLife_GenerateBatches(entity_t *e, batch_t **batches);
|
void R_HalfLife_GenerateBatches(entity_t *e, batch_t **batches);
|
||||||
model_t *Mod_LoadModel (model_t *mod, qboolean crash);
|
|
||||||
void BE_GenModelBatches(batch_t **batches, const dlight_t *dl, unsigned int bemode)
|
void BE_GenModelBatches(batch_t **batches, const dlight_t *dl, unsigned int bemode)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
@ -2367,7 +2366,7 @@ void BE_GenModelBatches(batch_t **batches, const dlight_t *dl, unsigned int bemo
|
||||||
continue;
|
continue;
|
||||||
if (ent->model->needload)
|
if (ent->model->needload)
|
||||||
{
|
{
|
||||||
if (!Mod_LoadModel(ent->model, false))
|
if (!Mod_LoadModel(ent->model, MLV_WARN))
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -2532,7 +2532,6 @@ static void Terr_RebuildMesh(model_t *model, hmsection_t *s, int x, int y)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
model_t *Mod_LoadModel (model_t *mod, qboolean crash);
|
|
||||||
struct tdibctx
|
struct tdibctx
|
||||||
{
|
{
|
||||||
heightmap_t *hm;
|
heightmap_t *hm;
|
||||||
|
@ -2611,7 +2610,7 @@ void Terr_DrawInBounds(struct tdibctx *ctx, int x, int y, int w, int h)
|
||||||
if (hm->beinglazy)
|
if (hm->beinglazy)
|
||||||
continue;
|
continue;
|
||||||
hm->beinglazy = true;
|
hm->beinglazy = true;
|
||||||
Mod_LoadModel(model, false);
|
Mod_LoadModel(model, MLV_WARN);
|
||||||
}
|
}
|
||||||
if (model->needload)
|
if (model->needload)
|
||||||
continue;
|
continue;
|
||||||
|
|
|
@ -211,11 +211,11 @@ void Mod_Init (qboolean initial)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int Mod_RegisterModelFormatText(void *module, const char *formatname, char *magictext, qboolean (QDECL *load) (struct model_s *mod, void *buffer))
|
int Mod_RegisterModelFormatText(void *module, const char *formatname, char *magictext, qboolean (QDECL *load) (struct model_s *mod, void *buffer, size_t fsize))
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
int Mod_RegisterModelFormatMagic(void *module, const char *formatname, unsigned int magic, qboolean (QDECL *load) (struct model_s *mod, void *buffer))
|
int Mod_RegisterModelFormatMagic(void *module, const char *formatname, unsigned int magic, qboolean (QDECL *load) (struct model_s *mod, void *buffer, size_t fsize))
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -476,36 +476,36 @@ model_t *Mod_LoadModel (model_t *mod, qboolean crash)
|
||||||
case BSPVERSIONPREREL:
|
case BSPVERSIONPREREL:
|
||||||
case BSPVERSION:
|
case BSPVERSION:
|
||||||
case BSPVERSIONHL:
|
case BSPVERSIONHL:
|
||||||
if (!Mod_LoadBrushModel (mod, buf))
|
if (!Mod_LoadBrushModel (mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RAPOLYHEADER:
|
case RAPOLYHEADER:
|
||||||
case IDPOLYHEADER:
|
case IDPOLYHEADER:
|
||||||
if (!Mod_LoadQ1Model(mod, buf))
|
if (!Mod_LoadQ1Model(mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
#ifdef MD2MODELS
|
#ifdef MD2MODELS
|
||||||
case MD2IDALIASHEADER:
|
case MD2IDALIASHEADER:
|
||||||
if (!Mod_LoadQ2Model(mod, buf))
|
if (!Mod_LoadQ2Model(mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
#ifdef MD3MODELS
|
#ifdef MD3MODELS
|
||||||
case MD3_IDENT:
|
case MD3_IDENT:
|
||||||
if (!Mod_LoadQ3Model (mod, buf))
|
if (!Mod_LoadQ3Model (mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
#ifdef ZYMOTICMODELS
|
#ifdef ZYMOTICMODELS
|
||||||
case (('O'<<24)+('M'<<16)+('Y'<<8)+'Z'):
|
case (('O'<<24)+('M'<<16)+('Y'<<8)+'Z'):
|
||||||
if (!Mod_LoadZymoticModel(mod, buf))
|
if (!Mod_LoadZymoticModel(mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
#ifdef ZYMOTICMODELS
|
#ifdef ZYMOTICMODELS
|
||||||
case (('K'<<24)+('R'<<16)+('A'<<8)+'D'):
|
case (('K'<<24)+('R'<<16)+('A'<<8)+'D'):
|
||||||
if (!Mod_LoadDarkPlacesModel(mod, buf))
|
if (!Mod_LoadDarkPlacesModel(mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
@ -523,7 +523,7 @@ model_t *Mod_LoadModel (model_t *mod, qboolean crash)
|
||||||
#ifdef TERRAIN
|
#ifdef TERRAIN
|
||||||
if (!strcmp(com_token, "terrain")) //custom format, text based.
|
if (!strcmp(com_token, "terrain")) //custom format, text based.
|
||||||
{
|
{
|
||||||
if (!Terr_LoadTerrainModel(mod, buf))
|
if (!Terr_LoadTerrainModel(mod, buf, com_filesize))
|
||||||
goto couldntload;
|
goto couldntload;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1767,7 +1767,7 @@ qboolean Mod_LoadPlanes (lump_t *l)
|
||||||
Mod_LoadBrushModel
|
Mod_LoadBrushModel
|
||||||
=================
|
=================
|
||||||
*/
|
*/
|
||||||
qboolean Mod_LoadBrushModel (model_t *mod, void *buffer)
|
qboolean Mod_LoadBrushModel (model_t *mod, void *buffer, size_t buffersize)
|
||||||
{
|
{
|
||||||
int i, j;
|
int i, j;
|
||||||
dheader_t *header;
|
dheader_t *header;
|
||||||
|
|
Loading…
Reference in a new issue