Effect.h 677 B

12345678910111213141516171819202122232425262728
  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. Effect *getThis();
  23. Effect *release();
  24. };