@@ -255,7 +255,7 @@ internal static NetworkedObject CreateLocalNetworkedObject(bool softCreate, ulon
255
255
}
256
256
257
257
// Ran on both server and client
258
- internal static void SpawnNetworkedObjectLocally ( NetworkedObject netObject , ulong networkId , bool sceneObject , bool playerObject , ulong ownerClientId , Stream dataStream , bool readPayload , int payloadLength , bool readNetworkedVar , bool destroyWithScene )
258
+ internal static void SpawnNetworkedObjectLocally ( NetworkedObject netObject , ulong networkId , bool sceneObject , bool playerObject , ulong ? ownerClientId , Stream dataStream , bool readPayload , int payloadLength , bool readNetworkedVar , bool destroyWithScene )
259
259
{
260
260
if ( netObject == null )
261
261
{
@@ -279,34 +279,37 @@ internal static void SpawnNetworkedObjectLocally(NetworkedObject netObject, ulon
279
279
280
280
netObject . DestroyWithScene = sceneObject || destroyWithScene ;
281
281
282
- netObject . OwnerClientId = ownerClientId ;
282
+ netObject . _ownerClientId = ownerClientId ;
283
283
netObject . IsPlayerObject = playerObject ;
284
284
285
285
SpawnedObjects . Add ( netObject . NetworkId , netObject ) ;
286
286
SpawnedObjectsList . Add ( netObject ) ;
287
287
288
- if ( NetworkingManager . Singleton . IsServer )
288
+ if ( ownerClientId != null )
289
289
{
290
- if ( playerObject )
290
+ if ( NetworkingManager . Singleton . IsServer )
291
291
{
292
- NetworkingManager . Singleton . ConnectedClients [ ownerClientId ] . PlayerObject = netObject ;
293
- }
294
- else
295
- {
296
- NetworkingManager . Singleton . ConnectedClients [ ownerClientId ] . OwnedObjects . Add ( netObject ) ;
297
- }
298
-
299
- for ( int i = 0 ; i < NetworkingManager . Singleton . ConnectedClientsList . Count ; i ++ )
300
- {
301
- if ( netObject . CheckObjectVisibility == null || netObject . CheckObjectVisibility ( NetworkingManager . Singleton . ConnectedClientsList [ i ] . ClientId ) )
292
+ if ( playerObject )
293
+ {
294
+ NetworkingManager . Singleton . ConnectedClients [ ownerClientId . Value ] . PlayerObject = netObject ;
295
+ }
296
+ else
302
297
{
303
- netObject . observers . Add ( NetworkingManager . Singleton . ConnectedClientsList [ i ] . ClientId ) ;
298
+ NetworkingManager . Singleton . ConnectedClients [ ownerClientId . Value ] . OwnedObjects . Add ( netObject ) ;
299
+ }
300
+
301
+ for ( int i = 0 ; i < NetworkingManager . Singleton . ConnectedClientsList . Count ; i ++ )
302
+ {
303
+ if ( netObject . CheckObjectVisibility == null || netObject . CheckObjectVisibility ( NetworkingManager . Singleton . ConnectedClientsList [ i ] . ClientId ) )
304
+ {
305
+ netObject . observers . Add ( NetworkingManager . Singleton . ConnectedClientsList [ i ] . ClientId ) ;
306
+ }
304
307
}
305
308
}
306
- }
307
- else if ( playerObject && ownerClientId == NetworkingManager . Singleton . LocalClientId )
308
- {
309
- NetworkingManager . Singleton . ConnectedClients [ ownerClientId ] . PlayerObject = netObject ;
309
+ else if ( playerObject && ownerClientId . Value == NetworkingManager . Singleton . LocalClientId )
310
+ {
311
+ NetworkingManager . Singleton . ConnectedClients [ ownerClientId . Value ] . PlayerObject = netObject ;
312
+ }
310
313
}
311
314
312
315
if ( readPayload )
@@ -467,7 +470,7 @@ internal static void ServerSpawnSceneObjectsOnStartSweep()
467
470
{
468
471
if ( networkedObjects [ i ] . IsSceneObject == null )
469
472
{
470
- SpawnNetworkedObjectLocally ( networkedObjects [ i ] , GetNetworkObjectId ( ) , true , false , NetworkingManager . Singleton . ServerClientId , null , false , 0 , false , true ) ;
473
+ SpawnNetworkedObjectLocally ( networkedObjects [ i ] , GetNetworkObjectId ( ) , true , false , null , null , false , 0 , false , true ) ;
471
474
}
472
475
}
473
476
}
0 commit comments