|
@@ -693,7 +693,7 @@ void ESKlient::thread()
|
|
|
br = 1;
|
|
|
}
|
|
|
}
|
|
|
- if( c == 3 )
|
|
|
+ else if( c == 3 )
|
|
|
{
|
|
|
if( encrypted )
|
|
|
klient->sendeEncrypted( "\1", 1 );
|
|
@@ -701,6 +701,10 @@ void ESKlient::thread()
|
|
|
klient->sende( "\1", 1 );
|
|
|
br = 1;
|
|
|
}
|
|
|
+ else
|
|
|
+ {
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
else
|
|
|
br = 1;
|
|
@@ -797,6 +801,7 @@ void ESKlient::thread()
|
|
|
weiter->newsServerKlientAbsturz( klientNummer );
|
|
|
weiter->kartenServerKlientAbsturz( klientNummer );
|
|
|
weiter->editorServerKlientAbsturz( klientNummer );
|
|
|
+ weiter->minigameServerKlientAbsturz( klientNummer );
|
|
|
weiter->release();
|
|
|
es->zDB()->removeKlient( klientNummer );
|
|
|
}
|
|
@@ -818,6 +823,7 @@ void ESKlient::thread()
|
|
|
weiter->newsServerKlientAbsturz( klientNummer );
|
|
|
weiter->kartenServerKlientAbsturz( klientNummer );
|
|
|
weiter->editorServerKlientAbsturz( klientNummer );
|
|
|
+ weiter->minigameServerKlientAbsturz( klientNummer );
|
|
|
weiter->release();
|
|
|
es->zDB()->removeKlient( klientNummer );
|
|
|
}
|
|
@@ -990,7 +996,7 @@ bool ESGWeiterleitung::chatServerKlientAbsturz( int klientId )
|
|
|
return 0;
|
|
|
}
|
|
|
Klient *k = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
k->setSendeKey( (char*)key, 20 );
|
|
|
k->setEmpfangKey( (char*)key, 20 );
|
|
|
k->verbinde( (unsigned short)port, ip->getText() );
|
|
@@ -1212,6 +1218,35 @@ bool ESGWeiterleitung::editorServerKlientAbsturz( int klientId )
|
|
|
return erf;
|
|
|
}
|
|
|
|
|
|
+bool ESGWeiterleitung::minigameServerKlientAbsturz( int klientId )
|
|
|
+{
|
|
|
+ Text *ip = new Text();
|
|
|
+ int port = 0;
|
|
|
+ if( !es->zDB()->getMinigameServer( klientId, ip, &port ) )
|
|
|
+ {
|
|
|
+ ip->release();
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ Klient *k = new Klient();
|
|
|
+ unsigned char key[ 20 ] = { 88, 103, 192, 232, 69, 54, 57, 3, 239, 138, 234, 172, 126, 72, 81, 55, 205, 97, 59, 255 };
|
|
|
+ k->setSendeKey( (char*)key, 20 );
|
|
|
+ k->setEmpfangKey( (char*)key, 20 );
|
|
|
+ k->verbinde( (unsigned short)port, ip->getText() );
|
|
|
+ ip->release();
|
|
|
+ char ret = 0;
|
|
|
+ k->sendeEncrypted( "\2\2", 2 );
|
|
|
+ k->sendeEncrypted( (char*)&klientId, 4 );
|
|
|
+ k->getNachrichtEncrypted( &ret, 1 );
|
|
|
+ bool erf = ret == 1;
|
|
|
+ k->sendeEncrypted( "\3", 1 );
|
|
|
+ k->getNachrichtEncrypted( &ret, 1 );
|
|
|
+ es->addEmpfangen( k->getDownloadBytes( 1 ) );
|
|
|
+ es->addGesendet( k->getUploadBytes( 1 ) );
|
|
|
+ k->trenne();
|
|
|
+ k->release();
|
|
|
+ return erf;
|
|
|
+}
|
|
|
+
|
|
|
bool ESGWeiterleitung::spielErstelltAbbrechen( int spielErstelltId )
|
|
|
{
|
|
|
bool ret = 1;
|
|
@@ -1262,7 +1297,7 @@ bool ESGWeiterleitung::spielerLeavesGruppe( int gruppeId, int accountId )
|
|
|
if( ip->getLength() )
|
|
|
{
|
|
|
Klient *klient = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
klient->setSendeKey( (char*)key, 20 );
|
|
|
klient->setEmpfangKey( (char*)key, 20 );
|
|
|
ret = ret & klient->verbinde( (unsigned short)port, ip->getText() );
|
|
@@ -1314,7 +1349,7 @@ bool ESGWeiterleitung::setGruppeAdmin( int gruppeId, int adminId )
|
|
|
if( ip->getLength() )
|
|
|
{
|
|
|
Klient *klient = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
klient->setSendeKey( (char*)key, 20 );
|
|
|
klient->setEmpfangKey( (char*)key, 20 );
|
|
|
ret = ret & klient->verbinde( (unsigned short)port, ip->getText() );
|
|
@@ -1356,7 +1391,7 @@ bool ESGWeiterleitung::spielerLeavesChatroom( int chatroomId, int accountId )
|
|
|
if( ip->getLength() )
|
|
|
{
|
|
|
Klient *klient = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
klient->setSendeKey( (char*)key, 20 );
|
|
|
klient->setEmpfangKey( (char*)key, 20 );
|
|
|
ret = ret & klient->verbinde( (unsigned short)port, ip->getText() );
|
|
@@ -1393,7 +1428,7 @@ bool ESGWeiterleitung::setChatroomAdmin( int chatroomId, int adminId )
|
|
|
if( ip->getLength() )
|
|
|
{
|
|
|
Klient *klient = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
klient->setSendeKey( (char*)key, 20 );
|
|
|
klient->setEmpfangKey( (char*)key, 20 );
|
|
|
ret = ret & klient->verbinde( (unsigned short)port, ip->getText() );
|
|
@@ -1432,7 +1467,7 @@ bool ESGWeiterleitung::kickSpielerAusGruppe( int gruppeId )
|
|
|
if( ip->getLength() )
|
|
|
{
|
|
|
Klient *klient = new Klient();
|
|
|
- unsigned char key[ 20 ] = { 79, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
+ unsigned char key[ 20 ] = { 78, 20, 190, 133, 10, 175, 51, 96, 62, 1, 180, 194, 126, 50, 211, 154, 105, 227, 22, 101 };
|
|
|
klient->setSendeKey( (char*)key, 20 );
|
|
|
klient->setEmpfangKey( (char*)key, 20 );
|
|
|
ret = ret & klient->verbinde( (unsigned short)port, ip->getText() );
|