@@ -652,11 +652,7 @@ public void NetworkUpdate(NetworkUpdateStage updateStage)
652652
653653 private void OnNetworkEarlyUpdate ( )
654654 {
655- PerformanceDataManager . BeginNewTick ( ) ;
656- if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
657- {
658- profileTransport . BeginNewTick ( ) ;
659- }
655+ ProfilerBeginTick ( ) ;
660656
661657 if ( IsListening )
662658 {
@@ -760,13 +756,7 @@ private void OnNetworkPreUpdate()
760756 }
761757 }
762758
763- if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
764- {
765- var transportProfilerData = profileTransport . GetTransportProfilerData ( ) ;
766- PerformanceDataManager . AddTransportData ( transportProfilerData ) ;
767- }
768-
769- OnPerformanceDataEvent ? . Invoke ( PerformanceDataManager . GetData ( ) ) ;
759+ NotifyProfilerListeners ( ) ;
770760 }
771761
772762 internal void UpdateNetworkTime ( ulong clientId , float netTime , float receiveTime , bool warp = false )
@@ -1495,5 +1485,37 @@ internal void HandleApproval(ulong clientId, bool createPlayerObject, ulong? pla
14951485 NetworkConfig . NetworkTransport . DisconnectRemoteClient ( clientId ) ;
14961486 }
14971487 }
1488+
1489+ private void ProfilerBeginTick ( )
1490+ {
1491+ PerformanceDataManager . BeginNewTick ( ) ;
1492+ if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
1493+ {
1494+ profileTransport . BeginNewTick ( ) ;
1495+ }
1496+ }
1497+
1498+ private void NotifyProfilerListeners ( )
1499+ {
1500+ var data = PerformanceDataManager . GetData ( ) ;
1501+ var eventHandler = OnPerformanceDataEvent ;
1502+ if ( eventHandler != null )
1503+ {
1504+ if ( data != null )
1505+ {
1506+ if ( NetworkConfig . NetworkTransport is ITransportProfilerData profileTransport )
1507+ {
1508+ var transportProfilerData = profileTransport . GetTransportProfilerData ( ) ;
1509+ PerformanceDataManager . AddTransportData ( transportProfilerData ) ;
1510+ }
1511+
1512+ eventHandler . Invoke ( data ) ;
1513+ }
1514+ else
1515+ {
1516+ NetworkLog . LogWarning ( "No data available. Did you forget to call PerformanceDataManager.BeginNewTick() first?" ) ;
1517+ }
1518+ }
1519+ }
14981520 }
14991521}
0 commit comments