|
@@ -372,7 +372,7 @@ void Spiel::tick( double zeit )
|
|
|
{
|
|
|
Spieler *s = spieler->z( j );
|
|
|
if( s )
|
|
|
- s->zKlient()->sendeTreffer( tmp->getId(), -1, spielZeit );
|
|
|
+ s->zKlient()->sendeTreffer( tmp->getId(), -1, spielZeit, 0, 0 );
|
|
|
}
|
|
|
welt->removeObject( tmp );
|
|
|
shots->remove( i );
|
|
@@ -391,13 +391,23 @@ void Spiel::tick( double zeit )
|
|
|
bool kill = s->nimmSchaden( intens );
|
|
|
if( tmp->getSpeed().getLengthSq() > 0 )
|
|
|
s->impuls( tmp->getPosition() - tmp->getSpeed(), tmp->getSpeed() * 0.3f );
|
|
|
+ float erf;
|
|
|
+ int skillP;
|
|
|
for( int k = 0; k < spielerAnzahl; k++ )
|
|
|
{
|
|
|
Spieler *sp = spieler->z( k );
|
|
|
- if( sp )
|
|
|
- sp->zKlient()->sendeTreffer( tmp->getId(), s->getSpielerNummer(), spielZeit );
|
|
|
if( sp && sp->getSpielerNummer() == tmp->getSpieler() )
|
|
|
+ {
|
|
|
sp->machSchaden( intens, kill );
|
|
|
+ erf = sp->getEp();
|
|
|
+ skillP = sp->getSkillP();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for( int k = 0; k < spielerAnzahl; k++ )
|
|
|
+ {
|
|
|
+ Spieler *sp = spieler->z( k );
|
|
|
+ if( sp )
|
|
|
+ sp->zKlient()->sendeTreffer( tmp->getId(), s->getSpielerNummer(), spielZeit, erf, skillP );
|
|
|
if( kill && sp )
|
|
|
sp->zKlient()->sendeTod( s->getSpielerNummer(), tmp->getSpieler(), spielZeit );
|
|
|
}
|
|
@@ -425,13 +435,23 @@ void Spiel::tick( double zeit )
|
|
|
Asteroid *b = a->istTreffer( tmp, &randG, asteroidId, pos );
|
|
|
if( b )
|
|
|
{
|
|
|
+ float erf;
|
|
|
+ int skillP;
|
|
|
for( int k = 0; k < spielerAnzahl; k++ )
|
|
|
{
|
|
|
Spieler *s = spieler->z( k );
|
|
|
- if( s )
|
|
|
- s->zKlient()->sendeAsteroidTreffer( a->getId(), b->getId(), tmp->getId(), pos, seed, spielZeit );
|
|
|
if( s && s->getSpielerNummer() == tmp->getSpieler() )
|
|
|
+ {
|
|
|
s->addTreffer( (float)intens );
|
|
|
+ erf = s->getEp();
|
|
|
+ skillP = s->getSkillP();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for( int k = 0; k < spielerAnzahl; k++ )
|
|
|
+ {
|
|
|
+ Spieler *s = spieler->z( k );
|
|
|
+ if( s )
|
|
|
+ s->zKlient()->sendeAsteroidTreffer( a->getId(), b->getId(), tmp->getId(), pos, seed, spielZeit, erf, skillP );
|
|
|
}
|
|
|
welt->removeObject( tmp );
|
|
|
shots->remove( i );
|