//========= Copyright Valve Corporation, All rights reserved. ============// // // Purpose: // // $NoKeywords: $ //=============================================================================// #include "cbase.h" #include "hintitemobjectbase.h" #include #include "c_obj_resourcepump.h" #include "c_func_resource.h" //----------------------------------------------------------------------------- // Purpose: // Input : *parent - // *panelName - //----------------------------------------------------------------------------- CHintItemObjectBase::CHintItemObjectBase( vgui::Panel *parent, const char *panelName ) : BaseClass( parent, panelName ) { SetObjectType( "" ); } //----------------------------------------------------------------------------- // Purpose: // Input : *pKeyValues - //----------------------------------------------------------------------------- void CHintItemObjectBase::ParseItem( KeyValues *pKeyValues ) { BaseClass::ParseItem( pKeyValues ); const char *type = pKeyValues->GetString( "type", "" ); if ( type ) { SetObjectType( type ); } } //----------------------------------------------------------------------------- // Purpose: // Input : *object - // Output : Returns true on success, false on failure. //----------------------------------------------------------------------------- bool CHintItemObjectBase::IsObjectOfType( C_BaseEntity *object ) { if ( !stricmp( GetObjectType(), "Resource Zone" ) ) { return dynamic_cast< C_ResourceZone *>( object ) ? true : false; } else if ( !stricmp( GetObjectType(), "Resource Pump" ) ) { return dynamic_cast< C_ObjectResourcePump * >( object) ? true : false; } else if ( !stricmp( GetObjectType(), "BaseObject" ) ) { return dynamic_cast< C_BaseObject * >( object) ? true : false; } return false; } //----------------------------------------------------------------------------- // Purpose: // Input : *type - //----------------------------------------------------------------------------- void CHintItemObjectBase::SetObjectType( const char *type ) { Q_strncpy( m_szObjectType, type, MAX_OBJECT_TYPE ); } //----------------------------------------------------------------------------- // Purpose: // Output : char const //----------------------------------------------------------------------------- const char *CHintItemObjectBase::GetObjectType( void ) { return m_szObjectType; }