@@ -98,30 +98,35 @@ private Game(ClientNetwork clientNetwork, IDataHolder dataHolder)
98
98
Chat = new Chat ( this ) ;
99
99
CombatLog = new CombatLog ( ) ;
100
100
101
- var packet = new Packet ( CMSGPackets . Init ) ;
102
- using ( var rsa = new RsaEncryptor ( Security . RSAKey . Modulus , Security . RSAKey . Exponent ) )
103
- {
104
- aes = new AesEncryptor ( AesEncryptionType . Aes256Bits ) { PaddingMode = PaddingMode . PKCS7 } ;
105
- network . Encryptor = aes ;
106
- packet . Write ( rsa . Encrypt ( aes . Encryptors ) ) ;
107
- }
108
-
109
- SendPacket ( packet , false ) ;
101
+ aes = new AesEncryptor ( AesEncryptionType . Aes256Bits ) { PaddingMode = PaddingMode . PKCS7 } ;
102
+ network . Encryptor = aes ;
110
103
networkConnectionTask = Task . Run ( UpdateAsync , tokenSource . Token ) ;
111
104
}
112
105
113
106
/// <summary>
114
107
/// Creates new instance of game
115
108
/// </summary>
116
109
/// <param name="server">Server url</param>
110
+ /// <param name="dataHolder">Data Holder</param>
111
+ /// <param name="packetCallback">Callback for processed packets</param>
117
112
/// <returns>Instance of game</returns>
118
- public static async Task < Game > CreateAsync ( string server , IDataHolder dataHolder )
113
+ public static async Task < Game > CreateAsync ( string server , IDataHolder dataHolder , Action < UInt16 > packetCallback )
119
114
{
120
115
var network = await ClientNetwork . CreateAsync ( server , port ) ;
121
116
if ( network == null )
122
117
return null ;
123
118
124
- return new Game ( network , dataHolder ) ;
119
+ var game = new Game ( network , dataHolder ) ;
120
+ game . PacketProcessed += packetCallback ;
121
+
122
+ var packet = new Packet ( CMSGPackets . Init ) ;
123
+ using ( var rsa = new RsaEncryptor ( Security . RSAKey . Modulus , Security . RSAKey . Exponent ) )
124
+ {
125
+ packet . Write ( rsa . Encrypt ( game . aes . Encryptors ) ) ;
126
+ }
127
+
128
+ await game . SendPacketAsync ( packet , false ) ;
129
+ return game ;
125
130
}
126
131
127
132
/// <summary>
0 commit comments