Small stuph.

git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@297 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
Spoike 2004-10-03 22:52:02 +00:00
parent 1ba53e017e
commit 5fbe74b582
31 changed files with 884 additions and 528 deletions

View file

@ -1020,7 +1020,7 @@ void CL_LinkPacketEntities (void)
}
if (i == cl_oldnumvisedicts)
{
cl.lerpents[s1->number].traildist = 0;
cl.lerpents[s1->number].trailstate.lastdist = 0;
continue; // not in last message
}
@ -1032,7 +1032,7 @@ void CL_LinkPacketEntities (void)
}
if (model->particletrail>=0)
cl.lerpents[s1->number].traildist = R_RocketTrail (old_origin, ent->origin, model->particletrail, cl.lerpents[s1->number].traildist);
R_RocketTrail (old_origin, ent->origin, model->particletrail, &cl.lerpents[s1->number].trailstate);
//dlights are not customisable.
if (model->flags & EF_ROCKET)

View file

@ -1362,7 +1362,7 @@ void CL_Startdemos_f (void)
for (i=1 ; i<c+1 ; i++)
Q_strncpyz (cls.demos[i-1], Cmd_Argv(i), sizeof(cls.demos[0]));
if (!sv.state && cls.demonum != -1 && cls.demoplayback==DPB_NONE && !media_filmtype)
if (!sv.state && cls.demonum != -1 && cls.demoplayback==DPB_NONE && !media_filmtype && COM_CheckParm("-demos"))
{
cls.demonum = 0;
CL_NextDemo ();

View file

@ -978,7 +978,7 @@ void SCR_ImageName (char *mapname)
GL_BeginRendering (&glx, &gly, &glwidth, &glheight);
SCR_DrawLoading();
SCR_SetUpToDrawConsole();
SCR_DrawConsole(true);
SCR_DrawConsole(!!*levelshotname);
GL_EndRendering();
scr_drawloading = false;

View file

@ -679,7 +679,7 @@ void CL_ParseTEnt (void)
// sound
S_StartSound (-1, 0, cl_sfx_r_exp3, pos, 1, 1);
S_StartSound (-2, 0, cl_sfx_r_exp3, pos, 1, 1);
// sprite
if (cl_expsprite.value) // temp hopefully

View file

@ -357,7 +357,7 @@ typedef struct {
vec3_t origin;
vec3_t angles;
int frame;
float traildist; //when to next throw out a trail
trailstate_t trailstate; //when to next throw out a trail
} lerpents_t;
//
// the client_state_t structure is wiped completely at every

View file

@ -135,7 +135,8 @@ typedef struct q2centity_s
int serverframe; // if not current, this ent isn't in the frame
float trailcount; // for diminishing grenade trails
trailstate_t trailstate;
// float trailcount; // for diminishing grenade trails
vec3_t lerp_origin; // for trails (variable hz)
int fly_stoptime;
@ -158,7 +159,7 @@ void CLQ2_BlasterTrail2(vec3_t oldorg, vec3_t neworg){};
void CLQ2_RocketTrail(vec3_t oldorg, vec3_t neworg, q2centity_t *ent)
{
extern int rt_rocket;
ent->trailcount = R_RocketTrail(oldorg, neworg, rt_rocket, ent->trailcount);
R_RocketTrail(oldorg, neworg, rt_rocket, &ent->trailstate);
};
@ -504,7 +505,7 @@ void CLQ2_DeltaEntity (q2frame_t *frame, int newnum, entity_state_t *old, int bi
if (ent->serverframe != cl.q2frame.serverframe - 1)
{ // wasn't in last update, so initialize some things
ent->trailcount = 1024; // for diminishing rocket / grenade trails
ent->trailstate.lastdist = 0; // for diminishing rocket / grenade trails
// duplicate the current state so lerping doesn't hurt anything
ent->prev = *state;
if (state->event == Q2EV_OTHER_TELEPORT)

View file

@ -134,6 +134,9 @@ keyname_t keynames[] =
{"MOUSE3", K_MOUSE3},
{"MOUSE4", K_MOUSE4},
{"MOUSE5", K_MOUSE5},
{"MOUSE6", K_MOUSE6},
{"MOUSE7", K_MOUSE7},
{"MOUSE8", K_MOUSE8},
{"LWIN", K_LWIN},
{"RWIN", K_RWIN},

File diff suppressed because it is too large Load diff

View file

@ -192,7 +192,12 @@ void MediaSW_ShowFrameBGR_24_Flip(qbyte *framedata, int inwidth, int inheight);
void R_ParseParticleEffect (void);
void R_RunParticleEffect (vec3_t org, vec3_t dir, int color, int count);
float R_RocketTrail (vec3_t start, vec3_t end, int type, float olddistance);
typedef struct {
float lastdist;
vec3_t lastorg; //use only if lastdist
vec3_t lastdir; //use only if lastdist
} trailstate_t;
void R_RocketTrail (vec3_t start, vec3_t end, int type, trailstate_t *oldpoint);
int R_RunParticleEffectType(vec3_t org, vec3_t dir, float count, int type);
void R_RunParticleEffect2 (vec3_t org, vec3_t dmin, vec3_t dmax, int color, int effect, int count);
void R_RunParticleEffect3 (vec3_t org, vec3_t box, int color, int effect, int count);

View file

@ -36,9 +36,6 @@ void S_StopAllSoundsC(void);
void S_UpdateCard(soundcardinfo_t *sc, vec3_t origin, vec3_t forward, vec3_t right, vec3_t up);
// QuakeWorld hack...
#define viewentity playernum[0]+1
// =======================================================================
// Internal sound data & structures
// =======================================================================
@ -83,6 +80,7 @@ cvar_t ambient_fade = {"ambient_fade", "100"};
cvar_t snd_noextraupdate = {"snd_noextraupdate", "0"};
cvar_t snd_show = {"snd_show", "0"};
cvar_t snd_khz = {"snd_khz", "11"};
cvar_t snd_inactive = {"snd_inactive", "0"}; //set if you want sound even when tabbed out.
cvar_t _snd_mixahead = {"_snd_mixahead", "0.2", NULL, CVAR_ARCHIVE};
cvar_t snd_leftisright = {"snd_leftisright", "0", NULL, CVAR_ARCHIVE};
cvar_t snd_eax = {"snd_eax", "0"};
@ -482,6 +480,8 @@ void S_Init (void)
Cvar_Register(&snd_capture, "Sound controls");
Cvar_Register(&snd_inactive, "Sound controls");
if (host_parms.memsize < 0x800000)
{
Cvar_Set (&loadas8bit, "1");
@ -666,7 +666,7 @@ channel_t *SND_PickChannel(soundcardinfo_t *sc, int entnum, int entchannel)
}
// don't let monster sounds override player sounds
if (sc->channel[ch_idx].entnum == cl.viewentity && entnum != cl.viewentity && sc->channel[ch_idx].sfx)
if (sc->channel[ch_idx].entnum == cl.playernum[0]+1 && entnum != cl.playernum[0]+1 && sc->channel[ch_idx].sfx)
continue;
if (sc->channel[ch_idx].end < life_left)
@ -699,7 +699,7 @@ void SND_Spatialize(soundcardinfo_t *sc, channel_t *ch)
sfx_t *snd;
// anything coming from the view entity will allways be full volume
if (ch->entnum == -1 || ch->entnum == (cl.viewentity?cl.viewentity:cl.playernum[0]+1))
if (ch->entnum == -1 || ch->entnum == cl.playernum[0]+1)
{
ch->vol[0] = ch->master_vol;
ch->vol[1] = ch->master_vol;
@ -788,6 +788,9 @@ void SND_Spatialize(soundcardinfo_t *sc, channel_t *ch)
ch->vol[5] = (int) (ch->master_vol * scale[5]);
if (ch->vol[5] < 0)
ch->vol[5] = 0;
if (ch->vol[0])
Con_Printf("Spacialising\n");
}
// =======================================================================
@ -870,6 +873,8 @@ void S_StartSoundCard(soundcardinfo_t *sc, int entnum, int entchannel, sfx_t *sf
void S_StartSound(int entnum, int entchannel, sfx_t *sfx, vec3_t origin, float fvol, float attenuation)
{
soundcardinfo_t *sc;
Con_Printf("Starting sound %s\n", sfx->name);
if (!sfx || !*sfx->name) //no named sounds would need specific starting.
return;
@ -1165,8 +1170,13 @@ void S_UpdateCard(soundcardinfo_t *sc, vec3_t origin, vec3_t forward, vec3_t rig
channel_t *ch;
channel_t *combine;
if (!sound_started || (snd_blocked > 0))
if (!sound_started)
return;
if ((snd_blocked > 0))
{
if (!sc->inactive_sound)
return;
}
VectorCopy(origin, listener_origin);
VectorCopy(forward, listener_forward);
@ -1451,7 +1461,7 @@ void S_LocalSound (char *sound)
Con_Printf ("S_LocalSound: can't cache %s\n", sound);
return;
}
S_StartSound (cl.viewentity, -1, sfx, vec3_origin, 1, 1);
S_StartSound (-1, -1, sfx, vec3_origin, 1, 1);
}

View file

@ -85,6 +85,8 @@ int SNDDMA_Init(soundcardinfo_t *sc)
if (!strcmp(ec->name, snddev))
return 2;
sc->inactive_sound = true; //linux sound devices always play sound, even when we're not the active app...
// open the sound device, confirm capability to mmap, and get size of dma buffer
Q_strncpyz(sc->name, snddev, sizeof(sc->name));

View file

@ -587,6 +587,7 @@ void S_PaintChannels(soundcardinfo_t *sc, int endtime)
continue;
if (!ch->vol[0] && !ch->vol[1] && !ch->vol[2] && !ch->vol[3] && !ch->vol[4] && !ch->vol[5])
continue;
Con_Printf("Volume %i %i\n", ch->vol[0], ch->vol[1]);
scache = S_LoadSound (ch->sfx);
if (!scache)
continue;

View file

@ -95,9 +95,11 @@ void S_BlockSound (void)
for (sc = sndcardinfo; sc; sc=sc->next)
{
if (sc->snd_iswave)
if (snd_blocked == 1)
waveOutReset (sc->hWaveOut);
if (sc->snd_iswave && !sc->inactive_sound)
{
if (snd_blocked == 1)
waveOutReset (sc->hWaveOut);
}
}
}
@ -421,7 +423,7 @@ Direct-Sound support
*/
sndinitstat SNDDMA_InitDirect (soundcardinfo_t *sc)
{
extern cvar_t snd_khz, snd_eax, snd_speakers;
extern cvar_t snd_khz, snd_eax, snd_speakers, snd_inactive;
DSBUFFERDESC dsbuf;
DSBCAPS dsbcaps;
DWORD dwSize, dwWrite;
@ -613,7 +615,12 @@ sndinitstat SNDDMA_InitDirect (soundcardinfo_t *sc)
// create the secondary buffer we'll actually work with
memset (&dsbuf, 0, sizeof(dsbuf));
dsbuf.dwSize = sizeof(DSBUFFERDESC);
dsbuf.dwFlags = DSBCAPS_CTRLFREQUENCY | /*DSBCAPS_LOCSOFTWARE |*/ DSBCAPS_GLOBALFOCUS; //dmw 29 may, 2003 removed locsoftware
dsbuf.dwFlags = DSBCAPS_CTRLFREQUENCY; //dmw 29 may, 2003 removed locsoftware
if (snd_inactive.value)
{
dsbuf.dwFlags |= DSBCAPS_GLOBALFOCUS;
sc->inactive_sound = true;
}
dsbuf.dwBufferBytes = SECONDARY_BUFFER_SIZE;
dsbuf.lpwfxFormat = (WAVEFORMATEX *)&format;
@ -987,6 +994,8 @@ int SNDDMA_Init(soundcardinfo_t *sc)
if (COM_CheckParm ("-wavonly"))
wavonly = true;
sc->inactive_sound = false; //don't generate sound when the window is inactive.
#ifndef NODIRECTX
sc->dsound_init =
#endif

View file

@ -222,7 +222,7 @@ struct soundcardinfo_s { //windows has one defined AFTER directsound
qboolean inactive_sound;
qboolean snd_isdirect;
qboolean snd_iswave;

View file

@ -96,6 +96,7 @@ struct soundcardinfo_s {
DWORD mmstarttime;
DWORD gSndBufSize;
qboolean inactive_sound;
#ifndef NODIRECTX
qboolean snd_isdirect;
#endif

View file

@ -177,9 +177,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// defs common to client and server
#define GLQUAKE_VERSION 1.01
#define VERSION 2.55
#define LINUX_VERSION 0.98
#define VERSION 2.56
//#define VERSION3PART //add the 3rd decimal point of a more precise version.

View file

@ -3984,6 +3984,7 @@ void COM_Gamedir (char *dir)
Cbuf_InsertText("cl_warncmd 1\n", RESTRICT_LOCAL);
Cbuf_InsertText("exec frontend.cfg\n", RESTRICT_LOCAL);
Cbuf_InsertText("exec config.cfg\n", RESTRICT_LOCAL);
Cbuf_InsertText("exec fte.cfg\n", RESTRICT_LOCAL);
Cbuf_InsertText("cl_warncmd 0\n", RESTRICT_LOCAL);
}
}

View file

@ -53,17 +53,25 @@ typedef struct particle_s
float color;
vec3_t rgb;
float alpha;
float angle;
float scale;
union {
struct {
vec3_t vel;
float angle;
float rotationspeed;
float nextemit;
} p; //point blob
struct {
vec3_t org2;
vec3_t lastdir;
} b; //beam
} u;
// drivers never touch the following fields
vec3_t vel;
float rotationspeed;
struct particle_s *next;
float nextemit;
float die;
float scale;
} particle_t;
#define PARTICLE_Z_CLIP 8.0

View file

@ -288,14 +288,26 @@ void *BZF_Malloc(int size) //BZ_Malloc but allowed to fail - like straight mallo
#endif
}
#ifdef NAMEDMALLOCS
void *BZ_NamedRealloc(void *data, int newsize, char *file, int lineno)
#else
void *BZ_Realloc(void *data, int newsize)
#endif
{
zone_t *oldzone;
void *newdata;
#ifdef NAMEDMALLOCS
if (!data)
return Z_MallocNamed(newsize, file, lineno);
oldzone = ((zone_t *)((char *)data-MEMDEBUG))-1;
newdata = Z_MallocNamed(newsize, file, lineno);
#else
if (!data)
return Z_Malloc(newsize);
oldzone = ((zone_t *)((char *)data-MEMDEBUG))-1;
newdata = BZ_Malloc(newsize);
#endif
if (oldzone->size < newsize)
{
memcpy(newdata, data, oldzone->size);
@ -320,6 +332,7 @@ void Zone_Print_f(void)
int blocks = 0;
int futurehide = false;
int i;
int minsize = 0;
qbyte *sent;
zone_t *zone;
#if MEMDEBUG > 0
@ -331,8 +344,10 @@ void Zone_Print_f(void)
}
else
#endif
if (*Cmd_Argv(1))
if (*Cmd_Argv(1) == 'h')
futurehide = true;
else if (*Cmd_Argv(1))
minsize = atoi(Cmd_Argv(1));
for(zone = zone_head; zone; zone=zone->next)
{
blocks++;
@ -363,7 +378,7 @@ void Zone_Print_f(void)
}
}
}
else
else if (zone->size >= minsize)
#endif
Con_Printf("%i-%s\n", zone->size, (char *)(zone+1) + zone->size+MEMDEBUG*2);
if (futurehide)

View file

@ -107,6 +107,7 @@ int Z_Allocated(void);
void *BZ_Malloc(int size);
void *BZF_Malloc(int size);
void *BZ_Realloc(void *ptr, int size);
void *BZ_NamedRealloc(void *ptr, int size, char *, int);
void BZ_Free(void *ptr);
#ifdef NAMEDMALLOCS
@ -114,6 +115,8 @@ void BZ_Free(void *ptr);
#define Z_Malloc(size) Z_MallocNamed(size, __FILE__, __LINE__)
#define BZ_Realloc(ptr, size) BZ_NamedRealloc(ptr, size, __FILE__, __LINE__)
#endif
void *Hunk_Alloc (int size); // returns 0 filled memory

View file

@ -87,7 +87,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
# ADD LINK32 comctl32.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib /nologo /subsystem:windows /debug /machine:I386 /out:"../../fteqw.exe" /pdbtype:sept
# ADD LINK32 comctl32.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib ws32_2.lib /nologo /subsystem:windows /debug /machine:I386 /out:"../../fteqw.exe" /pdbtype:sept
!ELSEIF "$(CFG)" == "ftequake - Win32 GLDebug"
@ -6535,6 +6535,10 @@ SOURCE=..\common\bothdefs.h
# End Source File
# Begin Source File
SOURCE=..\sw\d_ifacea.h
# End Source File
# Begin Source File
SOURCE=..\common\protocol.h
# End Source File
# End Group

View file

@ -27,6 +27,18 @@ Package=<4>
###############################################################################
Project: "irc"=..\..\PLUGINS\IRC\irc.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Project: "qcc"=..\qclib\qcc.dsp - Package Owner=<4>
Package=<5>
@ -39,6 +51,18 @@ Package=<4>
###############################################################################
Project: "serverb"=..\..\PLUGINS\serverb\serverb.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>

View file

@ -1468,21 +1468,6 @@ void GLDraw_ConsoleBackground (int lines)
{
GLDraw_AlphaPic (0, lines - vid.height, conback, (float)(1.2 * lines)/y);
}
/*
// hack the version number directly into the pic
// y = lines-186;
y = lines-14;
if (!cls.download) {
#ifdef __linux__
sprintf (ver, "LinuxGL (%4.2f) QuakeWorld", LINUX_VERSION);
#else
sprintf (ver, "GL (%4.2f) QuakeWorld", GLQUAKE_VERSION);
#endif
x = vid.conwidth - (strlen(ver)*8 + 11) - (vid.conwidth*8/320)*7;
for (i=0 ; i<strlen(ver) ; i++)
Draw_Character (x + i * 8, y, ver[i] | 0x80);
}
*/
}
void GLDraw_EditorBackground (int lines)

View file

@ -1481,6 +1481,8 @@ void PPL_BaseEntTextures(void)
if (cl.viewentity[r_refdef.currentplayernum] && currententity->keynum == cl.viewentity[r_refdef.currentplayernum])
continue;
if (!Cam_DrawPlayer(0, currententity->keynum-1))
continue;
if (!currententity->model)
continue;

View file

@ -741,6 +741,7 @@ R_PolyBlend
*/
void R_PolyBlend (void)
{
extern qboolean gammaworks;
if (!v_blend[3])
return;

View file

@ -2617,6 +2617,8 @@ void SV_Impulse_f (void)
pr_global_struct->time = sv.time;
memset (&svs.clients[i].edict->v, 0, pr_edict_size-svprogparms.edictsize);
svs.clients[i].edict->v.netname = PR_SetString(svprogfuncs, "Console");
pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, svs.clients[i].edict);
@ -2631,6 +2633,13 @@ void SV_Impulse_f (void)
pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, svs.clients[i].edict);
PR_ExecuteProgram (svprogfuncs, pr_global_struct->PlayerPreThink);
pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, svs.clients[i].edict);
PR_ExecuteProgram (svprogfuncs, svs.clients[i].edict->v.think);
{
char buffer[256] = "self.ishuman";
pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, svs.clients[i].edict);
Con_Printf("Result: %s\n", svprogfuncs->EvaluateDebugString(svprogfuncs, buffer));
}
pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, svs.clients[i].edict);
PR_ExecuteProgram (svprogfuncs, pr_global_struct->PlayerPostThink);

View file

@ -321,7 +321,7 @@ int SV_FlyMove (edict_t *ent, float time, trace_t *steptrace)
return 3;
}
if (1)
if (0)
{
ClipVelocity(ent->v.velocity, trace.plane.normal, ent->v.velocity, 1);
break;

View file

@ -3916,6 +3916,20 @@ haveannothergo:
cl->lastcmd = newcmd;
cl->lastcmd.buttons = 0; // avoid multiple fires on lag
if (msg_badread)
{
Con_Printf ("SV_ReadClientMessage: badread\n");
SV_DropClient (cl);
return;
}
c = MSG_ReadByte ();
if (c != clc_move)
{
host_client = cl = split;
sv_player = cl->edict;
goto haveannothergo;
}
continue;
}
SV_PreRunCmd();
@ -4661,5 +4675,7 @@ void SV_ClientThink (void)
}
SV_AirMove ();
Con_Printf("%f %f %f\n", sv_player->v.velocity[0], sv_player->v.velocity[1], sv_player->v.velocity[2]);
}

View file

@ -49,12 +49,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define pt_org 0
#define pt_color 12
// drivers never touch the following fields
#define pt_next 16
/*#define pt_next 16
#define pt_vel 20
#define pt_ramp 32
#define pt_die 36
#define pt_type 40
#define pt_size 44
#define pt_size 44*/
#define PARTICLE_Z_CLIP 8.0

View file

@ -752,7 +752,7 @@ void D_DrawSparkTrans32 (particle_t *pparticle) //draw a line in 3d space
if (pparticle->alpha <= 0.0)
return;
speed = Length(pparticle->vel);
speed = Length(pparticle->u.p.vel);
if ((speed) < 1)
{
D_2dPos(pparticle->org, &u1, &v1, &z1);
@ -762,9 +762,9 @@ void D_DrawSparkTrans32 (particle_t *pparticle) //draw a line in 3d space
{ //causes flickers with lower vels (due to bouncing in physics)
if (speed < 50)
speed *= 50/speed;
VectorMA(pparticle->org, 5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, 5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u1, &v1, &z1);
VectorMA(pparticle->org, -5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, -5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u2, &v2, &z2);
}
@ -851,7 +851,7 @@ void D_DrawSparkTrans16 (particle_t *pparticle) //draw a line in 3d space, 8bpp
if (pparticle->alpha <= 0.0)
return;
speed = Length(pparticle->vel);
speed = Length(pparticle->u.p.vel);
if ((speed) < 1)
{
D_2dPos(pparticle->org, &u1, &v1, &z1);
@ -861,9 +861,9 @@ void D_DrawSparkTrans16 (particle_t *pparticle) //draw a line in 3d space, 8bpp
{ //causes flickers with lower vels (due to bouncing in physics)
if (speed < 50)
speed *= 50/speed;
VectorMA(pparticle->org, 2.5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, 2.5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u1, &v1, &z1);
VectorMA(pparticle->org, -2.5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, -2.5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u2, &v2, &z2);
}
@ -955,7 +955,7 @@ void D_DrawSparkTrans (particle_t *pparticle) //draw a line in 3d space, 8bpp
if (t_state & TT_ZERO)
return;
speed = Length(pparticle->vel);
speed = Length(pparticle->u.p.vel);
if ((speed) < 1)
{
D_2dPos(pparticle->org, &u1, &v1, &z1);
@ -965,9 +965,9 @@ void D_DrawSparkTrans (particle_t *pparticle) //draw a line in 3d space, 8bpp
{ //causes flickers with lower vels (due to bouncing in physics)
if (speed < 50)
speed *= 50/speed;
VectorMA(pparticle->org, 2.5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, 2.5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u1, &v1, &z1);
VectorMA(pparticle->org, -2.5/(speed), pparticle->vel, delta);
VectorMA(pparticle->org, -2.5/(speed), pparticle->u.p.vel, delta);
D_2dPos(delta, &u2, &v2, &z2);
}

View file

@ -1639,43 +1639,8 @@ void SWDraw_ConsoleBackground (int lines)
//sprintf (ver, "start commands with a \\ character %4.2f", VERSION);
if (cls.downloadmethod) //don't cover the downloading bit.
{
sprintf (ver, "%4.2f", VERSION);
dest = conback->data + 320 + 320*186 - 11 - 8*strlen(ver);
}
else
{
if (r_pixbytes == 4)
#ifdef DISTRIBUTION
#if defined(__linux__)
sprintf (ver, "rgb Linux (%4.2f) QuakeWorld %s %4.2f", LINUX_VERSION, DISTRIBUTION, VERSION);
#else
sprintf (ver, "rgb QuakeWorld %s %4.2f", DISTRIBUTION, VERSION);
#endif
#else
#if defined(__linux__)
sprintf (ver, "rgb Linux (%4.2f) QuakeWorld %4.2f", LINUX_VERSION, VERSION);
#else
sprintf (ver, "rgb QuakeWorld %4.2f", VERSION);
#endif
#endif
else
#ifdef DISTRIBUTION
#if defined(__linux__)
sprintf (ver, "Linux (%4.2f) QuakeWorld %s %4.2f", LINUX_VERSION, DISTRIBUTION, VERSION);
#else
sprintf (ver, "QuakeWorld %s %4.2f", DISTRIBUTION, VERSION);
#endif
#else
#if defined(__linux__)
sprintf (ver, "Linux (%4.2f) QuakeWorld %4.2f", LINUX_VERSION, VERSION);
#else
sprintf (ver, "QuakeWorld %4.2f", VERSION);
#endif
#endif
dest = conback->data + 320 - (strlen(ver)*8 + 11) + 320*186;
}
sprintf (ver, "%4.2f", VERSION);
dest = conback->data + 320 + 320*186 - 11 - 8*strlen(ver);
memcpy(saveback, conback->data + 320*186, 320*8);
for (x=0 ; x<strlen(ver) ; x++)