sentry.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. class idSentry : public idMoveableItem
  2. {
  3. public:
  4. CLASS_PROTOTYPE( idSentry );
  5. void Spawn( void );
  6. virtual void Think( void );
  7. void OnGet( void );
  8. void Save( idSaveGame *savefile ) const;
  9. void Restore( idRestoreGame *savefile );
  10. private:
  11. enum { OFF, DEPLOYING, ON, CLOSING };
  12. int state;
  13. float yaw;
  14. float pitch;
  15. void Event_sentrykill( void );
  16. void Event_activate( int value );
  17. void Event_issentryactive();
  18. void Event_sentryturn( float yawValue );
  19. void Event_sentrypitch( float pitchValue );
  20. void Event_sentryface( float x, float y, float z );
  21. void Event_sentryfire( void );
  22. void Event_sentrystand( void );
  23. void Event_sentrygetlaser( void );
  24. void fireShot( void );
  25. idBeam* beamStart;
  26. idBeam* beamEnd;
  27. idAnimatedEntity * model;
  28. idEntity* laserdot;
  29. idEntity * nosecam;
  30. int laserActivateTime;
  31. float yawStart;
  32. float yawEnd;
  33. int yawTimeStart;
  34. int yawTimeEnd;
  35. bool yawActive;
  36. float pitchStart;
  37. float pitchEnd;
  38. int pitchTimeStart;
  39. int pitchTimeEnd;
  40. bool pitchActive;
  41. int queuedShots;
  42. int nextShotTime;
  43. };