/* =========================================================================== Copyright (C) 1999-2005 Id Software, Inc. Copyright (C) 2002-2015 Q3Rally Team (Per Thormann - q3rally@gmail.com) This file is part of q3rally source code. q3rally source code is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. q3rally source code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with q3rally; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA =========================================================================== */ // // bg_local.h -- local definitions for the bg (both games) files #define MIN_WALK_NORMAL 0.7f // can't walk on very steep slopes #define STEPSIZE 18 #define JUMP_VELOCITY 270 #define TIMER_LAND 130 #define TIMER_GESTURE (34*66+50) #define OVERCLIP 1.001f // all of the locals will be zeroed before each // pmove, just to make damn sure we don't have // any differences when running on client or server typedef struct { vec3_t forward, right, up; float frametime; int msec; qboolean walking; qboolean groundPlane; trace_t groundTrace; float impactSpeed; vec3_t previous_origin; vec3_t previous_velocity; int previous_waterlevel; // STONELANCE int physicsSplit; // END } pml_t; extern pmove_t *pm; extern pml_t pml; // movement parameters extern float pm_stopspeed; extern float pm_duckScale; extern float pm_swimScale; extern float pm_accelerate; extern float pm_airaccelerate; extern float pm_wateraccelerate; extern float pm_flyaccelerate; extern float pm_friction; extern float pm_waterfriction; extern float pm_flightfriction; extern int c_pmove; void PM_ClipVelocity( vec3_t in, vec3_t normal, vec3_t out, float overbounce ); // STONELANCE // void PM_AddTouchEnt( int entityNum ); void PM_AddTouchEnt( int entityNum, vec3_t hitOrigin ); // END void PM_AddEvent( int newEvent ); qboolean PM_SlideMove( qboolean gravity ); void PM_StepSlideMove( qboolean gravity );