#include "LebenRune.h" #include "Spieler.h" LebenRuneEffect::LebenRuneEffect( ResourceRegistry *zResources, Spieler *zSpieler ) : Effect( zSpieler, 75.f + ( 75.f / 100.f ) * zSpieler->getAbklingZeitVerringerung() ) { zSpieler->setLebensRegeneration( zSpieler->getLebensRegenneration() + 10 ); annimation = zResources->getResource( R_RLEBEN_EFFECT, 0 ); currentImage = 0; nextImage = 0.075; } LebenRuneEffect::~LebenRuneEffect() { zSpieler->setLebensRegeneration( zSpieler->getLebensRegenneration() - 10 ); annimation->release(); } bool LebenRuneEffect::tick( double time, Spiel *zSpiel ) { nextImage -= time; if( nextImage <= 0 ) { nextImage += 0.075; currentImage++; } return Effect::tick( time, zSpiel ); } void LebenRuneEffect::renderSpieler( Bild &rObj ) { if( currentImage >= annimation->getImageCount() ) return; if( rObj.setDrawOptions( (int)zSpieler->getX(), (int)zSpieler->getY(), (int)zSpieler->getWidth(), (int)zSpieler->getHeight() ) ) { rObj.alphaBildSkall( 0, 0, (int)zSpieler->getWidth(), (int)zSpieler->getHeight(), *annimation->zImage( currentImage ) ); rObj.releaseDrawOptions(); } }