#endif
}
-#if 0
-{
-#ifdef CSQC
- float t = PHYS_INPUT_TIMELENGTH;
- vector primalvelocity = self.velocity;
- PM_ClientMovement_UpdateStatus(false);
- int bump;
- for (bump = 0; bump < MAX_CLIP_PLANES && (self.velocity * self.velocity) > 0; bump++)
- {
- vector neworigin = self.origin + t * self.velocity;
- tracebox(self.origin, self.mins, self.maxs, neworigin, MOVE_NORMAL, self);
- float old_trace1_fraction = trace_fraction;
- vector old_trace1_endpos = trace_endpos;
- vector old_trace1_plane_normal = trace_plane_normal;
- if (trace_fraction < 1 && trace_plane_normal_z == 0)
- {
- // may be a step or wall, try stepping up
- // first move forward at a higher level
- vector currentorigin2 = self.origin;
- currentorigin2_z += PHYS_STEPHEIGHT;
- vector neworigin2 = neworigin;
- neworigin2_z = self.origin_z + PHYS_STEPHEIGHT;
- tracebox(currentorigin2, self.mins, self.maxs, neworigin2, MOVE_NORMAL, self);
- if (!trace_startsolid)
- {
- // then move down from there
- currentorigin2 = trace_endpos;
- neworigin2 = trace_endpos;
- neworigin2_z = self.origin_z;
- float old_trace2_fraction = trace_fraction;
- vector old_trace2_plane_normal = trace_plane_normal;
- tracebox(currentorigin2, self.mins, self.maxs, neworigin2, MOVE_NORMAL, self);
- // accept the new trace if it made some progress
- if (fabs(trace_endpos_x - old_trace1_endpos_x) >= 0.03125 || fabs(trace_endpos_y - old_trace1_endpos_y) >= 0.03125)
- {
- trace_fraction = old_trace2_fraction;
- trace_endpos = trace_endpos;
- trace_plane_normal = old_trace2_plane_normal;
- }
- else
- {
- trace_fraction = old_trace1_fraction;
- trace_endpos = old_trace1_endpos;
- trace_plane_normal = old_trace1_plane_normal;
- }
- }
- }
-
- // check if it moved at all
- if (trace_fraction >= 0.001)
- setorigin(self, trace_endpos);
-
- // check if it moved all the way
- if (trace_fraction == 1)
- break;
-
- // this is only really needed for nogravityonground combined with gravityunaffectedbyticrate
- // <LordHavoc> I'm pretty sure I commented it out solely because it seemed redundant
- // this got commented out in a change that supposedly makes the code match QW better
- // so if this is broken, maybe put it in an if (cls.protocol != PROTOCOL_QUAKEWORLD) block
- if (trace_plane_normal_z > 0.7)
- SET_ONGROUND(self);
-
- t -= t * trace_fraction;
-
- float f = self.velocity * trace_plane_normal;
- self.velocity -= f * trace_plane_normal;
- }
- if (pmove_waterjumptime > 0)
- self.velocity = primalvelocity;
-#endif
-}
-#endif
-
void CPM_PM_Aircontrol(vector wishdir, float wishspeed)
{
float k = 32 * (2 * IsMoveInDirection(self.movement, 0) - 1);