![]() |
DarkPlaces
Game engine based on the Quake 1 engine by id Software, developed by LadyHavoc
|
|
Go to the source code of this file.
Macros | |
#define | MAX_CLIP_PLANES 5 |
#define | MOVE_EPSILON 0.01 |
#define | STOP_EPSILON 0.1 |
#define MAX_CLIP_PLANES 5 |
Definition at line 1149 of file sv_phys.c.
Referenced by SV_FlyMove().
#define STOP_EPSILON 0.1 |
Definition at line 1119 of file sv_phys.c.
Referenced by ClipVelocity().
|
static |
Definition at line 1120 of file sv_phys.c.
References DotProduct, i, normal, STOP_EPSILON, and VectorMA.
Referenced by SV_FlyMove(), and SV_Physics_Toss().
|
static |
Definition at line 767 of file sv_phys.c.
References angles, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_Transform(), maxs, mins, PITCH, ROLL, v, VectorCopy, and YAW.
Referenced by SV_LinkEdict().
|
static |
Definition at line 926 of file sv_phys.c.
References prvm_prog_t::ExecuteProgram, OFS_PARM0, OFS_PARM1, PRVM_EDICT_TO_PROG, PRVM_G_FLOAT, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SVVM_prog, server_t::time, time, and watertype.
Referenced by SV_CheckWater(), and SV_CheckWaterTransition().
void SV_CheckVelocity | ( | prvm_edict_t * | ent | ) |
Definition at line 965 of file sv_phys.c.
References classname, Con_Printf(), DotProduct, i, origin, PRVM_GetString(), PRVM_NUM_FOR_EDICT, PRVM_serveredictstring, PRVM_serveredictvector, sqrt(), sv_maxvelocity, SVVM_prog, cvar_t::value, VectorClear, VectorLength2, velocity, and wishspeed.
Referenced by SV_Physics_ClientEntity(), SV_Physics_ClientEntity_PostThink(), SV_Physics_ClientEntity_PreThink(), SV_Physics_ClientMove(), SV_Physics_Step(), SV_Physics_Toss(), SV_PlayerPhysics(), SV_Trace_Toss(), and SV_WalkMove().
|
static |
Definition at line 2012 of file sv_phys.c.
References CONTENTS_EMPTY, maxs, mins, Mod_Q1BSP_NativeContentsFromSuperContents(), origin, PRVM_serveredictfloat, PRVM_serveredictvector, SUPERCONTENTS_LIQUIDSMASK, SV_CheckContentsTransition(), SV_PointSuperContents(), SVVM_prog, view_ofs, waterlevel, and watertype.
Referenced by SV_Physics_ClientEntity(), SV_Physics_Entity(), and SV_WalkMove().
|
static |
Definition at line 2410 of file sv_phys.c.
References CONTENTS_EMPTY, CONTENTS_SLIME, CONTENTS_WATER, cvar_t::integer, Mod_Q1BSP_NativeContentsFromSuperContents(), origin, PRVM_serveredictfloat, PRVM_serveredictvector, cvar_t::string, SV_CheckContentsTransition(), sv_gameplayfix_fixedcheckwatertransition, SV_PointSuperContents(), sv_sound_watersplash, SV_StartSound(), SVVM_prog, VectorCopy, waterlevel, and watertype.
Referenced by SV_Physics_ClientEntity(), SV_Physics_Entity(), and SV_Physics_Toss().
int SV_EntitiesInBox | ( | const vec3_t | mins, |
const vec3_t | maxs, | ||
int | maxedicts, | ||
prvm_edict_t ** | resultedicts ) |
Definition at line 673 of file sv_phys.c.
References absmax, absmin, BoxesOverlap, prvm_edict_t::free, cvar_t::integer, maxs, mins, NULL, prvm_prog_t::num_edicts, PRVM_EDICT_NUM, PRVM_serveredictvector, sv, sv_areadebug, SVVM_prog, VectorCopy, server_t::world, and World_EntitiesInBox().
Referenced by SV_CanSeeBox(), SV_LinkEdict_TouchAreaGrid(), SV_PointSuperContents(), SV_PushMove(), SV_TraceBox(), SV_TraceLine(), SV_TracePoint(), VM_SV_findbox(), and VM_SV_findradius().
|
static |
Definition at line 1150 of file sv_phys.c.
References trace_t::allsolid, ClipVelocity(), Con_Printf(), CrossProduct, dir, DotProduct, prvm_prog_t::edicts, trace_t::endpos, trace_t::ent, FL_ONGROUND, FL_WATERJUMP, flags, trace_t::fraction, prvm_edict_t::free, groundentity, i, int(), cvar_t::integer, MAX_CLIP_PLANES, plane_t::normal, origin, trace_t::plane, PRVM_EDICT_TO_PROG, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, solid, SOLID_TRIGGER, sv_gameplayfix_easierwaterjump, sv_gameplayfix_gravityunaffectedbyticrate, sv_gameplayfix_impactbeforeonground, sv_gameplayfix_nogravityonground, SV_Gravity(), SV_Impact(), SV_PushEntity(), SVVM_prog, time, VectorClear, VectorCopy, VectorNormalize, VectorScale, VectorSet, velocity, and trace_t::worldstartsolid.
Referenced by SV_Physics_Step(), and SV_WalkMove().
int SV_GenericHitSuperContentsMask | ( | const prvm_edict_t * | passedict | ) |
calculates hitsupercontentsmask for a generic qc entity
Definition at line 73 of file sv_phys.c.
References dphitcontentsmask, FL_MONSTER, flags, int(), PRVM_serveredictfloat, solid, SOLID_CORPSE, SOLID_SLIDEBOX, SOLID_TRIGGER, SUPERCONTENTS_BODY, SUPERCONTENTS_CORPSE, SUPERCONTENTS_MONSTERCLIP, SUPERCONTENTS_PLAYERCLIP, SUPERCONTENTS_SOLID, and SVVM_prog.
Referenced by PHYS_NudgeOutOfSolid(), PHYS_TestEntityPosition(), SV_CheckBottom(), SV_movestep(), SV_NudgeOutOfSolid_PivotIsKnownGood(), SV_Physics_Step(), SV_PushEntity(), SV_PushMove(), SV_Trace_Toss(), SV_UserFriction(), SV_WalkMove(), VM_SV_tracebox(), and VM_SV_traceline().
int SV_GetPitchSign | ( | prvm_prog_t * | prog, |
prvm_edict_t * | ent ) |
Definition at line 47 of file sv_phys.c.
References effects, GAME_TENEBRAE, gamemode, mod_alias, model, pflags, PFLAGS_FULLDYNAMIC, PRVM_serveredictfloat, and SV_GetModelFromEdict().
Referenced by SV_CanSeeBox(), SV_GetEntityMatrix(), SV_TraceBox(), SV_TraceLine(), and SV_TracePoint().
|
static |
Definition at line 1410 of file sv_phys.c.
References server_t::frametime, PRVM_serveredictfloat, sv, sv_gravity, SVVM_prog, and cvar_t::value.
Referenced by SV_FlyMove(), and SV_Physics_Toss().
|
static |
Definition at line 1050 of file sv_phys.c.
References CON_ERROR, Con_Printf(), sizebuf_t::cursize, plane_t::dist, trace_t::ent, prvm_prog_t::ExecuteProgram, prvm_edict_t::free, prvm_edict_private_t::mark, plane_t::normal, origin, other, trace_t::plane, prvm_edict_t::priv, PRVM_EDICT_MARK_SETORIGIN_CAUGHT, PRVM_EDICT_MARK_WAIT_FOR_SETORIGIN, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serveredictvector, PRVM_serverglobaledict, PRVM_serverglobalfloat, PRVM_serverglobalstring, PRVM_serverglobalvector, prvm_edict_t::required, self, solid, SOLID_NOT, sv, SVVM_prog, prvm_prog_t::tempstringsbuf, server_t::time, time, trace_dphitcontents, trace_dphitq3surfaceflags, trace_dphittexturename, trace_dpstartcontents, trace_endpos, trace_ent, trace_plane_dist, trace_plane_normal, VectorCopy, VectorNegate, and VM_SetTraceGlobals().
Referenced by SV_FlyMove(), and SV_PushEntity().
void SV_LinkEdict | ( | prvm_edict_t * | ent | ) |
Needs to be called any time an entity changes origin, mins, maxs, or solid sets ent->v.absmin and ent->v.absmax call TouchAreaGrid as well to fire triggers that overlap the box
Definition at line 804 of file sv_phys.c.
References absmax, absmin, angles, avelocity, Con_DPrintf(), Con_Printf(), prvm_prog_t::edicts, FL_ITEM, flags, prvm_edict_t::free, int(), cvar_t::integer, MAX_MODELS, maxs, mins, model, modelindex, movetype, MOVETYPE_PHYSICS, NULL, origin, prvm_edict_t::priv, PRVM_NUM_FOR_EDICT, PRVM_serveredictfloat, PRVM_serveredictvector, RotateBBox(), prvm_edict_t::server, solid, SOLID_BSP, sv, sv_areagrid_link_SOLID_NOT, SV_GetModelByIndex(), sv_legacy_bbox_expand, SVVM_prog, server_t::time, VectorAdd, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), server_t::world, and World_LinkEdict().
Referenced by PRVM_ED_LoadFromFile(), SetMinMaxSize(), SV_Ent_Create_f(), SV_Loadgame_f(), SV_movestep(), SV_Physics_ClientEntity(), SV_Physics_Entity(), SV_Physics_Follow(), SV_Physics_Step(), SV_PushEntity(), SV_PushMove(), SV_StepDirection(), SV_WalkMove(), SVVM_end_increase_edicts(), VM_nudgeoutofsolid(), VM_SV_copyentity(), VM_SV_droptofloor(), and VM_SV_setorigin().
void SV_LinkEdict_TouchAreaGrid | ( | prvm_edict_t * | ent | ) |
Definition at line 727 of file sv_phys.c.
References Con_Printf(), prvm_prog_t::edicts, prvm_edict_t::free, i, MAX_EDICTS, other, prvm_edict_t::priv, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, self, prvm_edict_t::server, solid, SOLID_NOT, SOLID_TRIGGER, SV_EntitiesInBox(), SV_LinkEdict_TouchAreaGrid_Call(), and SVVM_prog.
Referenced by SV_movestep(), SV_Physics(), SV_Physics_ClientEntity(), SV_Physics_Entity(), SV_Physics_Step(), SV_PushEntity(), SV_PushMove(), SV_StepDirection(), and SV_WalkMove().
void SV_LinkEdict_TouchAreaGrid_Call | ( | prvm_edict_t * | touch, |
prvm_edict_t * | ent ) |
Definition at line 705 of file sv_phys.c.
References prvm_prog_t::ExecuteProgram, origin, other, PRVM_EDICT_TO_PROG, PRVM_serveredictfunction, PRVM_serveredictvector, PRVM_serverglobaledict, PRVM_serverglobalfloat, PRVM_serverglobalstring, PRVM_serverglobalvector, self, sv, SVVM_prog, server_t::time, time, trace_allsolid, trace_dphitcontents, trace_dphitq3surfaceflags, trace_dphittexturename, trace_dpstartcontents, trace_endpos, trace_ent, trace_fraction, trace_inopen, trace_inwater, trace_plane_dist, trace_plane_normal, trace_startsolid, VectorCopy, and VectorSet.
Referenced by SV_LinkEdict_TouchAreaGrid().
|
static |
Definition at line 1430 of file sv_phys.c.
References trace_t::bmodelstartsolid, collision_extendmovelength, dir, DotProduct, trace_t::endpos, trace_t::fraction, maxs, mins, MOVE_NOMONSTERS, plane_t::normal, origin, trace_t::plane, PRVM_serveredictvector, SV_GenericHitSuperContentsMask(), SV_TraceBox(), SVVM_prog, cvar_t::value, VectorCopy, VectorMA, and VectorSubtract.
Referenced by SV_PushMove().
Definition at line 3013 of file sv_phys.c.
References server_static_t::clients, prvm_prog_t::edicts, prvm_prog_t::ExecuteProgram, force_retouch, frametime, server_t::frametime, prvm_edict_t::free, host_client, i, cvar_t::integer, max, server_static_t::maxclients, prvm_prog_t::num_edicts, other, PRVM_ED_CanAlloc(), PRVM_EDICT_NUM, PRVM_EDICT_TO_PROG, PRVM_GarbageCollection(), PRVM_NEXT_EDICT, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, sv_freezenonclients, sv_gameplayfix_consistentplayerprethink, sv_gameplayfix_delayprojectiles, sv_gravity, SV_LinkEdict_TouchAreaGrid(), SV_Physics_ClientEntity(), SV_Physics_ClientEntity_PostThink(), SV_Physics_ClientEntity_PreThink(), SV_Physics_Entity(), svs, SVVM_prog, server_t::time, time, cvar_t::value, server_t::world, and World_Physics_Frame().
Referenced by SV_Frame(), SV_SpawnServer(), and SV_ThreadFunc().
|
static |
Definition at line 2919 of file sv_phys.c.
References angles, avelocity, client_t::begun, client_t::clmovement_inputtimeout, client_t::cmd, Con_Printf(), server_t::frametime, host_client, movetype, MOVETYPE_BOUNCE, MOVETYPE_BOUNCEMISSILE, MOVETYPE_FAKEPUSH, MOVETYPE_FLY, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FLYMISSILE, MOVETYPE_FOLLOW, MOVETYPE_NOCLIP, MOVETYPE_NONE, MOVETYPE_PHYSICS, MOVETYPE_PUSH, MOVETYPE_STEP, MOVETYPE_TOSS, MOVETYPE_USER_FIRST, MOVETYPE_USER_LAST, MOVETYPE_WALK, nextthink, origin, prvm_edict_t::priv, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, sv, SV_CheckVelocity(), SV_CheckWater(), SV_CheckWaterTransition(), SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), SV_Physics_Follow(), SV_Physics_Pusher(), SV_Physics_Step(), SV_Physics_Toss(), SV_RunThink(), SV_WalkMove(), SVVM_prog, server_t::time, VectorCompare, VectorCopy, VectorMA, and velocity.
Referenced by SV_Physics().
|
static |
Definition at line 2759 of file sv_phys.c.
References angles, avelocity, Con_Printf(), server_t::frametime, movetype, MOVETYPE_BOUNCE, MOVETYPE_BOUNCEMISSILE, MOVETYPE_FAKEPUSH, MOVETYPE_FLY, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FLYMISSILE, MOVETYPE_FOLLOW, MOVETYPE_NOCLIP, MOVETYPE_NONE, MOVETYPE_PHYSICS, MOVETYPE_PUSH, MOVETYPE_STEP, MOVETYPE_TOSS, MOVETYPE_USER_FIRST, MOVETYPE_USER_LAST, MOVETYPE_WALK, origin, PRVM_serveredictfloat, PRVM_serveredictvector, sv, SV_Physics_Follow(), SV_Physics_Step(), SV_Physics_Toss(), SV_WalkMove(), SVVM_prog, VectorMA, and velocity.
Referenced by SV_Physics_ClientMove().
|
static |
Definition at line 2882 of file sv_phys.c.
References angles, client_t::begun, client_t::clmovement_inputtimeout, prvm_prog_t::ExecuteProgram, fixangle, client_t::fixangle_angles, client_t::fixangle_angles_set, server_t::frametime, host_client, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictvector, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_CheckVelocity(), SVVM_prog, server_t::time, time, and VectorCopy.
Referenced by SV_Physics().
|
static |
Definition at line 2853 of file sv_phys.c.
References client_t::begun, client_t::clmovement_inputtimeout, prvm_prog_t::ExecuteProgram, host_client, PRVM_EDICT_TO_PROG, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_CheckVelocity(), SV_PlayerPhysics(), SVVM_prog, server_t::time, and time.
Referenced by SV_Physics().
Definition at line 2810 of file sv_phys.c.
References angles, client_t::edict, prvm_prog_t::ExecuteProgram, fixangle, client_t::fixangle_angles, client_t::fixangle_angles_set, frametime, server_t::frametime, host_client, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictvector, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_CheckVelocity(), SV_Physics_ClientEntity_NoThink(), SV_PlayerPhysics(), SVVM_prog, server_t::time, time, and VectorCopy.
Referenced by SV_ExecuteClientMoves().
|
static |
Definition at line 2682 of file sv_phys.c.
References angles, avelocity, Con_Printf(), server_t::frametime, cvar_t::integer, movetype, MOVETYPE_BOUNCE, MOVETYPE_BOUNCEMISSILE, MOVETYPE_FAKEPUSH, MOVETYPE_FLY, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FLYMISSILE, MOVETYPE_FOLLOW, MOVETYPE_NOCLIP, MOVETYPE_NONE, MOVETYPE_PHYSICS, MOVETYPE_PUSH, MOVETYPE_STEP, MOVETYPE_TOSS, MOVETYPE_USER_FIRST, MOVETYPE_USER_LAST, MOVETYPE_WALK, nextthink, origin, prvm_edict_t::priv, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, sv, SV_CheckWater(), SV_CheckWaterTransition(), sv_gameplayfix_delayprojectiles, SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), SV_Physics_Follow(), SV_Physics_Pusher(), SV_Physics_Step(), SV_Physics_Toss(), SV_RunThink(), SV_WalkMove(), SVVM_prog, server_t::time, VectorCompare, VectorCopy, VectorMA, and velocity.
Referenced by SV_Physics().
|
static |
Definition at line 2361 of file sv_phys.c.
References aiment, angles, AngleVectors(), origin, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictvector, punchangle, SV_LinkEdict(), SVVM_prog, v, v_angle, VectorAdd, and view_ofs.
Referenced by SV_Physics_ClientEntity(), SV_Physics_ClientEntity_NoThink(), and SV_Physics_Entity().
|
static |
Definition at line 1908 of file sv_phys.c.
References prvm_prog_t::edicts, prvm_prog_t::ExecuteProgram, server_t::frametime, ltime, nextthink, other, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_PushMove(), SVVM_prog, server_t::time, and time.
Referenced by SV_Physics_ClientEntity(), and SV_Physics_Entity().
|
static |
Definition at line 2615 of file sv_phys.c.
References prvm_prog_t::ExecuteProgram, FL_FLY, FL_ONGROUND, FL_SWIM, flags, server_t::frametime, int(), cvar_t::integer, NULL, OFS_PARM0, prvm_edict_t::priv, PRVM_EDICT_TO_PROG, PRVM_G_VECTOR, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serveredictvector, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, prvm_edict_t::server, cvar_t::string, sv, SV_CheckVelocity(), SV_FlyMove(), sv_gameplayfix_upwardvelocityclearsongroundflag, SV_GenericHitSuperContentsMask(), sv_gravity, SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), sv_sound_land, SV_StartSound(), SVVM_prog, server_t::time, time, cvar_t::value, VectorCopy, and velocity.
Referenced by SV_Physics_ClientEntity(), SV_Physics_ClientEntity_NoThink(), and SV_Physics_Entity().
void SV_Physics_Toss | ( | prvm_edict_t * | ent | ) |
Definition at line 2459 of file sv_phys.c.
References angles, avelocity, bouncefactor, bouncestop, BoxesOverlap, ClipVelocity(), DotProduct, trace_t::ent, fabs(), FL_ONGROUND, flags, trace_t::fraction, server_t::frametime, prvm_edict_t::free, groundentity, int(), cvar_t::integer, min, movetype, MOVETYPE_BOUNCE, MOVETYPE_BOUNCEMISSILE, MOVETYPE_FLY, MOVETYPE_TOSS, plane_t::normal, trace_t::plane, prvm_edict_t::priv, PRVM_EDICT_TO_PROG, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, solid, SOLID_BSP, sv, SV_CheckVelocity(), SV_CheckWaterTransition(), sv_gameplayfix_grenadebouncedownslopes, sv_gameplayfix_noairborncorpse, sv_gameplayfix_noairborncorpse_allowsuspendeditems, sv_gameplayfix_slidemoveprojectiles, sv_gameplayfix_upwardvelocityclearsongroundflag, SV_Gravity(), sv_gravity, SV_PushEntity(), SVVM_prog, cvar_t::value, VectorClear, VectorMA, VectorScale, and velocity.
Referenced by SV_Physics_ClientEntity(), SV_Physics_ClientEntity_NoThink(), and SV_Physics_Entity().
Definition at line 611 of file sv_phys.c.
References angles, bound, Con_Printf(), frame, i, int(), cvar_t::integer, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_Invert_Simple(), Matrix4x4_Transform(), MAX_EDICTS, model, origin, PRVM_serveredictfloat, PRVM_serveredictvector, solid, SOLID_BSP, sv, SV_EntitiesInBox(), sv_gameplayfix_swiminbmodels, SV_GetModelFromEdict(), SVVM_prog, and server_t::worldmodel.
Referenced by PHYS_TestEntityPosition(), SV_CheckBottom(), SV_CheckWater(), SV_CheckWaterTransition(), SV_movestep(), and VM_SV_pointcontents().
|
static |
Definition at line 1521 of file sv_phys.c.
References trace_t::allsolid, collision_extendmovelength, Con_Printf(), trace_t::endpos, trace_t::ent, FL_ONGROUND, flags, groundentity, int(), maxs, mins, MOVE_MISSILE, MOVE_NOMONSTERS, MOVE_NORMAL, MOVE_WORLDONLY, movetype, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FLYMISSILE, oldorigin, origin, PRVM_EDICT_TO_PROG, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, solid, SOLID_NOT, SOLID_TRIGGER, trace_t::startsolid, SV_GenericHitSuperContentsMask(), SV_Impact(), SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), SV_TraceBox(), SV_UnstickEntity(), SVVM_prog, type, cvar_t::value, VectorAdd, VectorCopy, and trace_t::worldstartsolid.
Referenced by SV_FlyMove(), SV_Physics_Toss(), SV_PushMove(), and SV_WalkMove().
|
static |
Definition at line 1593 of file sv_phys.c.
References a, angles, AngleVectorsFLU(), avelocity, Collision_ClipToGenericEntity(), collision_extendmovelength, Con_Printf(), DotProduct, prvm_prog_t::ExecuteProgram, FL_ONGROUND, flags, floor(), forward, trace_t::fraction, groundentity, i, index, int(), cvar_t::integer, ltime, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_Invert_Simple(), MAX_EDICTS, MAX_MODELS, maxs, mins, modelindex, movetype, MOVETYPE_FAKEPUSH, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FOLLOW, MOVETYPE_NOCLIP, MOVETYPE_NONE, MOVETYPE_PHYSICS, MOVETYPE_PUSH, MOVETYPE_WALK, model_t::normalmaxs, model_t::normalmins, origin, other, owner, prvm_edict_t::priv, PRVM_EDICT_NUM, PRVM_EDICT_TO_PROG, PRVM_NUM_FOR_EDICT, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serveredictvector, PRVM_serverglobaledict, PRVM_serverglobalfloat, model_t::rotatedmaxs, model_t::rotatedmins, self, prvm_edict_t::server, solid, SOLID_BBOX, SOLID_BSP, SOLID_CORPSE, SOLID_NOT, SOLID_SLIDEBOX, SOLID_TRIGGER, trace_t::startsolid, SUPERCONTENTS_BODY, sv, SV_EntitiesInBox(), sv_gameplayfix_nosquashentities, SV_GenericHitSuperContentsMask(), SV_GetModelByIndex(), SV_GetModelFromEdict(), SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), SV_NudgeOutOfSolid_PivotIsKnownGood(), SV_PushEntity(), SVVM_prog, server_t::time, time, up, cvar_t::value, VectorAdd, VectorClear, VectorCopy, VectorLength2, VectorLerp, VectorMA, VectorNegate, VectorScale, VectorSubtract, velocity, model_t::yawmaxs, and model_t::yawmins.
Referenced by SV_Physics_Pusher().
|
static |
Definition at line 1015 of file sv_phys.c.
References prvm_prog_t::edicts, prvm_prog_t::ExecuteProgram, server_t::frametime, prvm_edict_t::free, cvar_t::integer, max, nextthink, other, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, sv_gameplayfix_multiplethinksperframe, SVVM_prog, server_t::time, and time.
Referenced by SV_Physics_ClientEntity(), and SV_Physics_Entity().
trace_t SV_TraceBox | ( | const vec3_t | start, |
const vec3_t | mins, | ||
const vec3_t | maxs, | ||
const vec3_t | end, | ||
int | type, | ||
prvm_edict_t * | passedict, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend ) |
traces a box move against worldmodel and all entities in the specified area
Definition at line 414 of file sv_phys.c.
References angles, trace_t::bmodelstartsolid, clipgroup, Collision_ClipToGenericEntity(), Collision_ClipToWorld(), Collision_CombineTraces(), Con_Printf(), prvm_prog_t::edicts, trace_t::endpos, trace_t::ent, FL_MONSTER, flags, trace_t::fraction, i, int(), cvar_t::integer, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_CreateTranslate(), Matrix4x4_Invert_Simple(), max, MAX_EDICTS, maxs, min, mins, model, MOVE_HITMODEL, MOVE_MISSILE, MOVE_NOMONSTERS, MOVE_WORLDONLY, NULL, origin, owner, prvm_edict_t::priv, PRVM_EDICT_TO_PROG, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, solid, SOLID_BBOX, SOLID_BSP, SOLID_CORPSE, trace_t::startsolid, SUPERCONTENTS_BODY, SUPERCONTENTS_CORPSE, sv, sv_debugmove, SV_EntitiesInBox(), SV_GetModelFromEdict(), SV_GetPitchSign(), SV_TraceLine(), SV_TracePoint(), SVVM_prog, server_t::time, type, VectorAdd, VectorCompare, VectorCopy, VectorSubtract, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), server_t::worldmodel, and trace_t::worldstartsolid.
Referenced by PHYS_TraceBox(), SV_movestep(), SV_NudgeOutOfSolid_PivotIsKnownGood(), SV_PushEntity(), SV_Trace_Toss(), SV_WalkMove(), VM_SV_droptofloor(), and VM_SV_tracebox().
trace_t SV_TraceLine | ( | const vec3_t | start, |
const vec3_t | end, | ||
int | type, | ||
prvm_edict_t * | passedict, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask, | ||
float | extend ) |
Definition at line 256 of file sv_phys.c.
References angles, trace_t::bmodelstartsolid, clipgroup, Collision_ClipLineToGenericEntity(), Collision_ClipLineToWorld(), Collision_ClipToGenericEntity(), Collision_CombineTraces(), Con_Printf(), prvm_prog_t::edicts, trace_t::endpos, trace_t::ent, FL_MONSTER, flags, trace_t::fraction, i, int(), cvar_t::integer, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_CreateTranslate(), Matrix4x4_Invert_Simple(), max, MAX_EDICTS, maxs, min, mins, model, MOVE_HITMODEL, MOVE_MISSILE, MOVE_NOMONSTERS, MOVE_WORLDONLY, NULL, origin, owner, prvm_edict_t::priv, PRVM_EDICT_TO_PROG, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, solid, SOLID_BBOX, SOLID_BSP, SOLID_CORPSE, trace_t::startsolid, SUPERCONTENTS_BODY, SUPERCONTENTS_CORPSE, sv, sv_debugmove, SV_EntitiesInBox(), SV_GetModelFromEdict(), SV_GetPitchSign(), SV_TracePoint(), SVVM_prog, server_t::time, type, VectorClear, VectorCompare, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), server_t::worldmodel, and trace_t::worldstartsolid.
Referenced by Sbar_ShowFPS(), SV_CheckBottom(), SV_Ent_Create_f(), SV_Ent_Remove_f(), SV_SetIdealPitch(), SV_TraceBox(), SV_UserFriction(), VM_SV_aim(), VM_SV_droptofloor(), and VM_SV_traceline().
trace_t SV_TracePoint | ( | const vec3_t | start, |
int | type, | ||
prvm_edict_t * | passedict, | ||
int | hitsupercontentsmask, | ||
int | skipsupercontentsmask, | ||
int | skipmaterialflagsmask ) |
Definition at line 104 of file sv_phys.c.
References angles, trace_t::bmodelstartsolid, clipgroup, Collision_ClipPointToGenericEntity(), Collision_ClipPointToWorld(), Collision_ClipToGenericEntity(), Collision_CombineTraces(), Con_Printf(), prvm_prog_t::edicts, trace_t::endpos, trace_t::ent, FL_MONSTER, flags, trace_t::fraction, i, int(), cvar_t::integer, Matrix4x4_CreateFromQuakeEntity(), Matrix4x4_CreateTranslate(), Matrix4x4_Invert_Simple(), max, MAX_EDICTS, maxs, min, mins, model, MOVE_HITMODEL, MOVE_MISSILE, MOVE_NOMONSTERS, MOVE_WORLDONLY, NULL, origin, owner, prvm_edict_t::priv, PRVM_EDICT_TO_PROG, PRVM_PROG_TO_EDICT, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, prvm_edict_t::server, solid, SOLID_BBOX, SOLID_BSP, SOLID_CORPSE, trace_t::startsolid, SUPERCONTENTS_BODY, SUPERCONTENTS_CORPSE, sv, sv_debugmove, SV_EntitiesInBox(), SV_GetModelFromEdict(), SV_GetPitchSign(), SVVM_prog, server_t::time, type, VectorClear, VectorCompare, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), server_t::worldmodel, and trace_t::worldstartsolid.
Referenced by SV_TraceBox(), and SV_TraceLine().
|
static |
Definition at line 1956 of file sv_phys.c.
References classname, Con_DPrintf(), Con_Printf(), CON_WARN, cvar_t::integer, server_static_t::maxclients, offset, oldorigin, origin, PHYS_NudgeOutOfSolid(), PHYS_TestEntityPosition(), PHYS_UnstickEntityReturnOffset(), PRVM_EDICT_TO_PROG, PRVM_GetString(), PRVM_NUM_FOR_EDICT, PRVM_serveredictstring, PRVM_serveredictvector, sv_gameplayfix_nudgeoutofsolid, sv_gameplayfix_nudgeoutofsolid_separation, sv_gameplayfix_unstickentities, sv_gameplayfix_unstickplayers, svs, SVVM_prog, UNSTICK_GOOD, UNSTICK_STUCK, UNSTICK_UNSTUCK, cvar_t::value, VectorCopy, and VectorSubtract.
Referenced by SV_PushEntity().
|
static |
Definition at line 2152 of file sv_phys.c.
References collision_extendmovelength, trace_t::ent, fabs(), FL_ONGROUND, FL_WATERJUMP, flags, trace_t::fraction, server_t::frametime, groundentity, int(), cvar_t::integer, maxs, mins, MOVE_MISSILE, MOVE_NOMONSTERS, MOVE_NORMAL, MOVE_WORLDONLY, movetype, MOVETYPE_FLY, MOVETYPE_FLY_WORLDONLY, MOVETYPE_FLYMISSILE, MOVETYPE_WALK, plane_t::normal, NULL, origin, trace_t::plane, PRVM_EDICT_TO_PROG, PRVM_serveredictedict, PRVM_serveredictfloat, PRVM_serveredictvector, solid, SOLID_NOT, SOLID_TRIGGER, sv, SV_CheckVelocity(), SV_CheckWater(), SV_FlyMove(), sv_gameplayfix_downtracesupportsongroundflag, sv_gameplayfix_stepdown, sv_gameplayfix_stepmultipletimes, SV_GenericHitSuperContentsMask(), sv_jumpstep, SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), sv_nostep, SV_PushEntity(), sv_stepheight, SV_TraceBox(), SV_WallFriction(), sv_wallfriction, SVVM_prog, type, cvar_t::value, VectorClear, VectorCopy, VectorSet, velocity, and waterlevel.
Referenced by SV_Physics_ClientEntity(), SV_Physics_ClientEntity_NoThink(), and SV_Physics_Entity().
|
static |
Definition at line 2064 of file sv_phys.c.
References AngleVectors(), DotProduct, forward, i, NULL, PRVM_serveredictvector, SVVM_prog, v_angle, VectorCopy, VectorScale, VectorSubtract, and velocity.
Referenced by SV_WalkMove().