Ereignis.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #pragma once
  2. #include <Array.h>
  3. #include "Variablen.h"
  4. class VarPointer;
  5. enum EreignisTyp
  6. {
  7. AUSLOESER_RUNNED,
  8. BARIERE_SWITCHED,
  9. BARIERE_WIRD_VERSCHOBEN,
  10. BASIS_BESITZERWECHSEL,
  11. GEGENSTAND_ERSCHEINT,
  12. INITIALISIERUNG,
  13. SCHALTER_AKTIVIERT,
  14. SPIELER_BENUTZT_GEGENSTAND,
  15. SPIELER_KEY_PRESSED,
  16. SPIELER_BEKOMMT_ERFAHRUNG,
  17. SPIELER_BEKOMMT_GEGENSTAND,
  18. SPIELER_KEY_RELEASED,
  19. SPIELER_LEVEL_UP,
  20. SPIELER_MACHT_SCHADEN,
  21. SPIELER_NIMMT_SCHADEN,
  22. SPIELER_STIRBT,
  23. SPIELER_WIEDERBELEBT,
  24. SPIELER_WIRD_GEHEILT,
  25. TIMER_RUNNS_OUT,
  26. TIMER_BEGINNT,
  27. TUNNEL_BENUTZT,
  28. UMLENKUNG_LENKT_UM
  29. };
  30. class Ereignis
  31. {
  32. private:
  33. EreignisTyp typ;
  34. RCArray< VarPointer > params;
  35. int ref;
  36. public:
  37. Ereignis( EreignisTyp typ );
  38. ~Ereignis();
  39. EreignisTyp getTyp() const;
  40. void addParameter( const char *name, Variable *var );
  41. VarPointer *getParameter( const char *name ) const;
  42. VarPointer *zParameter( const char *name ) const;
  43. Ereignis *getThis();
  44. Ereignis *release();
  45. };