DrachenAuge.cpp 831 B

12345678910111213141516171819202122232425
  1. #include "DrachenAuge.h"
  2. #include "Spieler.h"
  3. DrachenAugeEffect::DrachenAugeEffect( Spieler *zVerursacher, Spieler *zOpfer )
  4. : Effect( zOpfer, DA_DURATION )
  5. {
  6. this->zVerursacher = zVerursacher;
  7. laufTempoDecrease = DA_MOVEMENT_DECREASE <= zSpieler->getLaufTempo() ? DA_MOVEMENT_DECREASE : zSpieler->getLaufTempo();
  8. zSpieler->setLaufTempo( zSpieler->getLaufTempo() - laufTempoDecrease );
  9. }
  10. DrachenAugeEffect::~DrachenAugeEffect()
  11. {
  12. zSpieler->setLaufTempo( zSpieler->getLaufTempo() + laufTempoDecrease );
  13. }
  14. bool DrachenAugeEffect::tick( double time, Spiel *zSpiel )
  15. {
  16. float damage = DA_MIN_DPS * (float)time;
  17. zSpieler->nimmSchaden( damage, zVerursacher, MITTE, zSpiel );
  18. if( zVerursacher )
  19. zVerursacher->heilung( DA_HEALPS * (float)time, zSpiel );
  20. return Effect::tick( time, zSpiel );
  21. }