Effect.h 652 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include "Gegenstand.h"
  3. class Spieler;
  4. class Spiel;
  5. class Team;
  6. class Effect : public virtual ReferenceCounter
  7. {
  8. protected:
  9. Spieler *zSpieler;
  10. float timeLeft;
  11. public:
  12. Effect( Spieler *zSpieler, float maxTime );
  13. virtual ~Effect();
  14. virtual bool tick( double time, Spiel *zSpiel );
  15. virtual bool istSpielerBeweglich( Richtung r ) const;
  16. virtual bool istSpielerVerwundbar( Richtung r ) const;
  17. virtual bool istSpielerSichtbar( Team *zTeam ) const;
  18. virtual bool istIntersectable() const;
  19. virtual void move( Richtung r, double time );
  20. virtual bool istGegenstandErlaubt( GegenstandTyp typ ) const;
  21. };