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:
parent
1ba53e017e
commit
5fbe74b582
31 changed files with 884 additions and 528 deletions
|
@ -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)
|
||||
|
|
|
@ -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 ();
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -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));
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -222,7 +222,7 @@ struct soundcardinfo_s { //windows has one defined AFTER directsound
|
|||
|
||||
|
||||
|
||||
|
||||
qboolean inactive_sound;
|
||||
|
||||
qboolean snd_isdirect;
|
||||
qboolean snd_iswave;
|
||||
|
|
|
@ -96,6 +96,7 @@ struct soundcardinfo_s {
|
|||
DWORD mmstarttime;
|
||||
DWORD gSndBufSize;
|
||||
|
||||
qboolean inactive_sound;
|
||||
#ifndef NODIRECTX
|
||||
qboolean snd_isdirect;
|
||||
#endif
|
||||
|
|
|
@ -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.
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -741,6 +741,7 @@ R_PolyBlend
|
|||
*/
|
||||
void R_PolyBlend (void)
|
||||
{
|
||||
extern qboolean gammaworks;
|
||||
if (!v_blend[3])
|
||||
return;
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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]);
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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++)
|
||||
|
|
Loading…
Reference in a new issue