/* qvm-specific game-related functions.
 * Alliance Games
 * this basically means that some functions that are to be used in
 * bg_pmove.c et al have state stored in either cgame or game libraries.
 * These functions will be stored in either bg_client.c or bg_server.c.
 * Joe - or bg_alliance.c if it's the same in cgame & qagame
 */
#ifndef _BG_BATTLEBOTS_H_
#define _BG_BATTLEBOTS_H_

int getGrapplePullSpeed(void);
qboolean hasEnoughAmmo(const entityState_t *ent, const playerState_t *ps);
qboolean BG_weaponsStayEnabled(void);
void QDECL BG_Printf(const char *msg, ...);
// Joe triple rail
qboolean BG_tripleRailEnabled(void);



// Myrkul: Pogo
int BG_pogo(void);

// Myrkul: Movement options
int BG_rampJump(void);
int BG_strafeJump(void);
int BG_airMove(void);
int BG_airSpeed(void);
int BG_grafting(void);

// Myrkul: trains you to use strafe jump
//int BG_strafeJumpTrainer(void);

// Joe
void BG_CalcMuzzlePoint (vec3_t origin, int viewheight, vec3_t forward, vec3_t
                         muzzlePoint);

qboolean BG_superShotgun(void);

#endif //_BG_BATTLEBOTS_H_



