@@ -712,7 +712,7 @@ private void Update()
712712 case NetEventType . Data :
713713 if ( LogHelper . CurrentLogLevel <= LogLevel . Developer ) LogHelper . LogInfo ( "Incomming Data From " + clientId + " : " + receivedSize + " bytes" ) ;
714714
715- HandleIncomingData ( clientId , messageBuffer , channelId , ( uint ) receivedSize ) ;
715+ HandleIncomingData ( clientId , messageBuffer , channelId , receivedSize ) ;
716716 break ;
717717 case NetEventType . Disconnect :
718718 NetworkProfiler . StartEvent ( TickType . Receive , 0 , "NONE" , "TRANSPORT_DISCONNECT" ) ;
@@ -782,17 +782,18 @@ private IEnumerator ApprovalTimeout(uint clientId)
782782 }
783783 }
784784
785- private void HandleIncomingData ( uint clientId , byte [ ] data , int channelId , uint totalSize )
785+ private void HandleIncomingData ( uint clientId , byte [ ] data , int channelId , int totalSize )
786786 {
787787 if ( LogHelper . CurrentLogLevel <= LogLevel . Developer ) LogHelper . LogInfo ( "Unwrapping Data Header" ) ;
788- using ( NetworkingManagerComponents . Binary . BitStream stream = new NetworkingManagerComponents . Binary . BitStream ( data ) )
788+ using ( NetworkingManagerComponents . Binary . BitStream stream = new NetworkingManagerComponents . Binary . BitStream ( data ) )
789789 {
790+ stream . SetLength ( totalSize ) ;
790791 BitReader reader = new BitReader ( stream ) ;
791792
792793 ushort messageType = reader . ReadUInt16Packed ( ) ;
793794
794795 uint headerByteSize = ( uint ) Arithmetic . VarIntSize ( messageType ) ;
795- NetworkProfiler . StartEvent ( TickType . Receive , totalSize - headerByteSize , channelId , messageType ) ;
796+ NetworkProfiler . StartEvent ( TickType . Receive , ( uint ) ( totalSize - headerByteSize ) , channelId , messageType ) ;
796797
797798 if ( LogHelper . CurrentLogLevel <= LogLevel . Developer )
798799 LogHelper . LogInfo ( "Data Header: messageType=" + messageType ) ;
@@ -804,68 +805,61 @@ private void HandleIncomingData(uint clientId, byte[] data, int channelId, uint
804805 return ;
805806 }
806807
807- if ( messageType >= 32 )
808+ #region INTERNAL MESSAGE
809+
810+ switch ( messageType )
808811 {
809-
812+ case MLAPIConstants . MLAPI_CONNECTION_REQUEST :
813+ if ( isServer ) InternalMessageHandler . HandleConnectionRequest ( clientId , stream , channelId ) ;
814+ break ;
815+ case MLAPIConstants . MLAPI_CONNECTION_APPROVED :
816+ if ( isClient ) InternalMessageHandler . HandleConnectionApproved ( clientId , stream , channelId ) ;
817+ break ;
818+ case MLAPIConstants . MLAPI_ADD_OBJECT :
819+ if ( isClient ) InternalMessageHandler . HandleAddObject ( clientId , stream , channelId ) ;
820+ break ;
821+ case MLAPIConstants . MLAPI_CLIENT_DISCONNECT :
822+ if ( isClient ) InternalMessageHandler . HandleClientDisconnect ( clientId , stream , channelId ) ;
823+ break ;
824+ case MLAPIConstants . MLAPI_DESTROY_OBJECT :
825+ if ( isClient ) InternalMessageHandler . HandleDestroyObject ( clientId , stream , channelId ) ;
826+ break ;
827+ case MLAPIConstants . MLAPI_SWITCH_SCENE :
828+ if ( isClient ) InternalMessageHandler . HandleSwitchScene ( clientId , stream , channelId ) ;
829+ break ;
830+ case MLAPIConstants . MLAPI_SPAWN_POOL_OBJECT :
831+ if ( isClient ) InternalMessageHandler . HandleSpawnPoolObject ( clientId , stream , channelId ) ;
832+ break ;
833+ case MLAPIConstants . MLAPI_DESTROY_POOL_OBJECT :
834+ if ( isClient ) InternalMessageHandler . HandleDestroyPoolObject ( clientId , stream , channelId ) ;
835+ break ;
836+ case MLAPIConstants . MLAPI_CHANGE_OWNER :
837+ if ( isClient ) InternalMessageHandler . HandleChangeOwner ( clientId , stream , channelId ) ;
838+ break ;
839+ case MLAPIConstants . MLAPI_ADD_OBJECTS :
840+ if ( isClient ) InternalMessageHandler . HandleAddObjects ( clientId , stream , channelId ) ;
841+ break ;
842+ case MLAPIConstants . MLAPI_TIME_SYNC :
843+ if ( isClient ) InternalMessageHandler . HandleTimeSync ( clientId , stream , channelId ) ;
844+ break ;
845+ case MLAPIConstants . MLAPI_NETWORKED_VAR_DELTA :
846+ InternalMessageHandler . HandleNetworkedVarDelta ( clientId , stream , channelId ) ;
847+ break ;
848+ case MLAPIConstants . MLAPI_NETWORKED_VAR_UPDATE :
849+ InternalMessageHandler . HandleNetworkedVarUpdate ( clientId , stream , channelId ) ;
850+ break ;
851+ case MLAPIConstants . MLAPI_SERVER_RPC :
852+ if ( isServer ) InternalMessageHandler . HandleServerRPC ( clientId , stream , channelId ) ;
853+ break ;
854+ case MLAPIConstants . MLAPI_CLIENT_RPC :
855+ if ( isClient ) InternalMessageHandler . HandleClientRPC ( clientId , stream , channelId ) ;
856+ break ;
857+ case MLAPIConstants . MLAPI_CUSTOM_MESSAGE :
858+ InternalMessageHandler . HandleCustomMessage ( clientId , stream , channelId ) ;
859+ break ;
810860 }
811- else
812- {
813- #region INTERNAL MESSAGE
814-
815- switch ( messageType )
816- {
817- case MLAPIConstants . MLAPI_CONNECTION_REQUEST :
818- if ( isServer ) InternalMessageHandler . HandleConnectionRequest ( clientId , stream , channelId ) ;
819- break ;
820- case MLAPIConstants . MLAPI_CONNECTION_APPROVED :
821- if ( isClient ) InternalMessageHandler . HandleConnectionApproved ( clientId , stream , channelId ) ;
822- break ;
823- case MLAPIConstants . MLAPI_ADD_OBJECT :
824- if ( isClient ) InternalMessageHandler . HandleAddObject ( clientId , stream , channelId ) ;
825- break ;
826- case MLAPIConstants . MLAPI_CLIENT_DISCONNECT :
827- if ( isClient ) InternalMessageHandler . HandleClientDisconnect ( clientId , stream , channelId ) ;
828- break ;
829- case MLAPIConstants . MLAPI_DESTROY_OBJECT :
830- if ( isClient ) InternalMessageHandler . HandleDestroyObject ( clientId , stream , channelId ) ;
831- break ;
832- case MLAPIConstants . MLAPI_SWITCH_SCENE :
833- if ( isClient ) InternalMessageHandler . HandleSwitchScene ( clientId , stream , channelId ) ;
834- break ;
835- case MLAPIConstants . MLAPI_SPAWN_POOL_OBJECT :
836- if ( isClient ) InternalMessageHandler . HandleSpawnPoolObject ( clientId , stream , channelId ) ;
837- break ;
838- case MLAPIConstants . MLAPI_DESTROY_POOL_OBJECT :
839- if ( isClient ) InternalMessageHandler . HandleDestroyPoolObject ( clientId , stream , channelId ) ;
840- break ;
841- case MLAPIConstants . MLAPI_CHANGE_OWNER :
842- if ( isClient ) InternalMessageHandler . HandleChangeOwner ( clientId , stream , channelId ) ;
843- break ;
844- case MLAPIConstants . MLAPI_ADD_OBJECTS :
845- if ( isClient ) InternalMessageHandler . HandleAddObjects ( clientId , stream , channelId ) ;
846- break ;
847- case MLAPIConstants . MLAPI_TIME_SYNC :
848- if ( isClient ) InternalMessageHandler . HandleTimeSync ( clientId , stream , channelId ) ;
849- break ;
850- case MLAPIConstants . MLAPI_NETWORKED_VAR_DELTA :
851- InternalMessageHandler . HandleNetworkedVarDelta ( clientId , stream , channelId ) ;
852- break ;
853- case MLAPIConstants . MLAPI_NETWORKED_VAR_UPDATE :
854- InternalMessageHandler . HandleNetworkedVarUpdate ( clientId , stream , channelId ) ;
855- break ;
856- case MLAPIConstants . MLAPI_SERVER_RPC :
857- if ( isServer ) InternalMessageHandler . HandleServerRPC ( clientId , stream , channelId ) ;
858- break ;
859- case MLAPIConstants . MLAPI_CLIENT_RPC :
860- if ( isClient ) InternalMessageHandler . HandleClientRPC ( clientId , stream , channelId ) ;
861- break ;
862- case MLAPIConstants . MLAPI_CUSTOM_MESSAGE :
863- InternalMessageHandler . HandleCustomMessage ( clientId , stream , channelId ) ;
864- break ;
865- }
866861
867- #endregion
868- }
862+ #endregion
869863
870864 NetworkProfiler . EndEvent ( ) ;
871865 }
0 commit comments