keypad.h 885 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. class idKeypad : public idAnimatedEntity
  2. {
  3. public:
  4. CLASS_PROTOTYPE( idKeypad );
  5. void Spawn( void );
  6. void Save( idSaveGame *savefile ) const;
  7. void Restore( idRestoreGame *savefile );
  8. virtual void Think( void );
  9. void OnFrob( idEntity* activator );
  10. private:
  11. enum { OFF, ACTIVE, CONFIRM_SUCCESS, CONFIRM_FAIL, READY_TO_CLOSE };
  12. int state;
  13. int counter;
  14. int nextStateTime;
  15. idEntity* frobcubeMain;
  16. idEntity* frobcubes[9];
  17. const idDeclSkin * skin_glow[9];
  18. int transitions[9];
  19. void GenerateKey( void );
  20. void GenerateDictionary( void );
  21. idStrList keys;
  22. int keycode[4];
  23. int input[4];
  24. int keyIndex;
  25. idEntity* bluebox;
  26. idStr GetJointViaIndex( int index );
  27. void UpdateStates( void );
  28. void Event_keypadopen( int value );
  29. };