mirror of
https://github.com/YGGverse/xash3d-fwgs.git
synced 2025-01-17 18:40:02 +00:00
engine: s_mouth: fix another signed char
This commit is contained in:
parent
6e95e19589
commit
13c1e807ad
@ -57,7 +57,7 @@ void SND_CloseMouth( channel_t *ch )
|
|||||||
void SND_MoveMouth8( channel_t *ch, wavdata_t *pSource, int count )
|
void SND_MoveMouth8( channel_t *ch, wavdata_t *pSource, int count )
|
||||||
{
|
{
|
||||||
cl_entity_t *clientEntity;
|
cl_entity_t *clientEntity;
|
||||||
char *pdata = NULL;
|
signed char *pdata = NULL;
|
||||||
mouth_t *pMouth = NULL;
|
mouth_t *pMouth = NULL;
|
||||||
int scount, pos = 0;
|
int scount, pos = 0;
|
||||||
int savg, data;
|
int savg, data;
|
||||||
@ -77,7 +77,7 @@ void SND_MoveMouth8( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
|
|
||||||
count = S_GetOutputData( pSource, (void**)&pdata, pos, count, ch->use_loop );
|
count = S_GetOutputData( pSource, (void**)&pdata, pos, count, ch->use_loop );
|
||||||
if( pdata == NULL ) return;
|
if( pdata == NULL ) return;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
scount = pMouth->sndcount;
|
scount = pMouth->sndcount;
|
||||||
savg = 0;
|
savg = 0;
|
||||||
@ -85,7 +85,7 @@ void SND_MoveMouth8( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
while( i < count && scount < CAVGSAMPLES )
|
while( i < count && scount < CAVGSAMPLES )
|
||||||
{
|
{
|
||||||
data = pdata[i];
|
data = pdata[i];
|
||||||
savg += abs( data );
|
savg += abs( data );
|
||||||
|
|
||||||
i += 80 + ((byte)data & 0x1F);
|
i += 80 + ((byte)data & 0x1F);
|
||||||
scount++;
|
scount++;
|
||||||
@ -94,7 +94,7 @@ void SND_MoveMouth8( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
pMouth->sndavg += savg;
|
pMouth->sndavg += savg;
|
||||||
pMouth->sndcount = (byte)scount;
|
pMouth->sndcount = (byte)scount;
|
||||||
|
|
||||||
if( pMouth->sndcount >= CAVGSAMPLES )
|
if( pMouth->sndcount >= CAVGSAMPLES )
|
||||||
{
|
{
|
||||||
pMouth->mouthopen = pMouth->sndavg / CAVGSAMPLES;
|
pMouth->mouthopen = pMouth->sndavg / CAVGSAMPLES;
|
||||||
pMouth->sndavg = 0;
|
pMouth->sndavg = 0;
|
||||||
@ -125,7 +125,7 @@ void SND_MoveMouth16( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
|
|
||||||
count = S_GetOutputData( pSource, (void**)&pdata, pos, count, ch->use_loop );
|
count = S_GetOutputData( pSource, (void**)&pdata, pos, count, ch->use_loop );
|
||||||
if( pdata == NULL ) return;
|
if( pdata == NULL ) return;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
scount = pMouth->sndcount;
|
scount = pMouth->sndcount;
|
||||||
savg = 0;
|
savg = 0;
|
||||||
@ -134,7 +134,7 @@ void SND_MoveMouth16( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
{
|
{
|
||||||
data = pdata[i];
|
data = pdata[i];
|
||||||
data = (bound( -32767, data, 0x7ffe ) >> 8);
|
data = (bound( -32767, data, 0x7ffe ) >> 8);
|
||||||
savg += abs( data );
|
savg += abs( data );
|
||||||
|
|
||||||
i += 80 + ((byte)data & 0x1F);
|
i += 80 + ((byte)data & 0x1F);
|
||||||
scount++;
|
scount++;
|
||||||
@ -143,7 +143,7 @@ void SND_MoveMouth16( channel_t *ch, wavdata_t *pSource, int count )
|
|||||||
pMouth->sndavg += savg;
|
pMouth->sndavg += savg;
|
||||||
pMouth->sndcount = (byte)scount;
|
pMouth->sndcount = (byte)scount;
|
||||||
|
|
||||||
if( pMouth->sndcount >= CAVGSAMPLES )
|
if( pMouth->sndcount >= CAVGSAMPLES )
|
||||||
{
|
{
|
||||||
pMouth->mouthopen = pMouth->sndavg / CAVGSAMPLES;
|
pMouth->mouthopen = pMouth->sndavg / CAVGSAMPLES;
|
||||||
pMouth->sndavg = 0;
|
pMouth->sndavg = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user