示例#1
0
bool CClientFXDB::Init(ILTClient* pLTClient)
{
	// Try and load our ClientFX dll (.fxd)
	if( !LoadFxDll() )
		return false;
	
	// Search for and load ALL valid GroupFX (.fxf)
	//
	
	// Obtain a snapshot of our ClientFX directory
	FileEntry *pFiles = pLTClient->GetFileList("ClientFX");
	if( !pFiles ) 
		return false;

	FileEntry *pEntry = pFiles;
	while( pEntry )
	{
		// Ignore directorys... only look at files
		if( pEntry->m_Type == TYPE_FILE )
		{
			char drive[_MAX_DRIVE];
			char dir[_MAX_DIR];
			char fname[_MAX_FNAME];
			char ext[_MAX_EXT];

			_splitpath( pEntry->m_pFullFilename, drive, dir, fname, ext );

			// Is this a ClientFx file?
			if( !stricmp( ".fxf", ext ) )
			{
				// Try and load it
				if( !LoadFxGroups( pLTClient, pEntry->m_pFullFilename ) )
				{
					return false;
				}
			}
		}

		pEntry = pEntry->m_pNext;
	}

	// Free the List we obtained
	g_pLTClient->FreeFileList( pFiles );

	//success
	return true;
}
示例#2
0
BOOL CFxMgr::Init(const char *sDll)
{
	if (!LoadFxDll(sDll)) return FALSE;

	return TRUE;
}