//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: Client VoteController // // $NoKeywords: $ //=============================================================================// #ifndef C_VoteController_H #define C_VoteController_H #ifdef _WIN32 #pragma once #endif #include "GameEventListener.h" #include "shareddefs.h" class C_VoteController : public C_BaseEntity, public CGameEventListener { DECLARE_CLASS(C_VoteController, C_BaseEntity); public: DECLARE_CLIENTCLASS(); C_VoteController(); virtual ~C_VoteController(); virtual void Spawn(void); virtual void ClientThink(void); static void RecvProxy_VoteType(const CRecvProxyData *pData, void *pStruct, void *pOut); static void RecvProxy_VoteOption(const CRecvProxyData *pData, void *pStruct, void *pOut); void FireGameEvent(IGameEvent *event); protected: void ResetData(); int m_iActiveIssueIndex; int m_iOnlyTeamToVote; int m_nVoteOptionCount[MAX_VOTE_OPTIONS]; int m_iVoteChoiceIndex; int m_nPotentialVotes; bool m_bVotesDirty; // Received a vote, so remember to tell the Hud bool m_bTypeDirty; // Vote type changed, so show or hide the Hud bool m_bIsYesNoVote; }; #endif // C_VoteController_H