1 /*
2 ===========================================================================
3 
4 Return to Castle Wolfenstein single player GPL Source Code
5 Copyright (C) 1999-2010 id Software LLC, a ZeniMax Media company.
6 
7 This file is part of the Return to Castle Wolfenstein single player GPL Source Code (“RTCW SP Source Code”).
8 
9 RTCW SP Source Code is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
13 
14 RTCW SP Source Code is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with RTCW SP Source Code.  If not, see <http://www.gnu.org/licenses/>.
21 
22 In addition, the RTCW SP Source Code is also subject to certain additional terms. You should have received a copy of these additional terms immediately following the terms and conditions of the GNU General Public License which accompanied the RTCW SP Source Code.  If not, please request a copy in writing from id Software at the address below.
23 
24 If you have questions concerning this license or the applicable additional terms, you may contact in writing id Software LLC, c/o ZeniMax Media Inc., Suite 120, Rockville, Maryland 20850 USA.
25 
26 ===========================================================================
27 */
28 
29 
30 /*****************************************************************************
31  * name:		be_aas_move.h
32  *
33  * desc:		AAS
34  *
35  *
36  *****************************************************************************/
37 
38 #ifdef AASINTERN
39 extern aas_settings_t aassettings;
40 #endif //AASINTERN
41 
42 //movement prediction
43 int AAS_PredictClientMovement( struct aas_clientmove_s *move,
44 							   int entnum, vec3_t origin,
45 							   int presencetype, int onground,
46 							   vec3_t velocity, vec3_t cmdmove,
47 							   int cmdframes,
48 							   int maxframes, float frametime,
49 							   int stopevent, int stopareanum, int visualize );
50 //returns true if on the ground at the given origin
51 int AAS_OnGround( vec3_t origin, int presencetype, int passent );
52 //returns true if swimming at the given origin
53 int AAS_Swimming( vec3_t origin );
54 //returns the jump reachability run start point
55 void AAS_JumpReachRunStart( struct aas_reachability_s *reach, vec3_t runstart );
56 //returns true if against a ladder at the given origin
57 int AAS_AgainstLadder( vec3_t origin, int ms_areanum );
58 //rocket jump Z velocity when rocket-jumping at origin
59 float AAS_RocketJumpZVelocity( vec3_t origin );
60 //bfg jump Z velocity when bfg-jumping at origin
61 float AAS_BFGJumpZVelocity( vec3_t origin );
62 //calculates the horizontal velocity needed for a jump and returns true this velocity could be calculated
63 int AAS_HorizontalVelocityForJump( float zvel, vec3_t start, vec3_t end, float *velocity );
64 //
65 void AAS_SetMovedir( vec3_t angles, vec3_t movedir );
66 //
67 int AAS_DropToFloor( vec3_t origin, vec3_t mins, vec3_t maxs );
68 //
69 void AAS_InitSettings( void );
70