@@ -2700,14 +2700,13 @@ internal List<NetworkBehaviour> ChildNetworkBehaviours
27002700 }
27012701 var type = networkBehaviours [ i ] . GetType ( ) ;
27022702#if COM_UNITY_MODULES_PHYSICS || COM_UNITY_MODULES_PHYSICS2D
2703+ if ( NetworkRigidbodies == null )
2704+ {
2705+ NetworkRigidbodies = new List < NetworkRigidbodyBase > ( ) ;
2706+ }
27032707 if ( type . IsSubclassOf ( typeof ( NetworkRigidbodyBase ) ) )
27042708 {
27052709 var networkRigidbody = networkBehaviours [ i ] as NetworkRigidbodyBase ;
2706-
2707- if ( NetworkRigidbodies == null )
2708- {
2709- NetworkRigidbodies = new List < NetworkRigidbodyBase > ( ) ;
2710- }
27112710 NetworkRigidbodies . Add ( networkRigidbody ) ;
27122711#if UNIFIED_NETCODE
27132712 // For now, we will just destroy these components during runtime since they will not
@@ -2757,16 +2756,22 @@ internal List<NetworkBehaviour> ChildNetworkBehaviours
27572756 // automatically removed later).
27582757 if ( HasGhost )
27592758 {
2760- for ( int i = NetworkRigidbodies . Count - 1 ; i >= 0 ; i -- )
2759+ if ( NetworkRigidbodies != null )
27612760 {
2762- Destroy ( NetworkRigidbodies [ i ] ) ;
2761+ for ( int i = NetworkRigidbodies . Count - 1 ; i >= 0 ; i -- )
2762+ {
2763+ Destroy ( NetworkRigidbodies [ i ] ) ;
2764+ }
2765+ NetworkRigidbodies . Clear ( ) ;
27632766 }
2764- for ( int i = NetworkTransforms . Count - 1 ; i >= 0 ; i -- )
2767+ if ( NetworkTransforms != null )
27652768 {
2766- Destroy ( NetworkTransforms [ i ] ) ;
2769+ for ( int i = NetworkTransforms . Count - 1 ; i >= 0 ; i -- )
2770+ {
2771+ Destroy ( NetworkTransforms [ i ] ) ;
2772+ }
2773+ NetworkTransforms . Clear ( ) ;
27672774 }
2768- NetworkRigidbodies . Clear ( ) ;
2769- NetworkTransforms . Clear ( ) ;
27702775 }
27712776#endif
27722777
0 commit comments