From 39ed87570bdb2f86969d4be821c94b722dc71179 Mon Sep 17 00:00:00 2001 From: Joe Ludwig Date: Wed, 26 Jun 2013 15:22:04 -0700 Subject: First version of the SOurce SDK 2013 --- mp/src/game/client/animatedoffsettextureproxy.cpp | 56 +++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 mp/src/game/client/animatedoffsettextureproxy.cpp (limited to 'mp/src/game/client/animatedoffsettextureproxy.cpp') diff --git a/mp/src/game/client/animatedoffsettextureproxy.cpp b/mp/src/game/client/animatedoffsettextureproxy.cpp new file mode 100644 index 00000000..2d3ea228 --- /dev/null +++ b/mp/src/game/client/animatedoffsettextureproxy.cpp @@ -0,0 +1,56 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// Purpose: +// +//=============================================================================// + +#include "cbase.h" +#include "baseanimatedtextureproxy.h" + +// memdbgon must be the last include file in a .cpp file!!! +#include "tier0/memdbgon.h" + +class CAnimatedOffsetTextureProxy : public CBaseAnimatedTextureProxy +{ +public: + CAnimatedOffsetTextureProxy() : m_flFrameOffset( 0.0f ) {} + + virtual ~CAnimatedOffsetTextureProxy() {} + + virtual float GetAnimationStartTime( void* pBaseEntity ); + virtual void OnBind( void *pBaseEntity ); + +protected: + + float m_flFrameOffset; +}; + +EXPOSE_INTERFACE( CAnimatedOffsetTextureProxy, IMaterialProxy, "AnimatedOffsetTexture" IMATERIAL_PROXY_INTERFACE_VERSION ); + +//----------------------------------------------------------------------------- +// Purpose: +// Input : pArg - +// Output : float +//----------------------------------------------------------------------------- +float CAnimatedOffsetTextureProxy::GetAnimationStartTime( void* pArg ) +{ + return m_flFrameOffset; +} + +//----------------------------------------------------------------------------- +// Purpose: +// Input : *pBaseEntity - +//----------------------------------------------------------------------------- +void CAnimatedOffsetTextureProxy::OnBind( void *pBaseEntity ) +{ + C_BaseEntity* pEntity = (C_BaseEntity*)pBaseEntity; + + if ( pEntity ) + { + m_flFrameOffset = pEntity->GetTextureAnimationStartTime(); + } + + // Call into the base class + CBaseAnimatedTextureProxy::OnBind( pBaseEntity ); +} + -- cgit v1.2.3