diff --git a/nq/include/server.h b/nq/include/server.h index da80d92ed..085c7f463 100644 --- a/nq/include/server.h +++ b/nq/include/server.h @@ -271,6 +271,8 @@ void SV_AddGravity (edict_t *ent); void SV_Physics_Toss (edict_t *ent); void SV_Physics_Client (edict_t *ent, int num); void SV_Physics (void); +void SV_ProgStartFrame (void); +void SV_RunNewmis (void); qboolean SV_CheckBottom (edict_t *ent); qboolean SV_movestep (edict_t *ent, const vec3_t move, qboolean relink); diff --git a/nq/source/sv_phys.c b/nq/source/sv_phys.c index 1d3954f6f..1dbf69ac0 100644 --- a/nq/source/sv_phys.c +++ b/nq/source/sv_phys.c @@ -36,6 +36,7 @@ static __attribute__ ((used)) const char rcsid[] = #include "host.h" #include "server.h" +#include "sv_progs.h" #include "world.h" #define sv_frametime host_frametime @@ -715,7 +716,7 @@ SV_Physics_Step (edict_t *ent) SV_CheckWaterTransition (ent); } -static void +void SV_ProgStartFrame (void) { // let the progs know that a new frame has started @@ -759,7 +760,7 @@ SV_RunEntity (edict_t *ent) } } -static void +void SV_RunNewmis (void) { edict_t *ent; diff --git a/qw/include/server.h b/qw/include/server.h index 6a98ef075..585b54451 100644 --- a/qw/include/server.h +++ b/qw/include/server.h @@ -534,8 +534,10 @@ void SV_AddGravity (struct edict_s *ent); qboolean SV_RunThink (struct edict_s *ent); void SV_Physics_Toss (struct edict_s *ent); void SV_RunNewmis (void); -void SV_Impact (struct edict_s *e1, struct edict_s *e2); void SV_SetMoveVars(void); +struct trace_s; +int SV_FlyMove (struct edict_s *ent, float time, struct trace_s *steptrace); +struct trace_s SV_PushEntity (struct edict_s *ent, vec3_t push); // // sv_send.c diff --git a/qw/source/sv_phys.c b/qw/source/sv_phys.c index d8228eaee..940dcc080 100644 --- a/qw/source/sv_phys.c +++ b/qw/source/sv_phys.c @@ -160,7 +160,7 @@ SV_RunThink (edict_t *ent) Two entities have touched, so run their touch functions */ -void +static void SV_Impact (edict_t *e1, edict_t *e2) { int old_self, old_other; @@ -223,7 +223,7 @@ ClipVelocity (vec3_t in, vec3_t normal, vec3_t out, float overbounce) 4 = dead stop If steptrace is not NULL, the trace of any vertical wall hit will be stored */ -static int +int SV_FlyMove (edict_t *ent, float time, trace_t *steptrace) { float d, time_left; @@ -354,7 +354,7 @@ SV_AddGravity (edict_t *ent) Does not change the entities velocity at all */ -static trace_t +trace_t SV_PushEntity (edict_t *ent, vec3_t push) { trace_t trace;