![]() |
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, 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, 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, origin, PRVM_GetString(), PRVM_NUM_FOR_EDICT, PRVM_serveredictstring, PRVM_serveredictvector, sqrt(), sv_maxvelocity, SVVM_prog, 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_PlayerCheckGround(), 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, Mod_Q1BSP_NativeContentsFromSuperContents(), origin, PRVM_serveredictfloat, PRVM_serveredictvector, 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, maxs, mins, NULL, prvm_prog_t::num_edicts, PRVM_EDICT_NUM, PRVM_serveredictvector, sv, sv_areadebug, SVVM_prog, VectorCopy, and World_EntitiesInBox().
Referenced by SV_CanSeeBox(), SV_LinkEdict_TouchAreaGrid(), SV_PlayerCheckGround(), 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, int(), 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_PlayerCheckGround(), 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_SetupVM(), SV_TraceBox(), SV_TraceLine(), and SV_TracePoint().
|
static |
Definition at line 1410 of file sv_phys.c.
References PRVM_serveredictfloat, sv, sv_gravity, and SVVM_prog.
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, 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(), 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, VectorAdd, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), 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_PlayerCheckGround(), 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, 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_PlayerCheckGround(), 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, 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(), and SV_PlayerCheckGround().
|
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, VectorCopy, VectorMA, and VectorSubtract.
Referenced by SV_PushMove().
Definition at line 3013 of file sv_phys.c.
References prvm_prog_t::edicts, prvm_prog_t::ExecuteProgram, force_retouch, frametime, prvm_edict_t::free, host_client, max, 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, time, and World_Physics_Frame().
Referenced by SV_AddUpdates(), SV_Frame(), SV_SpawnServer(), and SV_ThreadFunc().
|
static |
Definition at line 2919 of file sv_phys.c.
References angles, avelocity, Con_Printf(), 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, VectorCompare, VectorCopy, VectorMA, and velocity.
Referenced by SV_Physics().
|
static |
Definition at line 2759 of file sv_phys.c.
References angles, avelocity, Con_Printf(), 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, prvm_prog_t::ExecuteProgram, fixangle, host_client, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictvector, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_CheckVelocity(), SVVM_prog, time, and VectorCopy.
Referenced by SV_Physics().
|
static |
Definition at line 2853 of file sv_phys.c.
References prvm_prog_t::ExecuteProgram, host_client, PRVM_EDICT_TO_PROG, PRVM_serverfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_CheckVelocity(), SV_PlayerPhysics(), SVVM_prog, and time.
Referenced by SV_Physics().
Definition at line 2810 of file sv_phys.c.
References angles, prvm_prog_t::ExecuteProgram, fixangle, 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, time, and VectorCopy.
Referenced by SV_AddUpdates(), and SV_ExecuteClientMoves().
|
static |
Definition at line 2682 of file sv_phys.c.
References angles, avelocity, Con_Printf(), 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, 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, ltime, nextthink, other, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, SV_PushMove(), SVVM_prog, 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, int(), 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, sv, SV_CheckVelocity(), SV_FlyMove(), sv_gameplayfix_upwardvelocityclearsongroundflag, SV_GenericHitSuperContentsMask(), sv_gravity, SV_LinkEdict(), SV_LinkEdict_TouchAreaGrid(), sv_sound_land, SV_StartSound(), SVVM_prog, time, 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, prvm_edict_t::free, groundentity, int(), 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, 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, int(), 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(), and SVVM_prog.
Referenced by PHYS_TestEntityPosition(), SV_CheckBottom(), SV_CheckWater(), SV_CheckWaterTransition(), SV_movestep(), SV_PlayerCheckGround(), 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, 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, index, int(), 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, time, up, 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, prvm_edict_t::free, max, nextthink, other, PRVM_EDICT_TO_PROG, PRVM_serveredictfloat, PRVM_serveredictfunction, PRVM_serverglobaledict, PRVM_serverglobalfloat, self, sv, sv_gameplayfix_multiplethinksperframe, SVVM_prog, 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, int(), 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, type, VectorAdd, VectorCompare, VectorCopy, VectorSubtract, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), and trace_t::worldstartsolid.
Referenced by PHYS_TraceBox(), SV_movestep(), SV_NudgeOutOfSolid_PivotIsKnownGood(), SV_PlayerCheckGround(), 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, int(), 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, type, VectorClear, VectorCompare, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), and trace_t::worldstartsolid.
Referenced by Sbar_ShowFPS(), SV_CheckBottom(), SV_Ent_Create_f(), SV_Ent_Remove_f(), SV_PlayerCheckGround(), 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, int(), 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, type, VectorClear, VectorCompare, VectorCopy, VM_FrameBlendFromFrameGroupBlend(), VM_GenerateFrameGroupBlend(), VM_UpdateEdictSkeleton(), and trace_t::worldstartsolid.
Referenced by SV_PlayerCheckGround(), SV_TraceBox(), and SV_TraceLine().
|
static |
Definition at line 1956 of file sv_phys.c.
References classname, Con_DPrintf(), Con_Printf(), CON_WARN, 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, 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, groundentity, int(), 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, 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, NULL, PRVM_serveredictvector, SVVM_prog, v_angle, VectorCopy, VectorScale, VectorSubtract, and velocity.
Referenced by SV_WalkMove().