//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "cstrikespectatorgui.h" #include "hud.h" #include "cs_shareddefs.h" #include #include #include #include "cs_gamerules.h" #include "c_team.h" #include "c_cs_playerresource.h" #include "c_plantedc4.h" #include "c_cs_hostage.h" #include "vtf/vtf.h" #include "clientmode.h" #include #include "voice_status.h" #include "hud_radar.h" using namespace vgui; DECLARE_HUDELEMENT( CCSMapOverview ) extern ConVar overview_health; extern ConVar overview_names; extern ConVar overview_tracks; extern ConVar overview_locked; extern ConVar overview_alpha; extern ConVar cl_radaralpha; ConVar cl_radar_locked( "cl_radar_locked", "0", FCVAR_ARCHIVE, "Lock the angle of the radar display?" ); void PreferredOverviewModeChanged( IConVar *pConVar, const char *oldString, float flOldValue ) { ConVarRef var( pConVar ); char cmd[32]; V_snprintf( cmd, sizeof( cmd ), "overview_mode %d\n", var.GetInt() ); engine->ClientCmd( cmd ); } ConVar overview_preferred_mode( "overview_preferred_mode", "1", FCVAR_ARCHIVE, "Preferred overview mode", PreferredOverviewModeChanged ); ConVar overview_preferred_view_size( "overview_preferred_view_size", "600", FCVAR_ARCHIVE, "Preferred overview view size" ); #define HOSTAGE_RESCUE_DURATION (2.5f) #define BOMB_FADE_DURATION (2.5f) #define DEATH_ICON_FADE (7.5f) #define DEATH_ICON_DURATION (10.0f) #define LAST_SEEN_ICON_DURATION (4.0f) #define DIFFERENCE_THRESHOLD (200.0f) // To make your own green radar file from the map overview file, turn this on, and include vtf.lib #define no_GENERATE_RADAR_FILE //----------------------------------------------------------------------------- // Purpose: Constructor //----------------------------------------------------------------------------- CCSSpectatorGUI::CCSSpectatorGUI(IViewPort *pViewPort) : CSpectatorGUI(pViewPort) { m_pCTLabel = NULL; m_pCTScore = NULL; m_pTerLabel = NULL; m_pTerScore = NULL; m_pTimer = NULL; m_pTimerLabel = NULL; m_pDivider = NULL; m_pExtraInfo = NULL; m_modifiedWidths = false; m_scoreWidth = 0; m_extraInfoWidth = 0; } //----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void CCSSpectatorGUI::ApplySchemeSettings(vgui::IScheme *pScheme) { BaseClass::ApplySchemeSettings( pScheme ); // Grab some control pointers m_pCTLabel = dynamic_cast