42 lines
709 B
C++
42 lines
709 B
C++
#ifndef __FREEVIEW_H__
|
|
#define __FREEVIEW_H__
|
|
|
|
class idPhysics_Player;
|
|
|
|
class idFreeView {
|
|
public:
|
|
|
|
idFreeView() { physics = NULL; snapAngle = false; }
|
|
|
|
~idFreeView();
|
|
|
|
// start free flying from this client's current position
|
|
void SetFreeView( int clientNum );
|
|
|
|
// pick a random spawn in the map
|
|
void PickRandomSpawn( void );
|
|
|
|
// update view and position
|
|
void Fly( const usercmd_t &ucmd );
|
|
|
|
void Draw( void );
|
|
|
|
bool Initialized( void ) const { return physics != NULL; }
|
|
|
|
void Shutdown( void );
|
|
|
|
const idVec3 & GetOrigin( void );
|
|
|
|
private:
|
|
|
|
void Setup( void );
|
|
|
|
renderView_t view;
|
|
idPhysics_Player *physics;
|
|
idAngles viewAngles;
|
|
|
|
bool snapAngle;
|
|
idAngles viewAngleOffset;
|
|
};
|
|
|
|
#endif
|