]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - sv_move.c
enable MOVE_ values on PF_tracebox (already enabled on PF_traceline)
[xonotic/darkplaces.git] / sv_move.c
index 88e4ce6c8f585e7bb56dedc35ce686fb6c1bfe8c..9fc5b31d3d05545266eadc5fa3f26aa7fa450cff 100644 (file)
--- a/sv_move.c
+++ b/sv_move.c
@@ -51,7 +51,7 @@ qboolean SV_CheckBottom (edict_t *ent)
                {
                        start[0] = x ? maxs[0] : mins[0];
                        start[1] = y ? maxs[1] : mins[1];
-                       if (sv.worldmodel->brushq1.PointContents(sv.worldmodel, start) != CONTENTS_SOLID)
+                       if (!(SV_PointSuperContents(start) & SUPERCONTENTS_SOLID))
                                goto realcheck;
                }
 
@@ -138,7 +138,7 @@ qboolean SV_movestep (edict_t *ent, vec3_t move, qboolean relink)
                        if (trace.fraction == 1)
                        {
                                VectorCopy(trace.endpos, traceendpos);
-                               if ( ((int)ent->v->flags & FL_SWIM) && sv.worldmodel->brushq1.PointContents(sv.worldmodel, traceendpos) == CONTENTS_EMPTY )
+                               if (((int)ent->v->flags & FL_SWIM) && !(SV_PointSuperContents(traceendpos) & SUPERCONTENTS_LIQUIDSMASK))
                                        return false;   // swim monster left water
 
                                VectorCopy (traceendpos, ent->v->origin);
@@ -161,14 +161,11 @@ qboolean SV_movestep (edict_t *ent, vec3_t move, qboolean relink)
 
        trace = SV_Move (neworg, ent->v->mins, ent->v->maxs, end, MOVE_NORMAL, ent);
 
-       if (trace.allsolid)
-               return false;
-
        if (trace.startsolid)
        {
                neworg[2] -= sv_stepheight.value;
                trace = SV_Move (neworg, ent->v->mins, ent->v->maxs, end, MOVE_NORMAL, ent);
-               if (trace.allsolid || trace.startsolid)
+               if (trace.startsolid)
                        return false;
        }
        if (trace.fraction == 1)