1- using System . Threading . Tasks ;
1+ using System ;
2+ using System . Threading . Tasks ;
23
34namespace Multiplayer . Common ;
45
@@ -13,7 +14,7 @@ protected override async Task RunState()
1314 HandleProtocol ( await Packet ( Packets . Client_Protocol ) ) ;
1415 HandleUsername ( await Packet ( Packets . Client_Username ) ) ;
1516
16- while ( await Server . InitData ( ) is null && await EndIfDead ( ) )
17+ while ( await Server . InitDataTask ( ) is null && await EndIfDead ( ) )
1718 if ( Server . InitDataState == InitDataState . Waiting )
1819 await RequestInitData ( ) ;
1920
@@ -105,9 +106,11 @@ private bool HandleClientJoinData(ByteReader data)
105106 var modCtorRoundMode = data . ReadEnum < RoundModeEnum > ( ) ;
106107 var staticCtorRoundMode = data . ReadEnum < RoundModeEnum > ( ) ;
107108
108- if ( ( modCtorRoundMode , staticCtorRoundMode ) != Server . initData ! . RoundModes )
109+ var serverInitData = Server . InitData ??
110+ throw new Exception ( "Server init data is null during handling of client join data" ) ;
111+ if ( ( modCtorRoundMode , staticCtorRoundMode ) != serverInitData . RoundModes )
109112 {
110- Player . Disconnect ( $ "FP round modes don't match: { ( modCtorRoundMode , staticCtorRoundMode ) } != { Server . initData ! . RoundModes } ") ;
113+ Player . Disconnect ( $ "FP round modes don't match: { ( modCtorRoundMode , staticCtorRoundMode ) } != { serverInitData . RoundModes } ") ;
111114 return false ;
112115 }
113116
@@ -129,7 +132,7 @@ private bool HandleClientJoinData(ByteReader data)
129132
130133 var status = DefCheckStatus . Ok ;
131134
132- if ( ! Server . initData ! . DefInfos . TryGetValue ( defType , out DefInfo info ) )
135+ if ( ! serverInitData . DefInfos . TryGetValue ( defType , out DefInfo info ) )
133136 status = DefCheckStatus . Not_Found ;
134137 else if ( info . count != defCount )
135138 status = DefCheckStatus . Count_Diff ;
@@ -146,10 +149,10 @@ private bool HandleClientJoinData(ByteReader data)
146149 Packets . Server_JoinData ,
147150 Server . settings . gameName ,
148151 Player . id ,
149- Server . initData ! . RwVersion ,
152+ serverInitData . RwVersion ,
150153 MpVersion . Version ,
151154 defsResponse . ToArray ( ) ,
152- Server . initData . RawData
155+ serverInitData . RawData
153156 ) ;
154157
155158 return defsMatch ;
0 commit comments