Effect.h 767 B

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include "Gegenstand.h"
  3. class Spieler;
  4. class Spiel;
  5. class Team;
  6. class Effect
  7. {
  8. protected:
  9. Spieler *zSpieler;
  10. float timeLeft;
  11. int ref;
  12. public:
  13. Effect( Spieler *zSpieler, float maxTime );
  14. virtual ~Effect();
  15. virtual bool tick( double time, Spiel *zSpiel );
  16. virtual bool istSpielerBeweglich( Richtung r ) const;
  17. virtual bool istSpielerVerwundbar( Richtung r ) const;
  18. virtual bool istSpielerSichtbar( Team *zTeam ) const;
  19. virtual bool istIntersectable() const;
  20. virtual void move( Richtung r, double time );
  21. virtual bool istGegenstandErlaubt( GegenstandTyp typ ) const;
  22. virtual void renderSpieler( Bild &rObj );
  23. virtual Resource *getCurrentResource();
  24. Effect *getThis();
  25. Effect *release();
  26. };