mirror of
https://github.com/yquake2/yquake2remaster.git
synced 2024-11-24 21:41:10 +00:00
Merge remote-tracking branch 'yquake2/master'
This commit is contained in:
commit
80a4282ec7
6 changed files with 32 additions and 15 deletions
|
@ -120,6 +120,11 @@ Set `0` by default.
|
||||||
* **cl_kickangles**: If set to `0` angle kicks (weapon recoil, damage
|
* **cl_kickangles**: If set to `0` angle kicks (weapon recoil, damage
|
||||||
hits and the like) are ignored. Cheat-protected. Defaults to `1`.
|
hits and the like) are ignored. Cheat-protected. Defaults to `1`.
|
||||||
|
|
||||||
|
* **cl_laseralpha**: Controls how see-through laserbeams are.
|
||||||
|
The value ranges from 0.0 to 1.0, from completely invisible to
|
||||||
|
completely opaque. So higher value means better visibility.
|
||||||
|
Defaults to `0.3`.
|
||||||
|
|
||||||
* **cl_limitsparksounds**: If set to `1` the number of sound generated
|
* **cl_limitsparksounds**: If set to `1` the number of sound generated
|
||||||
when shooting into power screen and power shields is limited to 16.
|
when shooting into power screen and power shields is limited to 16.
|
||||||
This works around global volume drops in some OpenAL implementations
|
This works around global volume drops in some OpenAL implementations
|
||||||
|
|
|
@ -139,8 +139,17 @@ CL_AddPacketEntities(frame_t *frame)
|
||||||
/* tweak the color of beams */
|
/* tweak the color of beams */
|
||||||
if (renderfx & RF_BEAM)
|
if (renderfx & RF_BEAM)
|
||||||
{
|
{
|
||||||
|
ent.alpha = cl_laseralpha->value;
|
||||||
|
if (ent.alpha < 0.0f)
|
||||||
|
{
|
||||||
|
ent.alpha = 0.0f;
|
||||||
|
}
|
||||||
|
else if (ent.alpha > 1.0f)
|
||||||
|
{
|
||||||
|
ent.alpha = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
/* the four beam colors are encoded in 32 bits of skinnum (hack) */
|
/* the four beam colors are encoded in 32 bits of skinnum (hack) */
|
||||||
ent.alpha = 0.30f;
|
|
||||||
ent.skinnum = (s1->skinnum >> ((randk() % 4) * 8)) & 0xff;
|
ent.skinnum = (s1->skinnum >> ((randk() % 4) * 8)) & 0xff;
|
||||||
ent.model = NULL;
|
ent.model = NULL;
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,6 +50,7 @@ cvar_t *cl_add_lights;
|
||||||
cvar_t *cl_add_entities;
|
cvar_t *cl_add_entities;
|
||||||
cvar_t *cl_add_blend;
|
cvar_t *cl_add_blend;
|
||||||
cvar_t *cl_kickangles;
|
cvar_t *cl_kickangles;
|
||||||
|
cvar_t *cl_laseralpha;
|
||||||
|
|
||||||
cvar_t *cl_shownet;
|
cvar_t *cl_shownet;
|
||||||
cvar_t *cl_showmiss;
|
cvar_t *cl_showmiss;
|
||||||
|
@ -517,6 +518,7 @@ CL_InitLocal(void)
|
||||||
cl_predict = Cvar_Get("cl_predict", "1", 0);
|
cl_predict = Cvar_Get("cl_predict", "1", 0);
|
||||||
cl_showfps = Cvar_Get("cl_showfps", "0", CVAR_ARCHIVE);
|
cl_showfps = Cvar_Get("cl_showfps", "0", CVAR_ARCHIVE);
|
||||||
cl_showspeed = Cvar_Get("cl_showspeed", "0", CVAR_ARCHIVE);
|
cl_showspeed = Cvar_Get("cl_showspeed", "0", CVAR_ARCHIVE);
|
||||||
|
cl_laseralpha = Cvar_Get("cl_laseralpha", "0.3", 0);
|
||||||
|
|
||||||
cl_upspeed = Cvar_Get("cl_upspeed", "200", 0);
|
cl_upspeed = Cvar_Get("cl_upspeed", "200", 0);
|
||||||
cl_forwardspeed = Cvar_Get("cl_forwardspeed", "200", 0);
|
cl_forwardspeed = Cvar_Get("cl_forwardspeed", "200", 0);
|
||||||
|
|
|
@ -492,10 +492,20 @@ CL_ParseLaser(int colors)
|
||||||
{
|
{
|
||||||
if (l->endtime < cl.time)
|
if (l->endtime < cl.time)
|
||||||
{
|
{
|
||||||
|
float alpha = cl_laseralpha->value;
|
||||||
|
if (alpha < 0.0f)
|
||||||
|
{
|
||||||
|
alpha = 0.0f;
|
||||||
|
}
|
||||||
|
else if (alpha > 1.0f)
|
||||||
|
{
|
||||||
|
alpha = 1.0f;
|
||||||
|
}
|
||||||
|
|
||||||
l->ent.flags = RF_TRANSLUCENT | RF_BEAM;
|
l->ent.flags = RF_TRANSLUCENT | RF_BEAM;
|
||||||
VectorCopy(start, l->ent.origin);
|
VectorCopy(start, l->ent.origin);
|
||||||
VectorCopy(end, l->ent.oldorigin);
|
VectorCopy(end, l->ent.oldorigin);
|
||||||
l->ent.alpha = 0.30f;
|
l->ent.alpha = alpha;
|
||||||
l->ent.skinnum = (colors >> ((randk() % 4) * 8)) & 0xff;
|
l->ent.skinnum = (colors >> ((randk() % 4) * 8)) & 0xff;
|
||||||
l->ent.model = NULL;
|
l->ent.model = NULL;
|
||||||
l->ent.frame = 4;
|
l->ent.frame = 4;
|
||||||
|
|
|
@ -316,6 +316,7 @@ extern cvar_t *vid_renderer;
|
||||||
extern cvar_t *cl_kickangles;
|
extern cvar_t *cl_kickangles;
|
||||||
extern cvar_t *cl_r1q2_lightstyle;
|
extern cvar_t *cl_r1q2_lightstyle;
|
||||||
extern cvar_t *cl_limitsparksounds;
|
extern cvar_t *cl_limitsparksounds;
|
||||||
|
extern cvar_t *cl_laseralpha;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
|
|
|
@ -581,19 +581,9 @@ double sqrt(double x);
|
||||||
vec_t
|
vec_t
|
||||||
VectorLength(const vec3_t v)
|
VectorLength(const vec3_t v)
|
||||||
{
|
{
|
||||||
int i;
|
return sqrtf((v[0] * v[0]) +
|
||||||
float length;
|
(v[1] * v[1]) +
|
||||||
|
(v[2] * v[2]));
|
||||||
length = 0;
|
|
||||||
|
|
||||||
for (i = 0; i < 3; i++)
|
|
||||||
{
|
|
||||||
length += v[i] * v[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
length = (float)sqrt(length);
|
|
||||||
|
|
||||||
return length;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in a new issue