You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
2.6 KiB
86 lines
2.6 KiB
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================//
|
|
|
|
#ifndef SFHUDVOTEPANEL_H
|
|
#define SFHUDVOTEPANEL_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif //_WIN32
|
|
|
|
#include "sfhudflashinterface.h"
|
|
|
|
#define VOTE_PANEL_NAME_TRUNCATE_AT 16 // number of name character displayed before truncation
|
|
|
|
class SFHudVotePanel: public SFHudFlashInterface
|
|
{
|
|
public:
|
|
explicit SFHudVotePanel( const char *value );
|
|
virtual void ProcessInput( void );
|
|
virtual void LevelInit( void );
|
|
virtual void LevelShutdown( void );
|
|
virtual void FlashReady( void );
|
|
virtual bool PreUnloadFlash( void );
|
|
virtual void FireGameEvent( IGameEvent * event );
|
|
virtual void SetActive( bool bActive );
|
|
|
|
//void TimerCallback( SCALEFORM_CALLBACK_ARGS_DECL );
|
|
void VoteYes( SCALEFORM_CALLBACK_ARGS_DECL );
|
|
void VoteNo( SCALEFORM_CALLBACK_ARGS_DECL );
|
|
void UpdateYesNoButtonText( bool bShowOtherTeam = false );
|
|
|
|
void Hide( void );
|
|
virtual bool ShouldDraw( void );
|
|
|
|
bool MsgFunc_CallVoteFailed( const CCSUsrMsg_CallVoteFailed &msg );
|
|
bool MsgFunc_VoteStart( const CCSUsrMsg_VoteStart &msg );
|
|
bool MsgFunc_VotePass( const CCSUsrMsg_VotePass &msg );
|
|
bool MsgFunc_VoteFailed( const CCSUsrMsg_VoteFailed &msg );
|
|
bool MsgFunc_VoteSetup( const CCSUsrMsg_VoteSetup &msg );
|
|
|
|
void ShowVoteUI( wchar_t* headerText, wchar_t* voteText, bool bShowingOtherTeam = false );
|
|
|
|
void OnThink( void );
|
|
|
|
CUserMessageBinder m_UMCMsgCallVoteFailed;
|
|
CUserMessageBinder m_UMCMsgVoteStart;
|
|
CUserMessageBinder m_UMCMsgVotePass;
|
|
CUserMessageBinder m_UMCMsgVoteFailed;
|
|
CUserMessageBinder m_UMCMsgVoteSetup;
|
|
|
|
private:
|
|
void SetVoteActive( bool bActive );
|
|
|
|
SFVALUE m_hVoteButtonBG;
|
|
ISFTextObject* m_hVoteLocalCast;
|
|
ISFTextObject* m_option1Text;
|
|
ISFTextObject* m_option2Text;
|
|
ISFTextObject* m_option1CountText;
|
|
ISFTextObject* m_option2CountText;
|
|
|
|
CUtlStringList m_VoteSetupIssues;
|
|
CUtlStringList m_VoteSetupMapCycle;
|
|
CUtlStringList m_VoteSetupChoices;
|
|
|
|
bool m_bVoteActive;
|
|
float m_flVoteResultCycleTime; // what time will we cycle to the result
|
|
float m_flHideTime; // what time will we hide
|
|
bool m_bVotePassed; // what mode are we going to cycle to
|
|
int m_nVoteOptionCount[MAX_VOTE_OPTIONS]; // Vote options counter
|
|
int m_nPotentialVotes; // If set, draw a line at this point to show the required bar length
|
|
bool m_bIsYesNoVote;
|
|
int m_nVoteChoicesCount;
|
|
bool m_bPlayerVoted;
|
|
int m_bPlayerLocalVote;
|
|
float m_flPostVotedHideTime;
|
|
bool m_bVisible;
|
|
bool m_bHasFocus;
|
|
|
|
int m_nVoteYes;
|
|
int m_nVoteNo;
|
|
};
|
|
|
|
#endif // SFHUDVOTEPANEL_H
|