laserwire.h 872 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #define BEAMCOUNT 5
  2. class idLaserWire : public idEntity
  3. {
  4. public:
  5. CLASS_PROTOTYPE( idLaserWire );
  6. void Spawn( void );
  7. void Save( idSaveGame *savefile ) const;
  8. void Restore( idRestoreGame *savefile );
  9. virtual void Think( void );
  10. virtual void Present( void );
  11. private:
  12. enum { IDLE, DIMMING, OFF, TURNON, DISABLED };
  13. int nextThinkTime;
  14. int state;
  15. idBeam* boundBeam[ BEAMCOUNT ];
  16. idBeam* boundBeamTarget[ BEAMCOUNT ];
  17. void Event_off( float delay );
  18. void Event_on( void );
  19. void Event_laserenable( int value );
  20. int dimEndTime;
  21. int dimStartTime;
  22. int turnonTime;
  23. int nextAlarmTime;
  24. int softAlarmTime;
  25. bool softAlarmReady;
  26. idEntity* ghostImage;
  27. void Event_KillGhost( void );
  28. int softAlarmTimeMax;
  29. };