#define ORDER_BITS 4 #define WEIGHT_BITS 8 BEGIN_SEND_TABLE_NOBASE(CAnimationLayer, DT_Animationlayer) SendPropInt (SENDINFO(m_nSequence), ANIMATION_SEQUENCE_BITS,SPROP_UNSIGNED), SendPropFloat (SENDINFO(m_flCycle), ANIMATION_CYCLE_BITS, SPROP_ROUNDDOWN, 0.0f, 1.0f), SendPropFloat (SENDINFO(m_flPrevCycle), ANIMATION_CYCLE_BITS, SPROP_ROUNDDOWN, 0.0f, 1.0f), SendPropFloat (SENDINFO(m_flWeight), WEIGHT_BITS, 0, 0.0f, 1.0f), SendPropInt (SENDINFO(m_nOrder), ORDER_BITS, SPROP_UNSIGNED), END_SEND_TABLE() BEGIN_SEND_TABLE_NOBASE( CBaseAnimatingOverlay, DT_OverlayVars ) SendPropUtlVector( SENDINFO_UTLVECTOR( m_AnimOverlay ), CBaseAnimatingOverlay::MAX_OVERLAYS, // max elements SendPropDataTable( NULL, 0, &REFERENCE_SEND_TABLE( DT_Animationlayer ) ) ) END_SEND_TABLE() IMPLEMENT_SERVERCLASS_ST( CBaseAnimatingOverlay, DT_BaseAnimatingOverlay ) // These are in their own separate data table so CCSPlayer can exclude all of these. SendPropDataTable( "overlay_vars", 0, &REFERENCE_SEND_TABLE( DT_OverlayVars ) ) END_SEND_TABLE() CAnimationLayer::CAnimationLayer( ) {
END_SEND_TABLE() BEGIN_SEND_TABLE_NOBASE(DTTestServerSub, DT_DTTestSub) // - Auto type conversions (receiving an array of floats into an array of ints). SendPropArray( SendPropFloat(SENDINFO_NOCHECK(m_FloatArray[0]), 0, SPROP_NOSCALE), m_FloatArray), SendPropUtlVectorDataTable( m_UtlVectorStruct, MAX_STRUCTARRAY_ELEMENTS, DT_TestStruct ), SendPropArray( SendPropString(SENDINFO_NOCHECK(m_Strings[0]), 0, SendProxy_DTTestServerSubString), m_Strings ), SendPropUtlVector( SENDINFO_UTLVECTOR( m_UtlVectorChar ), MAX_CHARARRAY_ELEMENTS, SendPropInt( NULL, 0, sizeof( char ), 0 ) ), SendPropUtlVector( SENDINFO_UTLVECTOR( m_UtlVectorFloat ), MAX_FLOATARRAY_ELEMENTS, // max elements SendPropFloat( NULL, 0, 0, 0, SPROP_NOSCALE ) ) END_SEND_TABLE() BEGIN_SEND_TABLE_NOBASE(DTTestSub2Sub, DT_DTTestSub2Sub) SendPropInt( SENDINFO_NOCHECK( m_Int2 ), 32 ), END_SEND_TABLE()