aboutsummaryrefslogtreecommitdiff
path: root/mp/src/game/client/hl2/clientmode_hlnormal.cpp
diff options
context:
space:
mode:
authorJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
committerJoe Ludwig <[email protected]>2013-06-26 15:22:04 -0700
commit39ed87570bdb2f86969d4be821c94b722dc71179 (patch)
treeabc53757f75f40c80278e87650ea92808274aa59 /mp/src/game/client/hl2/clientmode_hlnormal.cpp
downloadsource-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.tar.xz
source-sdk-2013-39ed87570bdb2f86969d4be821c94b722dc71179.zip
First version of the SOurce SDK 2013
Diffstat (limited to 'mp/src/game/client/hl2/clientmode_hlnormal.cpp')
-rw-r--r--mp/src/game/client/hl2/clientmode_hlnormal.cpp99
1 files changed, 99 insertions, 0 deletions
diff --git a/mp/src/game/client/hl2/clientmode_hlnormal.cpp b/mp/src/game/client/hl2/clientmode_hlnormal.cpp
new file mode 100644
index 00000000..e9eddacf
--- /dev/null
+++ b/mp/src/game/client/hl2/clientmode_hlnormal.cpp
@@ -0,0 +1,99 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose: Draws the normal TF2 or HL2 HUD.
+//
+//=============================================================================
+#include "cbase.h"
+#include "clientmode_hlnormal.h"
+#include "vgui_int.h"
+#include "hud.h"
+#include <vgui/IInput.h>
+#include <vgui/IPanel.h>
+#include <vgui/ISurface.h>
+#include <vgui_controls/AnimationController.h>
+#include "iinput.h"
+#include "ienginevgui.h"
+
+// memdbgon must be the last include file in a .cpp file!!!
+#include "tier0/memdbgon.h"
+
+extern bool g_bRollingCredits;
+
+ConVar fov_desired( "fov_desired", "75", FCVAR_ARCHIVE | FCVAR_USERINFO, "Sets the base field-of-view.", true, 75.0, true, 90.0 );
+
+//-----------------------------------------------------------------------------
+// Globals
+//-----------------------------------------------------------------------------
+vgui::HScheme g_hVGuiCombineScheme = 0;
+
+
+// Instance the singleton and expose the interface to it.
+IClientMode *GetClientModeNormal()
+{
+ static ClientModeHLNormal g_ClientModeNormal;
+ return &g_ClientModeNormal;
+}
+
+
+//-----------------------------------------------------------------------------
+// Purpose: this is the viewport that contains all the hud elements
+//-----------------------------------------------------------------------------
+class CHudViewport : public CBaseViewport
+{
+private:
+ DECLARE_CLASS_SIMPLE( CHudViewport, CBaseViewport );
+
+protected:
+ virtual void ApplySchemeSettings( vgui::IScheme *pScheme )
+ {
+ BaseClass::ApplySchemeSettings( pScheme );
+
+ gHUD.InitColors( pScheme );
+
+ SetPaintBackgroundEnabled( false );
+ }
+
+ virtual void CreateDefaultPanels( void ) { /* don't create any panels yet*/ };
+};
+
+
+//-----------------------------------------------------------------------------
+// ClientModeHLNormal implementation
+//-----------------------------------------------------------------------------
+ClientModeHLNormal::ClientModeHLNormal()
+{
+ m_pViewport = new CHudViewport();
+ m_pViewport->Start( gameuifuncs, gameeventmanager );
+}
+
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+ClientModeHLNormal::~ClientModeHLNormal()
+{
+}
+
+
+//-----------------------------------------------------------------------------
+// Purpose:
+//-----------------------------------------------------------------------------
+void ClientModeHLNormal::Init()
+{
+ BaseClass::Init();
+
+ // Load up the combine control panel scheme
+ g_hVGuiCombineScheme = vgui::scheme()->LoadSchemeFromFileEx( enginevgui->GetPanel( PANEL_CLIENTDLL ), IsXbox() ? "resource/ClientScheme.res" : "resource/CombinePanelScheme.res", "CombineScheme" );
+ if (!g_hVGuiCombineScheme)
+ {
+ Warning( "Couldn't load combine panel scheme!\n" );
+ }
+}
+
+bool ClientModeHLNormal::ShouldDrawCrosshair( void )
+{
+ return ( g_bRollingCredits == false );
+}
+
+
+