#define LAZY_UPDATE_TIME 3 // Datatable IMPLEMENT_SERVERCLASS_ST_NOBASE(CBaseTeamObjectiveResource, DT_BaseTeamObjectiveResource) SendPropInt( SENDINFO(m_iTimerToShowInHUD), MAX_EDICT_BITS, SPROP_UNSIGNED ), SendPropInt( SENDINFO(m_iStopWatchTimer), MAX_EDICT_BITS, SPROP_UNSIGNED ), SendPropInt( SENDINFO(m_iNumControlPoints), 4, SPROP_UNSIGNED ), SendPropBool( SENDINFO(m_bPlayingMiniRounds) ), SendPropBool( SENDINFO(m_bControlPointsReset) ), SendPropInt( SENDINFO(m_iUpdateCapHudParity), CAPHUD_PARITY_BITS, SPROP_UNSIGNED ), // data variables SendPropArray( SendPropVector( SENDINFO_ARRAY(m_vCPPositions), -1, SPROP_COORD), m_vCPPositions ), SendPropArray3( SENDINFO_ARRAY3(m_bCPIsVisible), SendPropInt( SENDINFO_ARRAY(m_bCPIsVisible), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_flLazyCapPerc), SendPropFloat( SENDINFO_ARRAY(m_flLazyCapPerc) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamIcons), SendPropInt( SENDINFO_ARRAY(m_iTeamIcons), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamOverlays), SendPropInt( SENDINFO_ARRAY(m_iTeamOverlays), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamReqCappers), SendPropInt( SENDINFO_ARRAY(m_iTeamReqCappers), 4, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_flTeamCapTime), SendPropTime( SENDINFO_ARRAY(m_flTeamCapTime) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iPreviousPoints), SendPropInt( SENDINFO_ARRAY(m_iPreviousPoints), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bTeamCanCap), SendPropBool( SENDINFO_ARRAY(m_bTeamCanCap) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamBaseIcons), SendPropInt( SENDINFO_ARRAY(m_iTeamBaseIcons), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_iBaseControlPoints), SendPropInt( SENDINFO_ARRAY(m_iBaseControlPoints), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bInMiniRound), SendPropBool( SENDINFO_ARRAY(m_bInMiniRound) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iWarnOnCap), SendPropInt( SENDINFO_ARRAY(m_iWarnOnCap), 4, SPROP_UNSIGNED ) ), SendPropArray( SendPropStringT( SENDINFO_ARRAY( m_iszWarnSound ) ), m_iszWarnSound ), SendPropArray3( SENDINFO_ARRAY3(m_flPathDistance), SendPropFloat( SENDINFO_ARRAY(m_flPathDistance), 8, 0, 0.0f, 1.0f ) ), SendPropArray3( SENDINFO_ARRAY3(m_iCPGroup), SendPropInt( SENDINFO_ARRAY(m_iCPGroup), 5 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bCPLocked), SendPropBool( SENDINFO_ARRAY(m_bCPLocked) ) ),
SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSaveDateTimes, 3 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSaveDateTimes, 4 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSaveDateTimes, 5 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSaveDateTimes, 6 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSaveDateTimes, 7 ) ), // save player names SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 0 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 1 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 2 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 3 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 4 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 5 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 6 ) ), SendPropStringT( SENDINFO_NETWORKARRAYELEM( m_iszSavePlayerNames, 7 ) ), SendPropArray3( SENDINFO_ARRAY3( m_iSaveMissionsComplete ), SendPropInt( SENDINFO_ARRAY( m_iSaveMissionsComplete ), 8, SPROP_UNSIGNED ) ), SendPropInt( SENDINFO(m_iListType ) ), SendPropInt( SENDINFO(m_iNumMissions ) ), SendPropInt( SENDINFO(m_iNumOverviewMissions ) ), SendPropInt( SENDINFO(m_iNumCampaigns ) ), SendPropInt( SENDINFO(m_iNumSavedCampaigns ) ), SendPropInt( SENDINFO(m_nCampaignIndex) ), END_SEND_TABLE() BEGIN_DATADESC( CASW_Voting_Missions ) DEFINE_ARRAY( m_iszMissionNames, FIELD_STRING, ASW_SAVES_PER_PAGE), DEFINE_ARRAY( m_iszCampaignNames, FIELD_STRING, ASW_CAMPAIGNS_PER_PAGE), DEFINE_ARRAY( m_iszSaveNames, FIELD_STRING, ASW_SAVES_PER_PAGE), DEFINE_ARRAY( m_iszSaveCampaignNames, FIELD_STRING, ASW_SAVES_PER_PAGE), DEFINE_ARRAY( m_iszSaveDateTimes, FIELD_STRING, ASW_SAVES_PER_PAGE), DEFINE_ARRAY( m_iszSavePlayerNames, FIELD_STRING, ASW_SAVES_PER_PAGE),
DEFINE_INPUTFUNC( FIELD_STRING, "SetPoseParameterName", InputSetPoseParameterName ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetPoseValue", InputSetPoseValue ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetInterpolationTime", InputSetInterpolationTime ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetCycleFrequency", InputSetCycleFrequency ), DEFINE_INPUTFUNC( FIELD_INTEGER, "SetFModType", InputSetFModType ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetFModTimeOffset", InputSetFModTimeOffset ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetFModRate", InputSetFModRate ), DEFINE_INPUTFUNC( FIELD_FLOAT, "SetFModAmplitude", InputSetFModAmplitude ), DEFINE_INPUTFUNC( FIELD_FLOAT, "RandomizeFMod", InputRandomizeFMod ), DEFINE_INPUTFUNC( FIELD_VOID, "GetFMod", InputGetFMod ), END_DATADESC() IMPLEMENT_SERVERCLASS_ST(CPoseController, DT_PoseController) SendPropArray3( SENDINFO_ARRAY3(m_hProps), SendPropEHandle( SENDINFO_ARRAY(m_hProps) ) ), SendPropArray3( SENDINFO_ARRAY3(m_chPoseIndex), SendPropInt( SENDINFO_ARRAY(m_chPoseIndex), 5, SPROP_UNSIGNED ) ), // bits sent must be enough to represent MAXSTUDIOPOSEPARAM SendPropBool( SENDINFO(m_bPoseValueParity) ), SendPropFloat( SENDINFO(m_fPoseValue), 11, 0, 0.0f, 1.0f ), SendPropFloat( SENDINFO(m_fInterpolationTime), 11, 0, 0.0f, MAX_POSE_INTERPOLATION_TIME ), SendPropBool( SENDINFO(m_bInterpolationWrap) ), SendPropFloat( SENDINFO(m_fCycleFrequency), 11, 0, -MAX_POSE_CYCLE_FREQUENCY, MAX_POSE_CYCLE_FREQUENCY ), SendPropInt( SENDINFO(m_nFModType), 3, SPROP_UNSIGNED ), SendPropFloat( SENDINFO(m_fFModTimeOffset), 11, 0, -1.0f, 1.0f ), SendPropFloat( SENDINFO(m_fFModRate), 11, 0, -MAX_POSE_FMOD_RATE, MAX_POSE_FMOD_RATE ), SendPropFloat( SENDINFO(m_fFModAmplitude), 11, 0, 0.0f, MAX_POSE_FMOD_AMPLITUDE ), END_SEND_TABLE() void CPoseController::Spawn( void ) { BaseClass::Spawn();
// Purpose: Entity that propagates general data needed by clients for every player. // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "player.h" #include "player_resource.h" #include <coordsize.h> // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" // Datatable IMPLEMENT_SERVERCLASS_ST_NOBASE(CPlayerResource, DT_PlayerResource) // SendPropArray( SendPropString( SENDINFO(m_szName[0]) ), SENDARRAYINFO(m_szName) ), SendPropArray3( SENDINFO_ARRAY3(m_iPing), SendPropInt( SENDINFO_ARRAY(m_iPing), 10, SPROP_UNSIGNED ) ), // SendPropArray( SendPropInt( SENDINFO_ARRAY(m_iPacketloss), 7, SPROP_UNSIGNED ), m_iPacketloss ), SendPropArray3( SENDINFO_ARRAY3(m_iScore), SendPropInt( SENDINFO_ARRAY(m_iScore), 12 ) ), SendPropArray3( SENDINFO_ARRAY3(m_iDeaths), SendPropInt( SENDINFO_ARRAY(m_iDeaths), 12 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bConnected), SendPropInt( SENDINFO_ARRAY(m_bConnected), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeam), SendPropInt( SENDINFO_ARRAY(m_iTeam), 4 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bAlive), SendPropInt( SENDINFO_ARRAY(m_bAlive), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iHealth), SendPropInt( SENDINFO_ARRAY(m_iHealth), 10, SPROP_UNSIGNED ) ), END_SEND_TABLE() BEGIN_DATADESC( CPlayerResource ) // DEFINE_ARRAY( m_iPing, FIELD_INTEGER, MAX_PLAYERS+1 ), // DEFINE_ARRAY( m_iPacketloss, FIELD_INTEGER, MAX_PLAYERS+1 ), // DEFINE_ARRAY( m_iScore, FIELD_INTEGER, MAX_PLAYERS+1 ), // DEFINE_ARRAY( m_iDeaths, FIELD_INTEGER, MAX_PLAYERS+1 ),
#include "team.h" #include <coordsize.h> // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" void SendProxy_String_tToStringPR( const SendProp *pProp, const void *pStruct, const void *pData, DVariant *pOut, int iElement, int objectID ) { string_t *pString = (string_t*)pData; pOut->m_pString = (char*)STRING( *pString ); } // Datatable IMPLEMENT_SERVERCLASS_ST_NOBASE(CPlayerResource, DT_PlayerResource) // SendPropArray( SendPropString( SENDINFO(m_szName[0]) ), SENDARRAYINFO(m_szName) ), SendPropArray3( SENDINFO_ARRAY3(m_iPing), SendPropInt( SENDINFO_ARRAY(m_iPing), 10, SPROP_UNSIGNED ) ), // SendPropArray( SendPropInt( SENDINFO_ARRAY(m_iPacketloss), 7, SPROP_UNSIGNED ), m_iPacketloss ), SendPropArray3( SENDINFO_ARRAY3(m_bConnected), SendPropInt( SENDINFO_ARRAY(m_bConnected), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeam), SendPropInt( SENDINFO_ARRAY(m_iTeam), 3 ) ), SendPropArray3( SENDINFO_ARRAY3(m_nSpecTeam), SendPropInt( SENDINFO_ARRAY(m_nSpecTeam), 3 ) ), //ios SendPropArray3( SENDINFO_ARRAY3(m_RedCards), SendPropInt( SENDINFO_ARRAY(m_RedCards), 4, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_YellowCards), SendPropInt( SENDINFO_ARRAY(m_YellowCards), 4, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_Fouls), SendPropInt( SENDINFO_ARRAY(m_Fouls), 6, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_FoulsSuffered), SendPropInt( SENDINFO_ARRAY(m_FoulsSuffered), 6, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_SlidingTackles), SendPropInt( SENDINFO_ARRAY(m_SlidingTackles), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_SlidingTacklesCompleted), SendPropInt( SENDINFO_ARRAY(m_SlidingTacklesCompleted), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_GoalsConceded), SendPropInt( SENDINFO_ARRAY(m_GoalsConceded), 5, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_Shots), SendPropInt( SENDINFO_ARRAY(m_Shots), 6, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_ShotsOnGoal), SendPropInt( SENDINFO_ARRAY(m_ShotsOnGoal), 6, SPROP_UNSIGNED ) ),
#include "player.h" #include "mathlib/mathlib.h" #include "entitylist.h" #include "SkyCamera.h" #include "playernet_vars.h" #include "fogcontroller.h" #include "tier0/vprof.h" // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" //============================================================================= BEGIN_SEND_TABLE_NOBASE( CPlayerLocalData, DT_Local ) SendPropArray3 (SENDINFO_ARRAY3(m_chAreaBits), SendPropInt(SENDINFO_ARRAY(m_chAreaBits), 8, SPROP_UNSIGNED)), SendPropArray3 (SENDINFO_ARRAY3(m_chAreaPortalBits), SendPropInt(SENDINFO_ARRAY(m_chAreaPortalBits), 8, SPROP_UNSIGNED)), SendPropInt (SENDINFO(m_iHideHUD), HIDEHUD_BITCOUNT, SPROP_UNSIGNED), SendPropFloat (SENDINFO(m_flFOVRate), 0, SPROP_NOSCALE ), SendPropInt (SENDINFO(m_bDucked), 1, SPROP_UNSIGNED ), SendPropInt (SENDINFO(m_bDucking), 1, SPROP_UNSIGNED ), SendPropInt (SENDINFO(m_bInDuckJump), 1, SPROP_UNSIGNED ), SendPropFloat (SENDINFO(m_flDucktime), 12, SPROP_ROUNDDOWN|SPROP_CHANGES_OFTEN, 0.0f, 2048.0f ), SendPropFloat (SENDINFO(m_flDuckJumpTime), 12, SPROP_ROUNDDOWN, 0.0f, 2048.0f ), SendPropFloat (SENDINFO(m_flJumpTime), 12, SPROP_ROUNDDOWN, 0.0f, 2048.0f ), #if PREDICTION_ERROR_CHECK_LEVEL > 1 SendPropFloat (SENDINFO(m_flFallVelocity), 32, SPROP_NOSCALE ), SendPropFloat ( SENDINFO_VECTORELEM(m_vecPunchAngle, 0), 32, SPROP_NOSCALE|SPROP_CHANGES_OFTEN ), SendPropFloat ( SENDINFO_VECTORELEM(m_vecPunchAngle, 1), 32, SPROP_NOSCALE|SPROP_CHANGES_OFTEN ),
#include "cbase.h" #include "cs_player.h" #include "player_resource.h" #include "cs_simple_hostage.h" #include "cs_player_resource.h" #include "weapon_c4.h" #include <coordsize.h> //#include "cs_bot_manager.h" #include "cs_gamerules.h" // Datatable IMPLEMENT_SERVERCLASS_ST(CCSPlayerResource, DT_CSPlayerResource) SendPropInt( SENDINFO( m_iPlayerC4 ), 8, SPROP_UNSIGNED ), SendPropInt( SENDINFO( m_iPlayerVIP ), 8, SPROP_UNSIGNED ), SendPropVector( SENDINFO(m_vecC4), -1, SPROP_COORD), SendPropArray3( SENDINFO_ARRAY3(m_bHostageAlive), SendPropInt( SENDINFO_ARRAY(m_bHostageAlive), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_isHostageFollowingSomeone), SendPropInt( SENDINFO_ARRAY(m_isHostageFollowingSomeone), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iHostageEntityIDs), SendPropInt( SENDINFO_ARRAY(m_iHostageEntityIDs), -1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iHostageY), SendPropInt( SENDINFO_ARRAY(m_iHostageY), COORD_INTEGER_BITS+1, 0 ) ), SendPropArray3( SENDINFO_ARRAY3(m_iHostageX), SendPropInt( SENDINFO_ARRAY(m_iHostageX), COORD_INTEGER_BITS+1, 0 ) ), SendPropArray3( SENDINFO_ARRAY3(m_iHostageZ), SendPropInt( SENDINFO_ARRAY(m_iHostageZ), COORD_INTEGER_BITS+1, 0 ) ), SendPropVector( SENDINFO(m_bombsiteCenterA), -1, SPROP_COORD), SendPropVector( SENDINFO(m_bombsiteCenterB), -1, SPROP_COORD), SendPropArray3( SENDINFO_ARRAY3(m_hostageRescueX), SendPropInt( SENDINFO_ARRAY(m_hostageRescueX), COORD_INTEGER_BITS+1, 0 ) ), SendPropArray3( SENDINFO_ARRAY3(m_hostageRescueY), SendPropInt( SENDINFO_ARRAY(m_hostageRescueY), COORD_INTEGER_BITS+1, 0 ) ), SendPropArray3( SENDINFO_ARRAY3(m_hostageRescueZ), SendPropInt( SENDINFO_ARRAY(m_hostageRescueZ), COORD_INTEGER_BITS+1, 0 ) ), SendPropBool( SENDINFO( m_bBombSpotted ) ), SendPropArray3( SENDINFO_ARRAY3(m_bPlayerSpotted), SendPropInt( SENDINFO_ARRAY(m_bPlayerSpotted), 1, SPROP_UNSIGNED ) ), END_SEND_TABLE() BEGIN_DATADESC( CCSPlayerResource )
RecvPropArray3(RECVINFO_ARRAY(m_iZoneTicks), RecvPropInt(RECVINFO(m_iZoneTicks[0]), SPROP_UNSIGNED)), //Velocity RecvPropArray3(RECVINFO_ARRAY(m_flZoneEnterSpeed3D), RecvPropFloat(RECVINFO(m_flZoneEnterSpeed3D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneEnterSpeed2D), RecvPropFloat(RECVINFO(m_flZoneEnterSpeed2D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneExitSpeed3D), RecvPropFloat(RECVINFO(m_flZoneExitSpeed3D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneExitSpeed2D), RecvPropFloat(RECVINFO(m_flZoneExitSpeed2D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneVelocityAvg3D), RecvPropFloat(RECVINFO(m_flZoneVelocityAvg3D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneVelocityAvg2D), RecvPropFloat(RECVINFO(m_flZoneVelocityAvg2D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneVelocityMax3D), RecvPropFloat(RECVINFO(m_flZoneVelocityMax3D[0]))), RecvPropArray3(RECVINFO_ARRAY(m_flZoneVelocityMax2D), RecvPropFloat(RECVINFO(m_flZoneVelocityMax2D[0]))), END_RECV_TABLE(); #else BEGIN_SEND_TABLE_NOBASE(CMomRunStats, DT_MomRunStats) SendPropInt(SENDINFO(m_iTotalZones), 7, SPROP_UNSIGNED), //Keypress SendPropArray3(SENDINFO_ARRAY3(m_iZoneJumps), SendPropInt(SENDINFO_ARRAY(m_iZoneJumps), -1, SPROP_UNSIGNED | SPROP_CHANGES_OFTEN)), SendPropArray3(SENDINFO_ARRAY3(m_iZoneStrafes), SendPropInt(SENDINFO_ARRAY(m_iZoneStrafes), -1, SPROP_UNSIGNED | SPROP_CHANGES_OFTEN)), //Sync SendPropArray3(SENDINFO_ARRAY3(m_flZoneStrafeSyncAvg), SendPropFloat(SENDINFO_ARRAY(m_flZoneStrafeSyncAvg), -1, SPROP_CHANGES_OFTEN)), SendPropArray3(SENDINFO_ARRAY3(m_flZoneStrafeSync2Avg), SendPropFloat(SENDINFO_ARRAY(m_flZoneStrafeSync2Avg), -1, SPROP_CHANGES_OFTEN)), //Time SendPropArray3(SENDINFO_ARRAY3(m_iZoneEnterTick), SendPropInt(SENDINFO_ARRAY(m_iZoneEnterTick), -1, SPROP_UNSIGNED)), SendPropArray3(SENDINFO_ARRAY3(m_iZoneTicks), SendPropInt(SENDINFO_ARRAY(m_iZoneTicks), -1, SPROP_UNSIGNED)), //Velocity SendPropArray3(SENDINFO_ARRAY3(m_flZoneEnterSpeed3D), SendPropFloat(SENDINFO_ARRAY(m_flZoneEnterSpeed3D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneEnterSpeed2D), SendPropFloat(SENDINFO_ARRAY(m_flZoneEnterSpeed2D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneExitSpeed3D), SendPropFloat(SENDINFO_ARRAY(m_flZoneExitSpeed3D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneExitSpeed2D), SendPropFloat(SENDINFO_ARRAY(m_flZoneExitSpeed2D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneVelocityAvg3D), SendPropFloat(SENDINFO_ARRAY(m_flZoneVelocityAvg3D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneVelocityAvg2D), SendPropFloat(SENDINFO_ARRAY(m_flZoneVelocityAvg2D))), SendPropArray3(SENDINFO_ARRAY3(m_flZoneVelocityMax3D), SendPropFloat(SENDINFO_ARRAY(m_flZoneVelocityMax3D))),
#include "gameinterface.h" #ifdef TF_DLL #include "tf/tf_gamerules.h" #endif // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" #define MAX_VOTER_HISTORY 64 // Datatable IMPLEMENT_SERVERCLASS_ST( CVoteController, DT_VoteController ) SendPropInt( SENDINFO( m_iActiveIssueIndex ) ), SendPropInt( SENDINFO( m_iOnlyTeamToVote ) ), SendPropArray3( SENDINFO_ARRAY3( m_nVoteOptionCount ), SendPropInt( SENDINFO_ARRAY( m_nVoteOptionCount ), 8, SPROP_UNSIGNED ) ), SendPropInt( SENDINFO( m_nPotentialVotes ) ), SendPropBool( SENDINFO( m_bIsYesNoVote ) ) END_SEND_TABLE() BEGIN_DATADESC( CVoteController ) DEFINE_THINKFUNC( VoteControllerThink ), END_DATADESC() LINK_ENTITY_TO_CLASS( vote_controller, CVoteController ); CVoteController *g_voteController = NULL; ConVar sv_vote_timer_duration("sv_vote_timer_duration", "15", FCVAR_DEVELOPMENTONLY, "How long to allow voting on an issue"); ConVar sv_vote_command_delay("sv_vote_command_delay", "2", FCVAR_DEVELOPMENTONLY, "How long after a vote passes until the action happens", false, 0, true, 4.5); ConVar sv_allow_votes("sv_allow_votes", "1", 0, "Allow voting?");
LINK_ENTITY_TO_CLASS( asw_campaign_save, CASW_Campaign_Save ); ConVar asw_custom_skill_points( "asw_custom_skill_points", "0", FCVAR_ARCHIVE, "If set, marines will start with no skill points and will spend them as they progress through the campaign. 2: give at mission start" ); ConVar sk_asw_points_per_mission("sk_asw_points_per_mission", "2", FCVAR_CHEAT, "Number of custom skill points to award each mission."); void ASWSendProxy_String_tToString( const SendProp *pProp, const void *pStruct, const void *pData, DVariant *pOut, int iElement, int objectID ) { string_t *pString = (string_t*)pData; pOut->m_pString = (char*)STRING( *pString ); } IMPLEMENT_SERVERCLASS_ST(CASW_Campaign_Save, DT_ASW_Campaign_Save) SendPropString(SENDINFO(m_CampaignName)), SendPropInt(SENDINFO(m_iCurrentPosition)), SendPropInt(SENDINFO(m_iNumMissionsComplete)), SendPropArray3( SENDINFO_ARRAY3( m_MissionComplete ), SendPropInt( SENDINFO_ARRAY( m_MissionComplete ), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3( m_NumRetries ), SendPropInt( SENDINFO_ARRAY( m_NumRetries ), 9, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3( m_bMarineWounded ), SendPropBool( SENDINFO_ARRAY( m_bMarineWounded ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_bMarineDead ), SendPropBool( SENDINFO_ARRAY( m_bMarineDead ) ) ), SendPropArray( SendPropString( SENDINFO_ARRAY( m_MissionsCompleteNames ), 0, ASWSendProxy_String_tToString ), m_MissionsCompleteNames ), SendPropArray( SendPropString( SENDINFO_ARRAY( m_Medals ), 0, ASWSendProxy_String_tToString ), m_Medals ), SendPropBool(SENDINFO(m_bMultiplayerGame)), SendPropString(SENDINFO(m_DateTime)), SendPropArray3( SENDINFO_ARRAY3( m_NumVotes ), SendPropInt( SENDINFO_ARRAY( m_NumVotes ), 8, SPROP_UNSIGNED ) ), SendPropFloat( SENDINFO(m_fVoteEndTime) ), SendPropBool( SENDINFO( m_bFixedSkillPoints ) ), END_SEND_TABLE()
// Purpose: Bliink CPlayerResource // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "bliink_player.h" #include "player_resource.h" #include "bliink_player_resource.h" #include <coordsize.h> // memdbgon must be the last include file in a .cpp file!!! #include "tier0/memdbgon.h" // Datatable IMPLEMENT_SERVERCLASS_ST(CBliinkPlayerResource, DT_BliinkPlayerResource) SendPropArray3( SENDINFO_ARRAY3(m_iPlayerState), SendPropInt( SENDINFO_ARRAY(m_iPlayerState), 0, SPROP_NOSCALE ) ), END_SEND_TABLE() BEGIN_DATADESC( CBliinkPlayerResource ) END_DATADESC() LINK_ENTITY_TO_CLASS( bliink_player_manager, CBliinkPlayerResource ); CBliinkPlayerResource::CBliinkPlayerResource( void ) { } //----------------------------------------------------------------------------- // Purpose: //-----------------------------------------------------------------------------
DEFINE_INPUTFUNC( FIELD_VECTOR, "Shatter", InputShatter ), // DEFINE_FIELD( m_ForceUpdateClientData, CBitVec < MAX_PLAYERS > ), // No need to save/restore this, it's just a temporary flag field END_DATADESC() IMPLEMENT_SERVERCLASS_ST(CBreakableSurface, DT_BreakableSurface) SendPropInt(SENDINFO(m_nNumWide), 8, SPROP_UNSIGNED), SendPropInt(SENDINFO(m_nNumHigh), 8, SPROP_UNSIGNED), SendPropFloat(SENDINFO(m_flPanelWidth), 0, SPROP_NOSCALE), SendPropFloat(SENDINFO(m_flPanelHeight), 0, SPROP_NOSCALE), SendPropVector(SENDINFO(m_vNormal), -1, SPROP_COORD), SendPropVector(SENDINFO(m_vCorner), -1, SPROP_COORD), SendPropInt(SENDINFO(m_bIsBroken), 1, SPROP_UNSIGNED), SendPropInt(SENDINFO(m_nSurfaceType), 2, SPROP_UNSIGNED), SendPropArray3(SENDINFO_ARRAY3(m_RawPanelBitVec), SendPropInt( SENDINFO_ARRAY( m_RawPanelBitVec ), 1, SPROP_UNSIGNED ) ), END_SEND_TABLE() //----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void CBreakableSurface::Precache(void) { UTIL_PrecacheOther( "window_pane" ); // Load the edge types and styles for the specific surface type if (m_nSurfaceType == SHATTERSURFACE_TILE) { PrecacheMaterial( "models/brokentile/tilebroken_03a" ); PrecacheMaterial( "models/brokentile/tilebroken_03b" );
extern void SendProxy_Angles( const SendProp *pProp, const void *pStruct, const void *pData, DVariant *pOut, int iElement, int objectID ); // Stripped down CBaseEntity send table IMPLEMENT_SERVERCLASS_ST_NOBASE(CParticleSystem, DT_ParticleSystem) SendPropVector (SENDINFO(m_vecOrigin), -1, SPROP_COORD|SPROP_CHANGES_OFTEN, 0.0f, HIGH_DEFAULT, SendProxy_Origin ), SendPropEHandle (SENDINFO(m_hOwnerEntity)), SendPropEHandle (SENDINFO_NAME(m_hMoveParent, moveparent)), SendPropInt (SENDINFO(m_iParentAttachment), NUM_PARENTATTACHMENT_BITS, SPROP_UNSIGNED), SendPropQAngles (SENDINFO(m_angRotation), 13, SPROP_CHANGES_OFTEN, SendProxy_Angles ), SendPropInt( SENDINFO(m_iEffectIndex), MAX_PARTICLESYSTEMS_STRING_BITS, SPROP_UNSIGNED ), SendPropBool( SENDINFO(m_bActive) ), SendPropFloat( SENDINFO(m_flStartTime) ), SendPropArray3( SENDINFO_ARRAY3(m_hControlPointEnts), SendPropEHandle( SENDINFO_ARRAY(m_hControlPointEnts) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iControlPointParents), SendPropInt( SENDINFO_ARRAY(m_iControlPointParents), 3, SPROP_UNSIGNED ) ), END_SEND_TABLE() BEGIN_DATADESC( CParticleSystem ) DEFINE_KEYFIELD( m_bStartActive, FIELD_BOOLEAN, "start_active" ), DEFINE_FIELD( m_bActive, FIELD_BOOLEAN ), DEFINE_FIELD( m_flStartTime, FIELD_TIME ), DEFINE_KEYFIELD( m_iszEffectName, FIELD_STRING, "effect_name" ), //DEFINE_FIELD( m_iEffectIndex, FIELD_INTEGER ), // Don't save. Refind after loading. DEFINE_KEYFIELD( m_iszControlPointNames[0], FIELD_STRING, "cpoint1" ), DEFINE_KEYFIELD( m_iszControlPointNames[1], FIELD_STRING, "cpoint2" ), DEFINE_KEYFIELD( m_iszControlPointNames[2], FIELD_STRING, "cpoint3" ), DEFINE_KEYFIELD( m_iszControlPointNames[3], FIELD_STRING, "cpoint4" ), DEFINE_KEYFIELD( m_iszControlPointNames[4], FIELD_STRING, "cpoint5" ), DEFINE_KEYFIELD( m_iszControlPointNames[5], FIELD_STRING, "cpoint6" ),
#define LAZY_UPDATE_TIME 3 // Datatable IMPLEMENT_SERVERCLASS_ST_NOBASE(CBaseTeamObjectiveResource, DT_BaseTeamObjectiveResource) SendPropInt( SENDINFO(m_iTimerToShowInHUD), MAX_EDICT_BITS, SPROP_UNSIGNED ), SendPropInt( SENDINFO(m_iNumControlPoints), 4, SPROP_UNSIGNED ), SendPropBool( SENDINFO(m_bPlayingMiniRounds) ), SendPropBool( SENDINFO(m_bControlPointsReset) ), SendPropInt( SENDINFO(m_iUpdateCapHudParity), CAPHUD_PARITY_BITS, SPROP_UNSIGNED ), // data variables SendPropArray( SendPropVector( SENDINFO_ARRAY(m_vCPPositions), -1, SPROP_COORD), m_vCPPositions ), SendPropArray3( SENDINFO_ARRAY3(m_bCPIsVisible), SendPropInt( SENDINFO_ARRAY(m_bCPIsVisible), 1, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_flLazyCapPerc), SendPropFloat( SENDINFO_ARRAY(m_flLazyCapPerc) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamIcons), SendPropInt( SENDINFO_ARRAY(m_iTeamIcons), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamOverlays), SendPropInt( SENDINFO_ARRAY(m_iTeamOverlays), 8, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamReqCappers), SendPropInt( SENDINFO_ARRAY(m_iTeamReqCappers), 4, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3(m_flTeamCapTime), SendPropTime( SENDINFO_ARRAY(m_flTeamCapTime) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iPreviousPoints), SendPropInt( SENDINFO_ARRAY(m_iPreviousPoints), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bTeamCanCap), SendPropBool( SENDINFO_ARRAY(m_bTeamCanCap) ) ), SendPropArray3( SENDINFO_ARRAY3(m_iTeamBaseIcons), SendPropInt( SENDINFO_ARRAY(m_iTeamBaseIcons), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_iBaseControlPoints), SendPropInt( SENDINFO_ARRAY(m_iBaseControlPoints), 8 ) ), SendPropArray3( SENDINFO_ARRAY3(m_bInMiniRound), SendPropBool( SENDINFO_ARRAY(m_bInMiniRound) ) ), SendPropArray3( SENDINFO_ARRAY3(m_bWarnOnCap), SendPropBool( SENDINFO_ARRAY(m_bWarnOnCap) ) ), SendPropArray( SendPropStringT( SENDINFO_ARRAY( m_iszWarnSound ) ), m_iszWarnSound ), // state variables SendPropArray3( SENDINFO_ARRAY3(m_iNumTeamMembers), SendPropInt( SENDINFO_ARRAY(m_iNumTeamMembers), 4, SPROP_UNSIGNED ) ),
#ifdef GAME_DLL SendPropInt( SENDINFO( m_iLightCount ), DEFLIGHTCONTAINER_MAXLIGHT_BITS, SPROP_UNSIGNED ), SendPropArray3( SENDINFO_ARRAY3( m_pos ), SendPropVector( SENDINFO_ARRAY( m_pos ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_ang ), SendPropQAngles( SENDINFO_ARRAY( m_ang ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_col_diff ), SendPropVector( SENDINFO_ARRAY( m_col_diff ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_col_amb ), SendPropVector( SENDINFO_ARRAY( m_col_amb ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_style_amt_speed_smooth ), SendPropVector( SENDINFO_ARRAY( m_style_amt_speed_smooth ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_ranges_vdist_vrange_sdist ), SendPropVector( SENDINFO_ARRAY( m_ranges_vdist_vrange_sdist ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_style_ran_radius_power ), SendPropVector( SENDINFO_ARRAY( m_style_ran_radius_power ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_ranges_srange_cinner_couter ), SendPropVector( SENDINFO_ARRAY( m_ranges_srange_cinner_couter ) ) ), SendPropArray3( SENDINFO_ARRAY3( m_type_flags_cookieindex_seed ), SendPropInt( SENDINFO_ARRAY( m_type_flags_cookieindex_seed ), (DEFLIGHT_SEED_MAX_BITS + MAX_COOKIE_TEXTURES_BITS + DEFLIGHT_FLAGS_MAX_SHARED_BITS + MAX_DEFLIGHTTYPE_BITS), SPROP_UNSIGNED ) ), #else RecvPropInt( RECVINFO( m_iLightCount ) ), RecvPropArray3( RECVINFO_ARRAY( m_pos ), RecvPropVector( RECVINFO( m_pos[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_ang ), RecvPropQAngles( RECVINFO( m_ang[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_col_diff ), RecvPropVector( RECVINFO( m_col_diff[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_col_amb ), RecvPropVector( RECVINFO( m_col_amb[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_style_amt_speed_smooth ), RecvPropVector( RECVINFO( m_style_amt_speed_smooth[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_ranges_vdist_vrange_sdist ), RecvPropVector( RECVINFO( m_ranges_vdist_vrange_sdist[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_style_ran_radius_power ), RecvPropVector( RECVINFO( m_style_ran_radius_power[0] ))), RecvPropArray3( RECVINFO_ARRAY( m_ranges_srange_cinner_couter ), RecvPropVector( RECVINFO( m_ranges_srange_cinner_couter[0] ))),
// // Purpose: TF's custom CPlayerResource // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "tf_player.h" #include "player_resource.h" #include "tf_player_resource.h" #include "tf_gamestats.h" #include "tf_gamerules.h" #include <coordsize.h> // Datatable IMPLEMENT_SERVERCLASS_ST( CTFPlayerResource, DT_TFPlayerResource ) SendPropArray3( SENDINFO_ARRAY3( m_iTotalScore ), SendPropInt( SENDINFO_ARRAY( m_iTotalScore ), 12, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3( m_iMaxHealth ), SendPropInt( SENDINFO_ARRAY( m_iMaxHealth ), 10, SPROP_UNSIGNED ) ), SendPropArray3( SENDINFO_ARRAY3( m_iPlayerClass ), SendPropInt( SENDINFO_ARRAY( m_iPlayerClass ), 5, SPROP_UNSIGNED ) ), SendPropArray3(SENDINFO_ARRAY3(m_iColors), SendPropVector(SENDINFO_ARRAY3(m_iColors), 12, SPROP_COORD)), SendPropArray3( SENDINFO_ARRAY3( m_iKillstreak ), SendPropInt( SENDINFO_ARRAY( m_iKillstreak ), 10, SPROP_UNSIGNED ) ), END_SEND_TABLE() LINK_ENTITY_TO_CLASS( tf_player_manager, CTFPlayerResource ); CTFPlayerResource::CTFPlayerResource( void ) { } //----------------------------------------------------------------------------- // Purpose: