mirror of
https://github.com/yquake2/yquake2remaster.git
synced 2024-11-10 07:12:07 +00:00
Fix endline in files, without code changes
Run: sed -i 's/[[:blank:]]*$//' */*.{c,h}
This commit is contained in:
parent
e1fd35316d
commit
64215c04f6
22 changed files with 102 additions and 102 deletions
|
@ -576,7 +576,7 @@ Sys_RemoveDir(const char *path)
|
|||
WCHAR wpathwithwildcard[MAX_OSPATH] = {0};
|
||||
WCHAR wpathwithfilename[MAX_OSPATH] = {0};
|
||||
WIN32_FIND_DATAW fd;
|
||||
|
||||
|
||||
if (MultiByteToWideChar(CP_UTF8, 0, path, -1, wpath, MAX_OSPATH) >= MAX_QPATH)
|
||||
{
|
||||
/* This is hopefully never reached, because in a good
|
||||
|
@ -588,7 +588,7 @@ Sys_RemoveDir(const char *path)
|
|||
|
||||
wcsncpy(wpathwithwildcard, wpath, MAX_OSPATH);
|
||||
wcscat(wpathwithwildcard, L"\\*.*");
|
||||
|
||||
|
||||
HANDLE hFind = FindFirstFileW(wpathwithwildcard, &fd);
|
||||
if (hFind != INVALID_HANDLE_VALUE)
|
||||
{
|
||||
|
@ -603,13 +603,13 @@ Sys_RemoveDir(const char *path)
|
|||
wmemset(wpathwithfilename, 0, MAX_OSPATH);
|
||||
wcscat(wpathwithfilename, wpath);
|
||||
wcscat(wpathwithfilename, fd.cFileName);
|
||||
|
||||
|
||||
DeleteFileW(wpathwithfilename);
|
||||
}
|
||||
while (FindNextFileW(hFind, &fd));
|
||||
FindClose(hFind);
|
||||
}
|
||||
|
||||
|
||||
RemoveDirectoryW(wpath);
|
||||
}
|
||||
|
||||
|
|
|
@ -558,7 +558,7 @@ CL_AddMuzzleFlash2(void)
|
|||
CL_SmokeAndFlash(origin);
|
||||
Com_sprintf(soundname, sizeof(soundname), "tank/tnkatk2%c.wav",
|
||||
'a' + (char)(randk() % 5));
|
||||
S_StartSound(NULL, ent, CHAN_WEAPON,
|
||||
S_StartSound(NULL, ent, CHAN_WEAPON,
|
||||
S_RegisterSound(soundname), 1, ATTN_NORM, 0);
|
||||
break;
|
||||
|
||||
|
@ -1316,7 +1316,7 @@ MakeNormalVectors(vec3_t forward, vec3_t right, vec3_t up)
|
|||
{
|
||||
float d;
|
||||
|
||||
/* this rotate and negate guarantees a
|
||||
/* this rotate and negate guarantees a
|
||||
vector not colinear with the original */
|
||||
right[1] = -forward[0];
|
||||
right[2] = forward[1];
|
||||
|
@ -1981,7 +1981,7 @@ CL_TeleportParticles(vec3_t org)
|
|||
}
|
||||
|
||||
/*
|
||||
* An entity has just been parsed that has an
|
||||
* An entity has just been parsed that has an
|
||||
* event value. the female events are there for
|
||||
* backwards compatability
|
||||
*/
|
||||
|
|
|
@ -145,7 +145,7 @@ qboolean qcurlInit(void)
|
|||
var = Sys_GetProcAddress(curlhandle, sym); \
|
||||
if (!var) goto error; \
|
||||
} while(0)
|
||||
|
||||
|
||||
CONCURL(qcurl_easy_cleanup, "curl_easy_cleanup");
|
||||
CONCURL(qcurl_easy_init, "curl_easy_init");
|
||||
CONCURL(qcurl_easy_getinfo, "curl_easy_getinfo");
|
||||
|
|
|
@ -87,7 +87,7 @@ typedef struct
|
|||
typedef struct
|
||||
{
|
||||
menucommon_s generic;
|
||||
char * focuspic;
|
||||
char * focuspic;
|
||||
char * errorpic;
|
||||
int width;
|
||||
int height;
|
||||
|
|
|
@ -2447,7 +2447,7 @@ Options_MenuInit(void)
|
|||
s_options_crosshair_box.generic.name = "crosshair";
|
||||
s_options_crosshair_box.generic.callback = CrosshairFunc;
|
||||
s_options_crosshair_box.itemnames = crosshair_names;
|
||||
|
||||
|
||||
s_options_pauseonfocus_box.generic.type = MTYPE_SPINCONTROL;
|
||||
s_options_pauseonfocus_box.generic.x = 0;
|
||||
s_options_pauseonfocus_box.generic.y = (y += 10);
|
||||
|
@ -5515,11 +5515,11 @@ PlayerDirectoryList(void)
|
|||
char* t = list[i];
|
||||
|
||||
YQ2_COM_CHECK_OOM(s, "malloc()", MAX_QPATH * sizeof(char))
|
||||
|
||||
|
||||
Q_strlcpy(s, t, MAX_QPATH);
|
||||
data[i] = s;
|
||||
}
|
||||
|
||||
|
||||
// free file list
|
||||
FS_FreeList(list, num);
|
||||
|
||||
|
@ -5570,7 +5570,7 @@ PlayerModelList(void)
|
|||
|
||||
// contains triangle .md2 model
|
||||
s = s_directory.data[i];
|
||||
|
||||
|
||||
if (ContainsFile(s, "tris.md2") == false)
|
||||
{
|
||||
continue; // invalid player model
|
||||
|
@ -5607,7 +5607,7 @@ PlayerModelList(void)
|
|||
data = (char**)malloc((s_skinnames[mdl].num + 1) * sizeof(char*));
|
||||
YQ2_COM_CHECK_OOM(data, "malloc()", (s_skinnames[mdl].num + 1) * sizeof(char*))
|
||||
memset(data, 0, (s_skinnames[mdl].num + 1) * sizeof(char*));
|
||||
|
||||
|
||||
s_skinnames[mdl].data = data;
|
||||
s_skinnames[mdl].num = 0;
|
||||
|
||||
|
|
|
@ -266,7 +266,7 @@ static const char* fragmentSrc2DpostprocessWater = MULTILINE_STRING(
|
|||
uniform sampler2D tex;
|
||||
|
||||
uniform float time;
|
||||
|
||||
|
||||
uniform vec4 v_blend;
|
||||
|
||||
out vec4 outColor;
|
||||
|
@ -286,7 +286,7 @@ static const char* fragmentSrc2DpostprocessWater = MULTILINE_STRING(
|
|||
uv = clamp(uv, vec2(0.0, 0.0), vec2(1.0, 1.0));
|
||||
|
||||
vec4 res = texture(tex, uv);
|
||||
|
||||
|
||||
// apply the v_blend, usually blended as a colored quad with:
|
||||
res.rgb = v_blend.a * v_blend.rgb + (1.0 - v_blend.a) * res.rgb;
|
||||
outColor = res;
|
||||
|
@ -1331,11 +1331,11 @@ updateUBO(GLuint ubo, GLsizeiptr size, void* data)
|
|||
we don't need to use glBindBufferRange and we can leave that alone for now.
|
||||
*/
|
||||
glBufferData(GL_UNIFORM_BUFFER, size, NULL, GL_STREAM_DRAW); // atsb: GL_STREAM_DRAW
|
||||
|
||||
|
||||
/*
|
||||
atsb: we use GL_MAP_WRITE_BIT here to ensure synchronisation between CPU/GPU
|
||||
and to prevent any possible data races in cases of sync loss.
|
||||
|
||||
|
||||
we don't use the persistent mapping feature yet as that would require
|
||||
a bit more work with how the buffers are created and mapped.
|
||||
*/
|
||||
|
|
|
@ -72,7 +72,7 @@ float pm_waterspeed = 400;
|
|||
|
||||
#define STOP_EPSILON 0.1 /* Slide off of the impacting object returns the blocked flags (1 = floor, 2 = step / wall) */
|
||||
#define MIN_STEP_NORMAL 0.7 /* can't step up onto very steep slopes */
|
||||
#define MAX_CLIP_PLANES 5
|
||||
#define MAX_CLIP_PLANES 5
|
||||
|
||||
void
|
||||
PM_ClipVelocity(vec3_t in, vec3_t normal, vec3_t out, float overbounce)
|
||||
|
@ -548,7 +548,7 @@ PM_WaterMove(void)
|
|||
/* user intentions */
|
||||
for (i = 0; i < 3; i++)
|
||||
{
|
||||
wishvel[i] = pml.forward[i] * pm->cmd.forwardmove +
|
||||
wishvel[i] = pml.forward[i] * pm->cmd.forwardmove +
|
||||
pml.right[i] * pm->cmd.sidemove;
|
||||
}
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Chase cam.
|
||||
*
|
||||
* =======================================================================
|
||||
*/
|
||||
*/
|
||||
|
||||
#include "header/local.h"
|
||||
|
||||
|
|
|
@ -43,19 +43,19 @@ Svcmd_Test_f(void)
|
|||
* addip <ip>
|
||||
* removeip <ip>
|
||||
*
|
||||
* The ip address is specified in dot format, and any unspecified
|
||||
* The ip address is specified in dot format, and any unspecified
|
||||
* digits will match any value, so you can specify an entire class C
|
||||
* network with "addip 192.246.40".
|
||||
*
|
||||
* Removeip will only remove an address specified exactly the same way.
|
||||
* Removeip will only remove an address specified exactly the same way.
|
||||
* You cannot addip a subnet, then removeip a single host.
|
||||
*
|
||||
* listip
|
||||
* Prints the current list of filters.
|
||||
*
|
||||
* writeip
|
||||
* Dumps "addip <ip>" commands to listip.cfg so it can be execed at a
|
||||
* later date. The filter lists are not saved and restored by default,
|
||||
* Dumps "addip <ip>" commands to listip.cfg so it can be execed at a
|
||||
* later date. The filter lists are not saved and restored by default,
|
||||
* because I beleive it would cause too much confusion.
|
||||
*
|
||||
* filterban <0 or 1>
|
||||
|
@ -64,7 +64,7 @@ Svcmd_Test_f(void)
|
|||
* be prohibited from entering the game. This is the default setting.
|
||||
*
|
||||
* If 0, then only addresses matching the list will be allowed. This lets
|
||||
* you easily set up a private game, or a game that only allows players
|
||||
* you easily set up a private game, or a game that only allows players
|
||||
* from your local network.
|
||||
*
|
||||
*
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* Targets.
|
||||
*
|
||||
* =======================================================================
|
||||
*/
|
||||
*/
|
||||
|
||||
#include "header/local.h"
|
||||
|
||||
|
@ -57,10 +57,10 @@ SP_target_temp_entity(edict_t *ent)
|
|||
* 1 = normal fighting sounds
|
||||
* 2 = idle sound level
|
||||
* 3 = ambient sound level
|
||||
*
|
||||
*
|
||||
* "volume" 0.0 to 1.0
|
||||
*
|
||||
* Normal sounds play each time the target is used. The reliable flag
|
||||
* Normal sounds play each time the target is used. The reliable flag
|
||||
* can be set for crucial voiceovers.
|
||||
*
|
||||
* Looped sounds are allways atten 3 / vol 1, and the use function toggles
|
||||
|
@ -73,7 +73,7 @@ Use_Target_Speaker(edict_t *ent, edict_t *other, edict_t *activator)
|
|||
int chan;
|
||||
|
||||
if (ent->spawnflags & 3)
|
||||
{
|
||||
{
|
||||
/* looping sound toggles */
|
||||
if (ent->s.sound)
|
||||
{
|
||||
|
@ -148,7 +148,7 @@ SP_target_speaker(edict_t *ent)
|
|||
|
||||
ent->use = Use_Target_Speaker;
|
||||
|
||||
/* must link the entity so we get areas and clusters so
|
||||
/* must link the entity so we get areas and clusters so
|
||||
the server can determine who to send updates to */
|
||||
gi.linkentity(ent);
|
||||
}
|
||||
|
@ -172,14 +172,14 @@ Use_Target_Help(edict_t *ent, edict_t *other, edict_t *activator)
|
|||
|
||||
/*
|
||||
* QUAKED target_help (1 0 1) (-16 -16 -24) (16 16 24) help1
|
||||
* When fired, the "message" key becomes the current personal computer
|
||||
* When fired, the "message" key becomes the current personal computer
|
||||
* string, and the message light will be set on all clients status bars.
|
||||
*/
|
||||
void
|
||||
SP_target_help(edict_t *ent)
|
||||
{
|
||||
if (deathmatch->value)
|
||||
{
|
||||
{
|
||||
/* auto-remove for deathmatch */
|
||||
G_FreeEdict(ent);
|
||||
return;
|
||||
|
@ -218,7 +218,7 @@ void
|
|||
SP_target_secret(edict_t *ent)
|
||||
{
|
||||
if (deathmatch->value)
|
||||
{
|
||||
{
|
||||
/* auto-remove for deathmatch */
|
||||
G_FreeEdict(ent);
|
||||
return;
|
||||
|
@ -271,7 +271,7 @@ void
|
|||
SP_target_goal(edict_t *ent)
|
||||
{
|
||||
if (deathmatch->value)
|
||||
{
|
||||
{
|
||||
/* auto-remove for deathmatch */
|
||||
G_FreeEdict(ent);
|
||||
return;
|
||||
|
@ -552,9 +552,9 @@ SP_target_blaster(edict_t *self)
|
|||
|
||||
/*
|
||||
* QUAKED target_crosslevel_trigger (.5 .5 .5) (-8 -8 -8) (8 8 8) trigger1 trigger2 trigger3 trigger4 trigger5 trigger6 trigger7 trigger8
|
||||
*
|
||||
* Once this trigger is touched/used, any trigger_crosslevel_target with the
|
||||
* same trigger number is automatically used when a level is started within
|
||||
*
|
||||
* Once this trigger is touched/used, any trigger_crosslevel_target with the
|
||||
* same trigger number is automatically used when a level is started within
|
||||
* the same unit. It is OK to check multiple triggers. Message, delay, target,
|
||||
* and killtarget also work.
|
||||
*/
|
||||
|
|
|
@ -40,9 +40,9 @@ InitTrigger(edict_t *self)
|
|||
self->svflags = SVF_NOCLIENT;
|
||||
}
|
||||
|
||||
/*
|
||||
* The wait time has passed, so set
|
||||
* back up for another activation
|
||||
/*
|
||||
* The wait time has passed, so set
|
||||
* back up for another activation
|
||||
*/
|
||||
void
|
||||
multi_wait(edict_t *ent)
|
||||
|
@ -125,13 +125,13 @@ Touch_Multi(edict_t *self, edict_t *other, cplane_t *plane, csurface_t *surf)
|
|||
* Variable sized repeatable trigger. Must be targeted at one or more entities.
|
||||
* If "delay" is set, the trigger waits some time after activating before firing.
|
||||
* "wait" : Seconds between triggerings. (.2 default)
|
||||
*
|
||||
*
|
||||
* sounds
|
||||
* 1) secret
|
||||
* 2) beep beep
|
||||
* 3) large switch
|
||||
* 4)
|
||||
*
|
||||
*
|
||||
* set "message" to text string
|
||||
*/
|
||||
void
|
||||
|
@ -190,7 +190,7 @@ SP_trigger_multiple(edict_t *ent)
|
|||
/*
|
||||
* QUAKED trigger_once (.5 .5 .5) ? x x TRIGGERED
|
||||
* Triggers once, then removes itself.
|
||||
* You must set the key "target" to the name of another object
|
||||
* You must set the key "target" to the name of another object
|
||||
* in the level that has a matching "targetname".
|
||||
*
|
||||
* If TRIGGERED, this trigger must be triggered before it is live.
|
||||
|
@ -207,7 +207,7 @@ SP_trigger_multiple(edict_t *ent)
|
|||
void
|
||||
SP_trigger_once(edict_t *ent)
|
||||
{
|
||||
/* make old maps work because I messed up on flag assignments here
|
||||
/* make old maps work because I messed up on flag assignments here
|
||||
triggered was on bit 1 when it should have been on bit 4 */
|
||||
if (ent->spawnflags & 1)
|
||||
{
|
||||
|
@ -395,10 +395,10 @@ SP_trigger_key(edict_t *self)
|
|||
* QUAKED trigger_counter (.5 .5 .5) ? nomessage
|
||||
* Acts as an intermediary for an action that takes multiple inputs.
|
||||
*
|
||||
* If nomessage is not set, t will print "1 more.. " etc when triggered
|
||||
* If nomessage is not set, t will print "1 more.. " etc when triggered
|
||||
* and "sequence complete" when finished.
|
||||
*
|
||||
* After the counter has been triggered "count" times (default 2), it
|
||||
* After the counter has been triggered "count" times (default 2), it
|
||||
* will fire all of it's targets and remove itself.
|
||||
*/
|
||||
void
|
||||
|
|
|
@ -189,8 +189,8 @@ Think_Delay(edict_t *ent)
|
|||
* The global "activator" should be set to the entity
|
||||
* that initiated the firing.
|
||||
*
|
||||
* If self.delay is set, a DelayedUse entity will be
|
||||
* created that will actually do the SUB_UseTargets
|
||||
* If self.delay is set, a DelayedUse entity will be
|
||||
* created that will actually do the SUB_UseTargets
|
||||
* after that many seconds have passed.
|
||||
*
|
||||
* Centerprints any self.message to the activator.
|
||||
|
@ -563,7 +563,7 @@ G_Spawn(void)
|
|||
|
||||
for (i = maxclients->value + 1; i < globals.num_edicts; i++, e++)
|
||||
{
|
||||
/* the first couple seconds of server time can involve a lot of
|
||||
/* the first couple seconds of server time can involve a lot of
|
||||
freeing and allocating, so relax the replacement policy */
|
||||
if (!e->inuse && ((e->freetime < 2) || (level.time - e->freetime > 0.5)))
|
||||
{
|
||||
|
@ -616,7 +616,7 @@ G_TouchTriggers(edict_t *ent)
|
|||
num = gi.BoxEdicts(ent->absmin, ent->absmax, touch,
|
||||
MAX_EDICTS, AREA_TRIGGERS);
|
||||
|
||||
/* be careful, it is possible to have an entity in this
|
||||
/* be careful, it is possible to have an entity in this
|
||||
list removed before we get to it (killtriggered) */
|
||||
for (i = 0; i < num; i++)
|
||||
{
|
||||
|
@ -649,7 +649,7 @@ G_TouchSolids(edict_t *ent)
|
|||
num = gi.BoxEdicts(ent->absmin, ent->absmax, touch,
|
||||
MAX_EDICTS, AREA_SOLID);
|
||||
|
||||
/* be careful, it is possible to have an entity in this
|
||||
/* be careful, it is possible to have an entity in this
|
||||
list removed before we get to it (killtriggered) */
|
||||
for (i = 0; i < num; i++)
|
||||
{
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
* The player trail, used by monsters to locate the player.
|
||||
*
|
||||
* =======================================================================
|
||||
*/
|
||||
*/
|
||||
|
||||
#include "../header/local.h"
|
||||
|
||||
|
|
|
@ -800,14 +800,14 @@ P_WorldEffects(void)
|
|||
if ((old_waterlevel == 3) && (waterlevel != 3))
|
||||
{
|
||||
if (current_player->air_finished < level.time)
|
||||
{
|
||||
{
|
||||
/* gasp for air */
|
||||
gi.sound(current_player, CHAN_VOICE,
|
||||
gi.soundindex("player/gasp1.wav"), 1, ATTN_NORM, 0);
|
||||
PlayerNoise(current_player, current_player->s.origin, PNOISE_SELF);
|
||||
}
|
||||
else if (current_player->air_finished < level.time + 11)
|
||||
{
|
||||
{
|
||||
/* just break surface */
|
||||
gi.sound(current_player, CHAN_VOICE,
|
||||
gi.soundindex("player/gasp2.wav"), 1, ATTN_NORM, 0);
|
||||
|
@ -844,7 +844,7 @@ P_WorldEffects(void)
|
|||
|
||||
/* if out of air, start drowning */
|
||||
if (current_player->air_finished < level.time)
|
||||
{
|
||||
{
|
||||
/* drown! */
|
||||
if ((current_player->client->next_drown_time < level.time) &&
|
||||
(current_player->health > 0))
|
||||
|
@ -931,7 +931,7 @@ P_WorldEffects(void)
|
|||
if (current_player->watertype & CONTENTS_SLIME)
|
||||
{
|
||||
if (!envirosuit)
|
||||
{
|
||||
{
|
||||
/* no damage from slime with envirosuit */
|
||||
T_Damage(current_player, world, world, vec3_origin,
|
||||
current_player->s.origin, vec3_origin,
|
||||
|
@ -1124,7 +1124,7 @@ G_SetClientFrame(edict_t *ent)
|
|||
}
|
||||
}
|
||||
else if (ent->s.frame < client->anim_end)
|
||||
{
|
||||
{
|
||||
/* continue an animation */
|
||||
ent->s.frame++;
|
||||
return;
|
||||
|
@ -1149,7 +1149,7 @@ G_SetClientFrame(edict_t *ent)
|
|||
}
|
||||
|
||||
newanim:
|
||||
|
||||
|
||||
/* return to either a running or standing frame */
|
||||
client->anim_priority = ANIM_BASIC;
|
||||
client->anim_duck = duck;
|
||||
|
@ -1177,7 +1177,7 @@ newanim:
|
|||
}
|
||||
}
|
||||
else if (run)
|
||||
{
|
||||
{
|
||||
/* running */
|
||||
if (duck)
|
||||
{
|
||||
|
@ -1221,7 +1221,7 @@ ClientEndServerFrame(edict_t *ent)
|
|||
|
||||
/* If the origin or velocity have changed since ClientThink(),
|
||||
update the pmove values. This will happen when the client
|
||||
is pushed by a bmodel or kicked by an explosion.
|
||||
is pushed by a bmodel or kicked by an explosion.
|
||||
|
||||
If it wasn't updated here, the view position would lag a frame
|
||||
behind the body position when pushed -- "sinking into plats" */
|
||||
|
@ -1261,7 +1261,7 @@ ClientEndServerFrame(edict_t *ent)
|
|||
ent->s.angles[ROLL] = 0;
|
||||
ent->s.angles[ROLL] = SV_CalcRoll(ent->s.angles, ent->velocity) * 4;
|
||||
|
||||
/* calculate speed and cycle to be used for
|
||||
/* calculate speed and cycle to be used for
|
||||
all cyclic walking effects */
|
||||
xyspeed = sqrt(ent->velocity[0] * ent->velocity[0] + ent->velocity[1] *
|
||||
ent->velocity[1]);
|
||||
|
@ -1272,7 +1272,7 @@ ClientEndServerFrame(edict_t *ent)
|
|||
current_client->bobtime = 0; /* start at beginning of cycle again */
|
||||
}
|
||||
else if (ent->groundentity)
|
||||
{
|
||||
{
|
||||
/* so bobbing only cycles when on ground */
|
||||
if (xyspeed > 210)
|
||||
{
|
||||
|
@ -1310,7 +1310,7 @@ ClientEndServerFrame(edict_t *ent)
|
|||
/* determine the gun offsets */
|
||||
SV_CalcGunOffset(ent);
|
||||
|
||||
/* determine the full screen color blend
|
||||
/* determine the full screen color blend
|
||||
must be after viewoffset, so eye contents can be
|
||||
accurately determined */
|
||||
SV_CalcBlend(ent);
|
||||
|
|
|
@ -214,7 +214,7 @@ Pickup_Weapon(edict_t *ent, edict_t *other)
|
|||
}
|
||||
|
||||
/*
|
||||
* The old weapon has been dropped all the
|
||||
* The old weapon has been dropped all the
|
||||
* way, so make the new one current
|
||||
*/
|
||||
void
|
||||
|
@ -1523,9 +1523,9 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
v[YAW] = ent->client->v_angle[YAW] - 5;
|
||||
v[ROLL] = ent->client->v_angle[ROLL];
|
||||
AngleVectors(v, forward, NULL, NULL);
|
||||
|
||||
|
||||
if (aimfix->value)
|
||||
{
|
||||
{
|
||||
AngleVectors(v, forward, right, NULL);
|
||||
|
||||
VectorScale(forward, -2, ent->client->kick_origin);
|
||||
|
@ -1533,16 +1533,16 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
|
||||
VectorSet(offset, 0, 8, ent->viewheight - 8);
|
||||
P_ProjectSource(ent, offset, forward, right, start);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fire_shotgun(ent, start, forward, damage, kick, DEFAULT_SHOTGUN_HSPREAD,
|
||||
DEFAULT_SHOTGUN_VSPREAD, DEFAULT_SSHOTGUN_COUNT / 2, MOD_SSHOTGUN);
|
||||
|
||||
|
||||
v[YAW] = ent->client->v_angle[YAW] + 5;
|
||||
AngleVectors(v, forward, NULL, NULL);
|
||||
|
||||
|
||||
if (aimfix->value)
|
||||
{
|
||||
{
|
||||
AngleVectors(v, forward, right, NULL);
|
||||
|
||||
VectorScale(forward, -2, ent->client->kick_origin);
|
||||
|
@ -1550,8 +1550,8 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
|
||||
VectorSet(offset, 0, 8, ent->viewheight - 8);
|
||||
P_ProjectSource(ent, offset, forward, right, start);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fire_shotgun(ent, start, forward, damage, kick,
|
||||
DEFAULT_SHOTGUN_HSPREAD, DEFAULT_SHOTGUN_VSPREAD,
|
||||
DEFAULT_SSHOTGUN_COUNT / 2, MOD_SSHOTGUN);
|
||||
|
@ -1599,7 +1599,7 @@ weapon_railgun_fire(edict_t *ent)
|
|||
int kick;
|
||||
|
||||
if (deathmatch->value)
|
||||
{
|
||||
{
|
||||
/* normal damage is too extreme in dm */
|
||||
damage = 100;
|
||||
kick = 200;
|
||||
|
@ -1689,7 +1689,7 @@ weapon_bfg_fire(edict_t *ent)
|
|||
return;
|
||||
}
|
||||
|
||||
/* cells can go down during windup (from power armor hits), so
|
||||
/* cells can go down during windup (from power armor hits), so
|
||||
check again and abort firing if we don't have enough now */
|
||||
if (ent->client->pers.inventory[ent->client->ammo_index] < 50)
|
||||
{
|
||||
|
|
|
@ -26,9 +26,9 @@
|
|||
|
||||
#include "../header/local.h"
|
||||
|
||||
/* Note that the pmenu entries are duplicated
|
||||
this is so that a static set of pmenu entries can be used
|
||||
for multiple clients and changed without interference
|
||||
/* Note that the pmenu entries are duplicated
|
||||
this is so that a static set of pmenu entries can be used
|
||||
for multiple clients and changed without interference
|
||||
note that arg will be freed when the menu is closed, it
|
||||
must be allocated memory */
|
||||
pmenuhnd_t *
|
||||
|
@ -133,8 +133,8 @@ PMenu_Close(edict_t *ent)
|
|||
ent->client->showscores = false;
|
||||
}
|
||||
|
||||
/*
|
||||
* Only use on pmenu's that have been called with PMenu_Open
|
||||
/*
|
||||
* Only use on pmenu's that have been called with PMenu_Open
|
||||
*/
|
||||
void
|
||||
PMenu_UpdateEntry(pmenu_t *entry, const char *text, int align,
|
||||
|
|
|
@ -328,7 +328,7 @@ static mframe_t floater_frames_attack1a[] =
|
|||
{ai_charge, 10, NULL} // -- LOOP Ends
|
||||
};
|
||||
|
||||
mmove_t floater_move_attack1a =
|
||||
mmove_t floater_move_attack1a =
|
||||
{
|
||||
FRAME_attak101,
|
||||
FRAME_attak114,
|
||||
|
|
|
@ -2118,9 +2118,9 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
v[YAW] = ent->client->v_angle[YAW] - 5;
|
||||
v[ROLL] = ent->client->v_angle[ROLL];
|
||||
AngleVectors(v, forward, NULL, NULL);
|
||||
|
||||
|
||||
if (aimfix->value)
|
||||
{
|
||||
{
|
||||
AngleVectors(v, forward, right, NULL);
|
||||
|
||||
VectorScale(forward, -2, ent->client->kick_origin);
|
||||
|
@ -2128,17 +2128,17 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
|
||||
VectorSet(offset, 0, 8, ent->viewheight - 8);
|
||||
P_ProjectSource(ent, offset, forward, right, start);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fire_shotgun(ent, start, forward, damage, kick,
|
||||
DEFAULT_SHOTGUN_HSPREAD, DEFAULT_SHOTGUN_VSPREAD,
|
||||
DEFAULT_SSHOTGUN_COUNT / 2, MOD_SSHOTGUN);
|
||||
|
||||
|
||||
v[YAW] = ent->client->v_angle[YAW] + 5;
|
||||
AngleVectors(v, forward, NULL, NULL);
|
||||
|
||||
|
||||
if (aimfix->value)
|
||||
{
|
||||
{
|
||||
AngleVectors(v, forward, right, NULL);
|
||||
|
||||
VectorScale(forward, -2, ent->client->kick_origin);
|
||||
|
@ -2146,8 +2146,8 @@ weapon_supershotgun_fire(edict_t *ent)
|
|||
|
||||
VectorSet(offset, 0, 8, ent->viewheight - 8);
|
||||
P_ProjectSource(ent, offset, forward, right, start);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fire_shotgun(ent, start, forward, damage, kick,
|
||||
DEFAULT_SHOTGUN_HSPREAD, DEFAULT_SHOTGUN_VSPREAD,
|
||||
DEFAULT_SSHOTGUN_COUNT / 2, MOD_SSHOTGUN);
|
||||
|
|
|
@ -371,7 +371,7 @@ SV_Kick_f(void)
|
|||
SV_BroadcastPrintf(PRINT_HIGH, "%s was kicked\n", sv_client->name);
|
||||
}
|
||||
|
||||
/* print directly, because the dropped client
|
||||
/* print directly, because the dropped client
|
||||
won't get the SV_BroadcastPrintf message */
|
||||
SV_ClientPrintf(sv_client, PRINT_HIGH, "You were kicked from the game\n");
|
||||
SV_DropClient(sv_client);
|
||||
|
@ -564,8 +564,8 @@ SV_ServerRecord_f(void)
|
|||
return;
|
||||
}
|
||||
|
||||
if (strstr(Cmd_Argv(1), "..") ||
|
||||
strstr(Cmd_Argv(1), "/") ||
|
||||
if (strstr(Cmd_Argv(1), "..") ||
|
||||
strstr(Cmd_Argv(1), "/") ||
|
||||
strstr(Cmd_Argv(1), "\\"))
|
||||
{
|
||||
Com_Printf("Illegal filename.\n");
|
||||
|
|
|
@ -92,7 +92,7 @@ SV_EmitPacketEntities(client_frame_t *from, client_frame_t *to, sizebuf_t *msg)
|
|||
|
||||
if (newnum == oldnum)
|
||||
{
|
||||
/* delta update from old position. because the force
|
||||
/* delta update from old position. because the force
|
||||
parm is false, this will not result in any bytes
|
||||
being emited if the entity has not changed at all
|
||||
note that players are always 'newentities', this
|
||||
|
@ -563,7 +563,7 @@ SV_BuildClientFrame(client_t *client)
|
|||
}
|
||||
|
||||
/* ignore ents without visible models unless they have an effect */
|
||||
if (!ent->s.modelindex && !ent->s.effects &&
|
||||
if (!ent->s.modelindex && !ent->s.effects &&
|
||||
!ent->s.sound && !ent->s.event)
|
||||
{
|
||||
continue;
|
||||
|
@ -627,7 +627,7 @@ SV_BuildClientFrame(client_t *client)
|
|||
|
||||
if (!ent->s.modelindex)
|
||||
{
|
||||
/* don't send sounds if they
|
||||
/* don't send sounds if they
|
||||
will be attenuated away */
|
||||
vec3_t delta;
|
||||
float len;
|
||||
|
|
|
@ -331,8 +331,8 @@ SV_StartSound(vec3_t origin, edict_t *entity, int channel, int soundindex,
|
|||
flags |= SND_ATTENUATION;
|
||||
}
|
||||
|
||||
/* the client doesn't know that bmodels have
|
||||
weird origins the origin can also be
|
||||
/* the client doesn't know that bmodels have
|
||||
weird origins the origin can also be
|
||||
explicitly set */
|
||||
if ((entity->svflags & SVF_NOCLIENT) ||
|
||||
(entity->solid == SOLID_BSP) ||
|
||||
|
@ -580,8 +580,8 @@ SV_SendClientMessages(void)
|
|||
continue;
|
||||
}
|
||||
|
||||
/* if the reliable message
|
||||
overflowed, drop the
|
||||
/* if the reliable message
|
||||
overflowed, drop the
|
||||
client */
|
||||
if (c->netchan.message.overflowed)
|
||||
{
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
* $ gcc -Wall -o quake2.exe wrapper.c
|
||||
* in our mingw build environment, will only depend on kernel32.dll and MSVCRT.DLL then,
|
||||
* which should be available on every Windows installation.
|
||||
*
|
||||
*
|
||||
* (C) 2017 Daniel Gibson
|
||||
* License:
|
||||
* This software is dual-licensed to the public domain and under the following
|
||||
|
|
Loading…
Reference in a new issue