mirror of
https://git.code.sf.net/p/quake/quake2forge
synced 2024-12-13 14:11:35 +00:00
- Removed shadows from some projectile weapons: blaster,
hyperblaster, and rockets. - Removed shadows from explosions. - Updated TODO to reflect this change.
This commit is contained in:
parent
e6e56b43b3
commit
91d8ce1e74
6 changed files with 82 additions and 69 deletions
2
TODO
2
TODO
|
@ -25,7 +25,7 @@ http://gozer.quakeforge.net/list-archives/quakeforge-cvs/2002-April/000151.html
|
||||||
from http://www.quakesrc.org/?Page=tutorials&Dir=Quake2 :
|
from http://www.quakesrc.org/?Page=tutorials&Dir=Quake2 :
|
||||||
(replace - with X when done)
|
(replace - with X when done)
|
||||||
|
|
||||||
- Removing shadows on certain objects
|
X Removing shadows on certain objects
|
||||||
- Fixing dlight shine trough
|
- Fixing dlight shine trough
|
||||||
- Fix for left over icons on windows taskbar
|
- Fix for left over icons on windows taskbar
|
||||||
- Adding a clock to the console
|
- Adding a clock to the console
|
||||||
|
|
|
@ -1,25 +1,26 @@
|
||||||
/*
|
/* $Id$
|
||||||
Copyright (C) 1997-2001 Id Software, Inc.
|
*
|
||||||
|
* Copyright (C) 1997-2001 Id Software, Inc.
|
||||||
|
* Copyright (c) 2002 The Quakeforge Project.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*
|
||||||
|
* See the GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU General Public License
|
|
||||||
as published by the Free Software Foundation; either version 2
|
|
||||||
of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
See the GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
*/
|
|
||||||
#include "g_local.h"
|
#include "g_local.h"
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
=================
|
=================
|
||||||
check_dodge
|
check_dodge
|
||||||
|
@ -374,6 +375,7 @@ void fire_blaster (edict_t *self, vec3_t start, vec3_t dir, int damage, int spee
|
||||||
bolt->think = G_FreeEdict;
|
bolt->think = G_FreeEdict;
|
||||||
bolt->dmg = damage;
|
bolt->dmg = damage;
|
||||||
bolt->classname = "bolt";
|
bolt->classname = "bolt";
|
||||||
|
bolt->s.renderfx = RF_NOSHADOW;
|
||||||
if (hyper)
|
if (hyper)
|
||||||
bolt->spawnflags = 1;
|
bolt->spawnflags = 1;
|
||||||
gi.linkentity (bolt);
|
gi.linkentity (bolt);
|
||||||
|
@ -483,6 +485,7 @@ static void Grenade_Touch (edict_t *ent, edict_t *other, cplane_t *plane, csurfa
|
||||||
Grenade_Explode (ent);
|
Grenade_Explode (ent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* gren launcher */
|
||||||
void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius)
|
void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius)
|
||||||
{
|
{
|
||||||
edict_t *grenade;
|
edict_t *grenade;
|
||||||
|
@ -516,6 +519,7 @@ void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int s
|
||||||
gi.linkentity (grenade);
|
gi.linkentity (grenade);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* hand grenade */
|
||||||
void fire_grenade2 (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius, qboolean held)
|
void fire_grenade2 (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius, qboolean held)
|
||||||
{
|
{
|
||||||
edict_t *grenade;
|
edict_t *grenade;
|
||||||
|
@ -642,6 +646,7 @@ void fire_rocket (edict_t *self, vec3_t start, vec3_t dir, int damage, int speed
|
||||||
rocket->dmg_radius = damage_radius;
|
rocket->dmg_radius = damage_radius;
|
||||||
rocket->s.sound = gi.soundindex ("weapons/rockfly.wav");
|
rocket->s.sound = gi.soundindex ("weapons/rockfly.wav");
|
||||||
rocket->classname = "rocket";
|
rocket->classname = "rocket";
|
||||||
|
rocket->s.renderfx = RF_NOSHADOW;
|
||||||
|
|
||||||
if (self->client)
|
if (self->client)
|
||||||
check_dodge (self, rocket->s.origin, dir, speed);
|
check_dodge (self, rocket->s.origin, dir, speed);
|
||||||
|
|
|
@ -1,23 +1,25 @@
|
||||||
/*
|
/* $Id$
|
||||||
Copyright (C) 1997-2001 Id Software, Inc.
|
*
|
||||||
|
* client side temporary entities
|
||||||
This program is free software; you can redistribute it and/or
|
*
|
||||||
modify it under the terms of the GNU General Public License
|
* Copyright (C) 1997-2001 Id Software, Inc.
|
||||||
as published by the Free Software Foundation; either version 2
|
* Copyright (c) 2002 The Quakeforge Project.
|
||||||
of the License, or (at your option) any later version.
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
This program is distributed in the hope that it will be useful,
|
* modify it under the terms of the GNU General Public License
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* as published by the Free Software Foundation; either version 2
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
See the GNU General Public License for more details.
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
You should have received a copy of the GNU General Public License
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
along with this program; if not, write to the Free Software
|
*
|
||||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
* See the GNU General Public License for more details.
|
||||||
|
*
|
||||||
*/
|
* You should have received a copy of the GNU General Public License
|
||||||
// cl_tent.c -- client side temporary entities
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
#include "client.h"
|
#include "client.h"
|
||||||
|
|
||||||
|
@ -839,7 +841,7 @@ void CL_ParseTEnt (void)
|
||||||
ex = CL_AllocExplosion ();
|
ex = CL_AllocExplosion ();
|
||||||
VectorCopy (pos, ex->ent.origin);
|
VectorCopy (pos, ex->ent.origin);
|
||||||
ex->type = ex_poly;
|
ex->type = ex_poly;
|
||||||
ex->ent.flags = RF_FULLBRIGHT;
|
ex->ent.flags = RF_FULLBRIGHT|RF_NOSHADOW;
|
||||||
ex->start = cl.frame.servertime - 100;
|
ex->start = cl.frame.servertime - 100;
|
||||||
ex->light = 350;
|
ex->light = 350;
|
||||||
ex->lightcolor[0] = 1.0;
|
ex->lightcolor[0] = 1.0;
|
||||||
|
@ -862,7 +864,7 @@ void CL_ParseTEnt (void)
|
||||||
ex = CL_AllocExplosion ();
|
ex = CL_AllocExplosion ();
|
||||||
VectorCopy (pos, ex->ent.origin);
|
VectorCopy (pos, ex->ent.origin);
|
||||||
ex->type = ex_poly;
|
ex->type = ex_poly;
|
||||||
ex->ent.flags = RF_FULLBRIGHT;
|
ex->ent.flags = RF_FULLBRIGHT|RF_NOSHADOW;
|
||||||
ex->start = cl.frame.servertime - 100;
|
ex->start = cl.frame.servertime - 100;
|
||||||
ex->light = 350;
|
ex->light = 350;
|
||||||
ex->lightcolor[0] = 1.0;
|
ex->lightcolor[0] = 1.0;
|
||||||
|
@ -887,7 +889,7 @@ void CL_ParseTEnt (void)
|
||||||
ex = CL_AllocExplosion ();
|
ex = CL_AllocExplosion ();
|
||||||
VectorCopy (pos, ex->ent.origin);
|
VectorCopy (pos, ex->ent.origin);
|
||||||
ex->type = ex_poly;
|
ex->type = ex_poly;
|
||||||
ex->ent.flags = RF_FULLBRIGHT;
|
ex->ent.flags = RF_FULLBRIGHT|RF_NOSHADOW;
|
||||||
ex->start = cl.frame.servertime - 100;
|
ex->start = cl.frame.servertime - 100;
|
||||||
ex->light = 350;
|
ex->light = 350;
|
||||||
ex->lightcolor[0] = 1.0;
|
ex->lightcolor[0] = 1.0;
|
||||||
|
@ -914,7 +916,7 @@ void CL_ParseTEnt (void)
|
||||||
ex = CL_AllocExplosion ();
|
ex = CL_AllocExplosion ();
|
||||||
VectorCopy (pos, ex->ent.origin);
|
VectorCopy (pos, ex->ent.origin);
|
||||||
ex->type = ex_poly;
|
ex->type = ex_poly;
|
||||||
ex->ent.flags = RF_FULLBRIGHT;
|
ex->ent.flags = RF_FULLBRIGHT|RF_NOSHADOW;
|
||||||
ex->start = cl.frame.servertime - 100;
|
ex->start = cl.frame.servertime - 100;
|
||||||
ex->light = 350;
|
ex->light = 350;
|
||||||
ex->lightcolor[0] = 0.0;
|
ex->lightcolor[0] = 0.0;
|
||||||
|
@ -1064,7 +1066,7 @@ void CL_ParseTEnt (void)
|
||||||
ex = CL_AllocExplosion ();
|
ex = CL_AllocExplosion ();
|
||||||
VectorCopy (pos, ex->ent.origin);
|
VectorCopy (pos, ex->ent.origin);
|
||||||
ex->type = ex_poly;
|
ex->type = ex_poly;
|
||||||
ex->ent.flags = RF_FULLBRIGHT;
|
ex->ent.flags = RF_FULLBRIGHT|RF_NOSHADOW;
|
||||||
ex->start = cl.frame.servertime - 100;
|
ex->start = cl.frame.servertime - 100;
|
||||||
ex->light = 350;
|
ex->light = 350;
|
||||||
ex->lightcolor[0] = 1.0;
|
ex->lightcolor[0] = 1.0;
|
||||||
|
|
|
@ -1,25 +1,26 @@
|
||||||
/*
|
/* $Id$
|
||||||
Copyright (C) 1997-2001 Id Software, Inc.
|
*
|
||||||
|
* Copyright (C) 1997-2001 Id Software, Inc.
|
||||||
|
* Copyright (c) 2002 The Quakeforge Project.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*
|
||||||
|
* See the GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU General Public License
|
|
||||||
as published by the Free Software Foundation; either version 2
|
|
||||||
of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
|
|
||||||
See the GNU General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public License
|
|
||||||
along with this program; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
||||||
|
|
||||||
*/
|
|
||||||
#include "g_local.h"
|
#include "g_local.h"
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
=================
|
=================
|
||||||
check_dodge
|
check_dodge
|
||||||
|
@ -369,6 +370,7 @@ void fire_blaster (edict_t *self, vec3_t start, vec3_t dir, int damage, int spee
|
||||||
bolt->think = G_FreeEdict;
|
bolt->think = G_FreeEdict;
|
||||||
bolt->dmg = damage;
|
bolt->dmg = damage;
|
||||||
bolt->classname = "bolt";
|
bolt->classname = "bolt";
|
||||||
|
bolt->s.renderfx = RF_NOSHADOW;
|
||||||
if (hyper)
|
if (hyper)
|
||||||
bolt->spawnflags = 1;
|
bolt->spawnflags = 1;
|
||||||
gi.linkentity (bolt);
|
gi.linkentity (bolt);
|
||||||
|
@ -478,6 +480,7 @@ static void Grenade_Touch (edict_t *ent, edict_t *other, cplane_t *plane, csurfa
|
||||||
Grenade_Explode (ent);
|
Grenade_Explode (ent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* gren launcher */
|
||||||
void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius)
|
void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius)
|
||||||
{
|
{
|
||||||
edict_t *grenade;
|
edict_t *grenade;
|
||||||
|
@ -511,6 +514,7 @@ void fire_grenade (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int s
|
||||||
gi.linkentity (grenade);
|
gi.linkentity (grenade);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* hand grenade */
|
||||||
void fire_grenade2 (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius, qboolean held)
|
void fire_grenade2 (edict_t *self, vec3_t start, vec3_t aimdir, int damage, int speed, float timer, float damage_radius, qboolean held)
|
||||||
{
|
{
|
||||||
edict_t *grenade;
|
edict_t *grenade;
|
||||||
|
@ -637,6 +641,7 @@ void fire_rocket (edict_t *self, vec3_t start, vec3_t dir, int damage, int speed
|
||||||
rocket->dmg_radius = damage_radius;
|
rocket->dmg_radius = damage_radius;
|
||||||
rocket->s.sound = gi.soundindex ("weapons/rockfly.wav");
|
rocket->s.sound = gi.soundindex ("weapons/rockfly.wav");
|
||||||
rocket->classname = "rocket";
|
rocket->classname = "rocket";
|
||||||
|
rocket->s.renderfx = RF_NOSHADOW;
|
||||||
|
|
||||||
if (self->client)
|
if (self->client)
|
||||||
check_dodge (self, rocket->s.origin, dir, speed);
|
check_dodge (self, rocket->s.origin, dir, speed);
|
||||||
|
|
|
@ -857,8 +857,8 @@ void R_DrawAliasModel (entity_t *e)
|
||||||
qglDepthRange (gldepthmin, gldepthmax);
|
qglDepthRange (gldepthmin, gldepthmax);
|
||||||
|
|
||||||
//#if 1
|
//#if 1
|
||||||
if (gl_shadows->value && !(currententity->flags & (RF_TRANSLUCENT | RF_WEAPONMODEL)))
|
if (gl_shadows->value &&
|
||||||
{
|
!(currententity->flags & (RF_TRANSLUCENT|RF_WEAPONMODEL|RF_NOSHADOW))) {
|
||||||
qglPushMatrix ();
|
qglPushMatrix ();
|
||||||
|
|
||||||
/* don't rotate shadows on ungodly axes */
|
/* don't rotate shadows on ungodly axes */
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
/* $Id$
|
/* $Id$
|
||||||
|
*
|
||||||
|
* included first by ALL program modules
|
||||||
*
|
*
|
||||||
* Copyright (C) 1997-2001 Id Software, Inc.
|
* Copyright (C) 1997-2001 Id Software, Inc.
|
||||||
* Copyright (c) 2002 The Quakeforge Project.
|
* Copyright (c) 2002 The Quakeforge Project.
|
||||||
|
@ -21,8 +23,6 @@
|
||||||
|
|
||||||
#include "gcc_attr.h"
|
#include "gcc_attr.h"
|
||||||
|
|
||||||
// q_shared.h -- included first by ALL program modules
|
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
// unknown pragmas are SUPPOSED to be ignored, but....
|
// unknown pragmas are SUPPOSED to be ignored, but....
|
||||||
#pragma warning(disable : 4244) // MIPS
|
#pragma warning(disable : 4244) // MIPS
|
||||||
|
@ -611,6 +611,7 @@ typedef struct
|
||||||
#define RF_SHELL_RED 1024
|
#define RF_SHELL_RED 1024
|
||||||
#define RF_SHELL_GREEN 2048
|
#define RF_SHELL_GREEN 2048
|
||||||
#define RF_SHELL_BLUE 4096
|
#define RF_SHELL_BLUE 4096
|
||||||
|
#define RF_NOSHADOW 8192 /* don't draw a shadow */
|
||||||
|
|
||||||
//ROGUE
|
//ROGUE
|
||||||
#define RF_IR_VISIBLE 0x00008000 // 32768
|
#define RF_IR_VISIBLE 0x00008000 // 32768
|
||||||
|
|
Loading…
Reference in a new issue