mirror of
https://github.com/blendogames/quadrilateralcowboy.git
synced 2024-11-12 23:44:11 +00:00
66 lines
1.2 KiB
C++
66 lines
1.2 KiB
C++
|
|
class idSentry : public idMoveableItem
|
|
{
|
|
public:
|
|
CLASS_PROTOTYPE( idSentry );
|
|
|
|
void Spawn( void );
|
|
|
|
virtual void Think( void );
|
|
|
|
|
|
void OnGet( void );
|
|
|
|
void Save( idSaveGame *savefile ) const;
|
|
void Restore( idRestoreGame *savefile );
|
|
|
|
|
|
private:
|
|
|
|
enum { OFF, DEPLOYING, ON, CLOSING };
|
|
int state;
|
|
|
|
float yaw;
|
|
float pitch;
|
|
|
|
void Event_sentrykill( void );
|
|
void Event_activate( int value );
|
|
|
|
void Event_issentryactive();
|
|
|
|
void Event_sentryturn( float yawValue );
|
|
void Event_sentrypitch( float pitchValue );
|
|
void Event_sentryface( float x, float y, float z );
|
|
void Event_sentryfire( void );
|
|
void Event_sentrystand( void );
|
|
void Event_sentrygetlaser( void );
|
|
|
|
|
|
void fireShot( void );
|
|
|
|
idBeam* beamStart;
|
|
idBeam* beamEnd;
|
|
|
|
idAnimatedEntity * model;
|
|
|
|
idEntity* laserdot;
|
|
idEntity * nosecam;
|
|
int laserActivateTime;
|
|
|
|
|
|
float yawStart;
|
|
float yawEnd;
|
|
int yawTimeStart;
|
|
int yawTimeEnd;
|
|
bool yawActive;
|
|
|
|
float pitchStart;
|
|
float pitchEnd;
|
|
int pitchTimeStart;
|
|
int pitchTimeEnd;
|
|
bool pitchActive;
|
|
|
|
|
|
int queuedShots;
|
|
int nextShotTime;
|
|
};
|