|
@@ -279,10 +279,9 @@ void Spiel::nachricht( int accountId, int len, char *bytes )
|
|
|
}
|
|
|
break;
|
|
|
case 9: // Skill verwendung
|
|
|
- if( 1 )
|
|
|
{
|
|
|
bytes++;
|
|
|
- char id = *bytes;
|
|
|
+ char art = *bytes;
|
|
|
len--;
|
|
|
for( int i = 0; i < spielerAnzahl; i++ )
|
|
|
{
|
|
@@ -291,19 +290,22 @@ void Spiel::nachricht( int accountId, int len, char *bytes )
|
|
|
{
|
|
|
if( !tmp->istAmLeben() )
|
|
|
break;
|
|
|
- tmp->useSkill( id );
|
|
|
+ if( !tmp->setSkill( art ) )
|
|
|
+ {
|
|
|
+ saveMSG = 0;
|
|
|
+ break;
|
|
|
+ }
|
|
|
for( int j = 0; j < spielerAnzahl; j++ )
|
|
|
{
|
|
|
Spieler *s = spieler->z( j );
|
|
|
if( s && s->zKlient() )
|
|
|
- s->zKlient()->sendeSkillNachricht( tmp->getSpielerNummer(), id, spielZeit );
|
|
|
+ s->zKlient()->sendeSkillNachricht( tmp->getSpielerNummer(), art, spielZeit );
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
- break;
|
|
|
case 0xA: // Use active skill
|
|
|
{
|
|
|
bytes++;
|
|
@@ -316,6 +318,7 @@ void Spiel::nachricht( int accountId, int len, char *bytes )
|
|
|
{
|
|
|
if( !tmp->istAmLeben() )
|
|
|
break;
|
|
|
+ tmp->useSkill( id );
|
|
|
for( int j = 0; j < spielerAnzahl; j++ )
|
|
|
{
|
|
|
Spieler *s = spieler->z( j );
|