12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #include "Effect.h"
- Effect::Effect( Spieler *zSpieler, float maxTime )
- : ReferenceCounter()
- {
- this->zSpieler = zSpieler;
- timeLeft = maxTime;
- effectImage = 0;
- }
- Effect::~Effect()
- {
- if( effectImage )
- effectImage->release();
- }
- bool Effect::tick( double time, Spiel *zSpiel )
- {
- timeLeft -= (float)time;
- return timeLeft <= 0;
- }
- bool Effect::istSpielerBeweglich( Richtung r ) const
- {
- return 1;
- }
- bool Effect::istSpielerVerwundbar( Richtung r ) const
- {
- return 1;
- }
- bool Effect::istSpielerSichtbar( Team *zTeam ) const
- {
- return 1;
- }
- bool Effect::istIntersectable() const
- {
- return 1;
- }
- void Effect::move( Richtung r, double time )
- {}
- bool Effect::istGegenstandErlaubt( GegenstandTyp typ ) const
- {
- return 1;
- }
- void Effect::renderSpieler( Bild &rObj )
- {}
- bool Effect::renderEffect( int x, int y, int width, int height, Bild &rObj, Schrift *zSchrift )
- {
- if( !effectImage )
- return 0;
- rObj.alphaBildSkall( x, y, width, height, *effectImage );
- TextRenderer tr;
- tr.setSchriftZ( dynamic_cast<Schrift *>( zSchrift->getThis() ) );
- tr.setSchriftSize( 12 );
- tr.renderText( x + 5, y + 5, Text( (int)( timeLeft * 100 ) / 100.0 ), rObj, 0xFFFFFFFF );
- return 1;
- }
- Resource *Effect::getCurrentResource()
- {
- return 0;
- }
|