MCPcopy Create free account
hub / github.com/GarageGames/Torque3D / packUpdate

Method packUpdate

Engine/source/scene/sceneObject.cpp:780–814  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

778//--------------------------------------------------------------------------
779
780U32 SceneObject::packUpdate( NetConnection* conn, U32 mask, BitStream* stream )
781{
782 U32 retMask = Parent::packUpdate( conn, mask, stream );
783
784 if ( stream->writeFlag( mask & FlagMask ) )
785 stream->writeRangedU32( (U32)mObjectFlags, 0, getObjectFlagMax() );
786
787 if ( mask & MountedMask )
788 {
789 if ( mMount.object )
790 {
791 S32 gIndex = conn->getGhostIndex( mMount.object );
792
793 if ( stream->writeFlag( gIndex != -1 ) )
794 {
795 stream->writeFlag( true );
796 stream->writeInt( gIndex, NetConnection::GhostIdBitSize );
797 if ( stream->writeFlag( mMount.node != -1 ) )
798 stream->writeInt( mMount.node, NumMountPointBits );
799 mathWrite( *stream, mMount.xfm );
800 }
801 else
802 // Will have to try again later
803 retMask |= MountedMask;
804 }
805 else
806 // Unmount if this isn't the initial packet
807 if ( stream->writeFlag( !(mask & InitialUpdateMask) ) )
808 stream->writeFlag( false );
809 }
810 else
811 stream->writeFlag( false );
812
813 return retMask;
814}
815
816//-----------------------------------------------------------------------------
817

Callers

nothing calls this directly

Calls 5

mathWriteFunction · 0.85
writeRangedU32Method · 0.80
getGhostIndexMethod · 0.80
writeIntMethod · 0.80
writeFlagMethod · 0.45

Tested by

no test coverage detected