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

Method packUpdate

Engine/source/T3D/trigger.cpp:825–865  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

823//--------------------------------------------------------------------------
824
825U32 Trigger::packUpdate(NetConnection* con, U32 mask, BitStream* stream)
826{
827 U32 i;
828 U32 retMask = Parent::packUpdate(con, mask, stream);
829
830 if( stream->writeFlag( mask & TransformMask ) )
831 {
832 stream->writeAffineTransform(mObjToWorld);
833 }
834
835 // Write the polyhedron
836 if( stream->writeFlag( mask & PolyMask ) )
837 {
838 stream->write(mTriggerPolyhedron.mPointList.size());
839 for (i = 0; i < mTriggerPolyhedron.mPointList.size(); i++)
840 mathWrite(*stream, mTriggerPolyhedron.mPointList[i]);
841
842 stream->write(mTriggerPolyhedron.mPlaneList.size());
843 for (i = 0; i < mTriggerPolyhedron.mPlaneList.size(); i++)
844 mathWrite(*stream, mTriggerPolyhedron.mPlaneList[i]);
845
846 stream->write(mTriggerPolyhedron.mEdgeList.size());
847 for (i = 0; i < mTriggerPolyhedron.mEdgeList.size(); i++) {
848 const Polyhedron::Edge& rEdge = mTriggerPolyhedron.mEdgeList[i];
849
850 stream->write(rEdge.face[0]);
851 stream->write(rEdge.face[1]);
852 stream->write(rEdge.vertex[0]);
853 stream->write(rEdge.vertex[1]);
854 }
855 }
856
857 if( stream->writeFlag( mask & EnterCmdMask ) )
858 stream->writeLongString(CMD_SIZE-1, mEnterCommand.c_str());
859 if( stream->writeFlag( mask & LeaveCmdMask ) )
860 stream->writeLongString(CMD_SIZE-1, mLeaveCommand.c_str());
861 if( stream->writeFlag( mask & TickCmdMask ) )
862 stream->writeLongString(CMD_SIZE-1, mTickCommand.c_str());
863
864 return retMask;
865}
866
867void Trigger::unpackUpdate(NetConnection* con, BitStream* stream)
868{

Callers

nothing calls this directly

Calls 7

mathWriteFunction · 0.85
writeAffineTransformMethod · 0.80
writeFlagMethod · 0.45
writeMethod · 0.45
sizeMethod · 0.45
writeLongStringMethod · 0.45
c_strMethod · 0.45

Tested by

no test coverage detected