mirror of
https://github.com/Q3Rally-Team/q3rally.git
synced 2024-11-25 05:11:00 +00:00
90 lines
2.4 KiB
C
90 lines
2.4 KiB
C
/*
|
|
===========================================================================
|
|
Copyright (C) 1999-2005 Id Software, Inc.
|
|
Copyright (C) 2002-2021 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 );
|
|
|
|
|