#include "SpielObjekt.h" #include "Define.h" // Inhalt der SpielObjekt Klasse aus SpielObjekt.h // Konstruktor SpielObjekt::SpielObjekt( ObjektStr *zStr ) : Model2DObject() { id = zStr->id; style = zStr->style; stability = zStr->maxStability; energie = zStr->maxEnergie; maxStability = zStr->maxStability; maxEnergie = zStr->maxEnergie; energieRadius = zStr->energieRadius; reparatur = zStr->reparatur; akkuLeistung = zStr->akkuLeistung; team = 0; } // Destruktor SpielObjekt::~SpielObjekt() { if( team ) team->release(); } // nicht constant void SpielObjekt::setTeam( Team *team ) { if( this->team ) this->team->release(); this->team = team; } bool SpielObjekt::tick( const WeltInfo &info, double zeit ) { repAbk -= zeit; if( repAbk < 0 ) repAbk = 0; akkuAbk -= zeit; if( akkuAbk < 0 ) akkuAbk = 0; if( !repAbk ) { stability += reparatur * zeit; if( stability > maxStability ) stability = maxStability; } if( !akkuAbk ) { if( !team ) { energie -= akkuLeistung * zeit; if( energie < 0 ) energie = 0; } else { energie += akkuLeistung * zeit; if( energie > maxEnergie ) energie = maxEnergie; } } return Model2DObject::tick( info, zeit ); } // constant Team *SpielObjekt::zTeam() const { return team; }