您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ FS_GetFileList函数代码示例

51自学网 2021-06-01 20:43:39
  C++
这篇教程C++ FS_GetFileList函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中FS_GetFileList函数的典型用法代码示例。如果您正苦于以下问题:C++ FS_GetFileList函数的具体用法?C++ FS_GetFileList怎么用?C++ FS_GetFileList使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了FS_GetFileList函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: ML_Update

/** ML_Update*/bool ML_Update( void ){	int i, len, total, newpaks;	size_t size;	char *map, *maps, *filename;	newpaks = FS_Rescan();	if( !newpaks )		return false;	total = FS_GetFileListExt( "maps", ".bsp", NULL, &size, 0, 0 );	if( size )	{		maps = ( char* )Mem_TempMalloc( size );		FS_GetFileList( "maps", ".bsp", maps, size, 0, 0 );		for( i = 0, len = 0; i < total; i++ )		{			map = maps + len;			len += strlen( map ) + 1;			filename = ( char * )COM_FileBase( map );			COM_StripExtension( filename );			// don't check for existance of each file itself, as we've just got the fresh list			if( !ML_FilenameExistsExt( filename, true ) )				ML_AddMap( filename, MLIST_UNKNOWN_MAPNAME );		}		Mem_TempFree( maps );	}	return true;}
开发者ID:Clever-Boy,项目名称:qfusion,代码行数:35,


示例2: SV_BeginAutoRecordDemos

// starts demo recording on all active clientsvoid SV_BeginAutoRecordDemos() {	if ( sv_autoDemo->integer ) {		for ( client_t *client = svs.clients; client - svs.clients < sv_maxclients->integer; client++ ) {			if ( client->state == CS_ACTIVE && !client->demo.demorecording ) {				if ( client->netchan.remoteAddress.type != NA_BOT || sv_autoDemoBots->integer ) {					SV_AutoRecordDemo( client );				}			}		}		if ( sv_autoDemoMaxMaps->integer > 0 && sv.demosPruned == qfalse ) {			char autorecordDirList[500 * MAX_OSPATH], tmpFileList[5 * MAX_OSPATH];			int autorecordDirListCount = SV_FindLeafFolders( "demos/autorecord", autorecordDirList, 500, MAX_OSPATH );			int i;			qsort( autorecordDirList, autorecordDirListCount, MAX_OSPATH, SV_DemoFolderTimeComparator );			for ( i = sv_autoDemoMaxMaps->integer; i < autorecordDirListCount; i++ ) {				char *folder = &autorecordDirList[i * MAX_OSPATH], *slash = NULL;				FS_HomeRmdir( folder, qtrue );				// if this folder was the last thing in its parent folder (and its parent isn't the root folder),				// also delete the parent.				for (;;) {					slash = strrchr( folder, '/' );					if ( slash == NULL ) {						break;					}					slash[0] = '/0';					if ( !strcmp( folder, "demos/autorecord" ) ) {						break;					}					int numFiles = FS_GetFileList( folder, "", tmpFileList, sizeof( tmpFileList ) );					int numFolders = FS_GetFileList( folder, "/", tmpFileList, sizeof( tmpFileList ) );					// numFolders will include . and ..					if ( numFiles == 0 && numFolders == 2 ) {						// dangling empty folder, delete						FS_HomeRmdir( folder, qfalse );					} else {						break;					}				}			}			sv.demosPruned = qtrue;		}	}}
开发者ID:adnanfzafar,项目名称:OpenJK,代码行数:45,


示例3: ML_InitFromMaps

/** ML_InitFromMaps* Fills map list array from each map file. Very slow* and should only be called if cache doesnt exist*/static void ML_InitFromMaps( void ){	int i, j, total, len;	char maps[2048];	char *filename;	if( ml_initialized )		return;	total = FS_GetFileList( "maps", ".bsp", NULL, 0, 0, 0 );	if( !total )		return;	i = 0;	while( i < total )	{		memset( maps, 0, sizeof( maps ) );		j = FS_GetFileList( "maps", ".bsp", maps, sizeof( maps ), i, total );		// no maps returned, map name is too big or end of list?		if( !j )		{			i++;			continue;		}		i += j;		// split the maps up and find their fullnames		len = 0;		while( j-- )		{			filename = maps + len;			if( !*filename )				continue;			len += strlen( filename ) + 1;			COM_SanitizeFilePath( filename );			COM_StripExtension( filename );			ML_AddMap( filename, NULL );		}	}}
开发者ID:Clever-Boy,项目名称:qfusion,代码行数:49,


示例4: fread

	/*	Precache the radio sounds + some other sounds of urt 'cause it doesn't on its own and it		may be freezing rendering in the process of fread()ing assets for the 1st time. */	static void PreCache_UT_Audio (void) {		//lister stolen from UI_LoadBots()		char	*		dirptr;		char			dirlist[8192],filename[1024];		int			numdirs,dirlen, i;		numdirs = FS_GetFileList("sound/radio/female", ".wav", dirlist, 8192);		dirptr  = dirlist;		for (i = 0; i < numdirs; i++, dirptr += dirlen+1) {			dirlen = strlen(dirptr);			strcpy(filename, "sound/radio/female/");			strcat(filename, dirptr);			S_RegisterSound(filename, qfalse);		}		numdirs = FS_GetFileList("sound/radio/male", ".wav", dirlist, 8192);		dirptr  = dirlist;		for (i = 0; i < numdirs; i++, dirptr += dirlen+1) {			dirlen = strlen(dirptr);			strcpy(filename, "sound/radio/male/");			strcat(filename, dirptr);			S_RegisterSound(filename, qfalse);		}		//some extra ones caught not being pre-registered:		S_RegisterSound ("sound/misc/kcaction.wav", qfalse);		S_RegisterSound ("sound/player/ledgegrab.wav", qfalse);		S_RegisterSound ("sound/surfaces/bullets/water1.wav", qfalse);		S_RegisterSound ("sound/items/nvgoff.wav", qfalse);		S_RegisterSound ("sound/items/nvgon.wav", qfalse);		S_RegisterSound ("sound/items/flashlight.wav", qfalse);		S_RegisterSound ("sound/items/laseronoff.wav", qfalse);		S_RegisterSound ("sound/weapons/beretta/92G_noammo.wav", qfalse);		S_RegisterSound ("sound/bomb/Bomb_disarm.wav", qfalse);		S_RegisterSound ("sound/bomb/Explode01.wav", qfalse);		S_RegisterSound ("sound/misc/blast_wind.wav", qfalse);		S_RegisterSound ("sound/misc/blast_fire.wav", qfalse);	}
开发者ID:anthonynguyen,项目名称:ioq3-mitsu,代码行数:41,


示例5: PreCache_UT_Models

	//similarly, pre-cache funstuff	static void PreCache_UT_Models (void) {		char*		dirptr;		char			dirlist[8192],filename[1024];		int			numdirs,dirlen, i;		numdirs = FS_GetFileList("models/players/funstuff/", ".md3", dirlist, 8192 );		dirptr  = dirlist;		for (i = 0; i < numdirs; i++, dirptr += dirlen+1) {			dirlen = strlen(dirptr);			strcpy(filename, "models/players/funstuff/");			strcat(filename, dirptr);			RE_RegisterModel (filename);		}	}
开发者ID:anthonynguyen,项目名称:ioq3-mitsu,代码行数:15,


示例6: SV_FindLeafFolders

// returns number of folders found.  pass NULL result pointer for just a count.static int SV_FindLeafFolders( const char *baseFolder, char *result, int maxResults, int maxFolderLength ) {	char *fileList = (char *)Z_Malloc( MAX_OSPATH * maxResults, TAG_FILESYS ); // too big for stack since this is recursive	char fullFolder[MAX_OSPATH];	int resultCount = 0;	char *fileName;	int i;	int numFiles = FS_GetFileList( baseFolder, "/", fileList, MAX_OSPATH * maxResults );	fileName = fileList;	for ( i = 0; i < numFiles; i++ ) {		if ( Q_stricmp( fileName, "." ) && Q_stricmp( fileName, ".." ) ) {			char *nextResult = NULL;			Com_sprintf( fullFolder, sizeof( fullFolder ), "%s/%s", baseFolder, fileName );			if ( result != NULL ) {				nextResult = &result[maxFolderLength * resultCount];			}			int newResults = SV_FindLeafFolders( fullFolder, nextResult, maxResults - resultCount, maxFolderLength );			resultCount += newResults;			if ( result != NULL && resultCount >= maxResults ) {				break;			}			if ( newResults == 0 ) {				if ( result != NULL ) {					Q_strncpyz( &result[maxFolderLength * resultCount], fullFolder, maxFolderLength );				}				resultCount++;				if ( result != NULL && resultCount >= maxResults ) {					break;				}			}		}		fileName += strlen( fileName ) + 1;	}	Z_Free( fileList );	return resultCount;}
开发者ID:adnanfzafar,项目名称:OpenJK,代码行数:39,


示例7: CL_CgameSystemCalls

intptr_t CL_CgameSystemCalls(intptr_t *args){	switch (args[0])	{	case CG_PRINT:		Com_Printf("%s", (char *)VMA(1));		return 0;	case CG_ERROR:		Com_Error(ERR_DROP, "%s", (char *)VMA(1));		return 0;	case CG_MILLISECONDS:		return Sys_Milliseconds();	case CG_CVAR_REGISTER:		Cvar_Register(VMA(1), VMA(2), VMA(3), args[4]);		return 0;	case CG_CVAR_UPDATE:		Cvar_Update(VMA(1));		return 0;	case CG_CVAR_SET:		Cvar_SetSafe(VMA(1), VMA(2));		return 0;	case CG_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer(VMA(1), VMA(2), args[3]);		return 0;	case CG_CVAR_LATCHEDVARIABLESTRINGBUFFER:		Cvar_LatchedVariableStringBuffer(VMA(1), VMA(2), args[3]);		return 0;	case CG_ARGC:		return Cmd_Argc();	case CG_ARGV:		Cmd_ArgvBuffer(args[1], VMA(2), args[3]);		return 0;	case CG_ARGS:		Cmd_ArgsBuffer(VMA(1), args[2]);		return 0;	case CG_FS_FOPENFILE:		return FS_FOpenFileByMode(VMA(1), VMA(2), args[3]);	case CG_FS_READ:		FS_Read(VMA(1), args[2], args[3]);		return 0;	case CG_FS_WRITE:		return FS_Write(VMA(1), args[2], args[3]);	case CG_FS_FCLOSEFILE:		FS_FCloseFile(args[1]);		return 0;	case CG_FS_GETFILELIST:		return FS_GetFileList(VMA(1), VMA(2), VMA(3), args[4]);	case CG_FS_DELETEFILE:		return FS_Delete(VMA(1));	case CG_SENDCONSOLECOMMAND:		Cbuf_AddText(VMA(1));		return 0;	case CG_ADDCOMMAND:		CL_AddCgameCommand(VMA(1));		return 0;	case CG_REMOVECOMMAND:		Cmd_RemoveCommandSafe(VMA(1));		return 0;	case CG_SENDCLIENTCOMMAND:		CL_AddReliableCommand(VMA(1));		return 0;	case CG_UPDATESCREEN:		SCR_UpdateScreen();		return 0;	case CG_CM_LOADMAP:		CL_CM_LoadMap(VMA(1));		return 0;	case CG_CM_NUMINLINEMODELS:		return CM_NumInlineModels();	case CG_CM_INLINEMODEL:		return CM_InlineModel(args[1]);	case CG_CM_TEMPBOXMODEL:		return CM_TempBoxModel(VMA(1), VMA(2), qfalse);	case CG_CM_TEMPCAPSULEMODEL:		return CM_TempBoxModel(VMA(1), VMA(2), qtrue);	case CG_CM_POINTCONTENTS:		return CM_PointContents(VMA(1), args[2]);	case CG_CM_TRANSFORMEDPOINTCONTENTS:		return CM_TransformedPointContents(VMA(1), args[2], VMA(3), VMA(4));	case CG_CM_BOXTRACE:		CM_BoxTrace(VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], /*int capsule*/ qfalse);		return 0;	case CG_CM_CAPSULETRACE:		CM_BoxTrace(VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], /*int capsule*/ qtrue);		return 0;	case CG_CM_TRANSFORMEDBOXTRACE:		CM_TransformedBoxTrace(VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], VMA(8), VMA(9), /*int capsule*/ qfalse);		return 0;	case CG_CM_TRANSFORMEDCAPSULETRACE:		CM_TransformedBoxTrace(VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], VMA(8), VMA(9), /*int capsule*/ qtrue);		return 0;	case CG_CM_MARKFRAGMENTS:		return re.MarkFragments(args[1], VMA(2), VMA(3), args[4], VMA(5), args[6], VMA(7));	case CG_R_PROJECTDECAL:		re.ProjectDecal(args[1], args[2], VMA(3), VMA(4), VMA(5), args[6], args[7]);		return 0;	case CG_R_CLEARDECALS:		re.ClearDecals();		return 0;//.........这里部分代码省略.........
开发者ID:Mailaender,项目名称:etlegacy,代码行数:101,


示例8: CL_UISystemCalls

/*====================CL_UISystemCallsThe ui module is making a system call====================*/int CL_UISystemCalls( int *args ) {	switch( args[0] ) {	case UI_ERROR:		Com_Error( ERR_DROP, "%s", VMA(1) );		return 0;	case UI_PRINT:		Com_Printf( "%s", VMA(1) );		return 0;	case UI_MILLISECONDS:		return Sys_Milliseconds();	case UI_CVAR_REGISTER:		Cvar_Register( VMA(1), VMA(2), VMA(3), args[4] ); 		return 0;	case UI_CVAR_UPDATE:		Cvar_Update( VMA(1) );		return 0;	case UI_CVAR_SET:		Cvar_Set( VMA(1), VMA(2) );		return 0;	case UI_CVAR_VARIABLEVALUE:		return FloatAsInt( Cvar_VariableValue( VMA(1) ) );	case UI_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( VMA(1), VMA(2), args[3] );		return 0;	case UI_CVAR_SETVALUE:		Cvar_SetValue( VMA(1), VMF(2) );		return 0;	case UI_CVAR_RESET:		Cvar_Reset( VMA(1) );		return 0;	case UI_CVAR_CREATE:		Cvar_Get( VMA(1), VMA(2), args[3] );		return 0;	case UI_CVAR_INFOSTRINGBUFFER:		Cvar_InfoStringBuffer( args[1], VMA(2), args[3] );		return 0;	case UI_ARGC:		return Cmd_Argc();	case UI_ARGV:		Cmd_ArgvBuffer( args[1], VMA(2), args[3] );		return 0;	case UI_CMD_EXECUTETEXT:		Cbuf_ExecuteText( args[1], VMA(2) );		return 0;	case UI_FS_FOPENFILE:		return FS_FOpenFileByMode( VMA(1), VMA(2), args[3] );	case UI_FS_READ:		FS_Read2( VMA(1), args[2], args[3] );		return 0;	case UI_FS_WRITE:		FS_Write( VMA(1), args[2], args[3] );		return 0;	case UI_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case UI_FS_GETFILELIST:		return FS_GetFileList( VMA(1), VMA(2), VMA(3), args[4] );	case UI_FS_SEEK:		return FS_Seek( args[1], args[2], args[3] );		case UI_R_REGISTERMODEL:#ifdef IOS_NOTYET		GLimp_AcquireGL();		return re.RegisterModel( VMA(1) );		GLimp_ReleaseGL();#else		return re.RegisterModel( VMA(1) );#endif // IOS	case UI_R_REGISTERSKIN:#ifdef IOS_NOTYET		GLimp_AcquireGL();		return re.RegisterSkin( VMA(1) );//.........这里部分代码省略.........
开发者ID:he110world,项目名称:quake3-ios,代码行数:101,


示例9: CLWM_UISystemCalls

//	The ui module is making a system callqintptr CLWM_UISystemCalls( qintptr* args ) {	switch ( args[ 0 ] ) {	case WMUI_ERROR:		common->Error( "%s", ( char* )VMA( 1 ) );		return 0;	case WMUI_PRINT:		common->Printf( "%s", ( char* )VMA( 1 ) );		return 0;	case WMUI_MILLISECONDS:		return Sys_Milliseconds();	case WMUI_CVAR_REGISTER:		Cvar_Register( ( vmCvar_t* )VMA( 1 ), ( char* )VMA( 2 ), ( char* )VMA( 3 ), args[ 4 ] );		return 0;	case WMUI_CVAR_UPDATE:		Cvar_Update( ( vmCvar_t* )VMA( 1 ) );		return 0;	case WMUI_CVAR_SET:		Cvar_Set( ( char* )VMA( 1 ), ( char* )VMA( 2 ) );		return 0;	case WMUI_CVAR_VARIABLEVALUE:		return FloatAsInt( Cvar_VariableValue( ( char* )VMA( 1 ) ) );	case WMUI_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( ( char* )VMA( 1 ), ( char* )VMA( 2 ), args[ 3 ] );		return 0;	case WMUI_CVAR_SETVALUE:		Cvar_SetValue( ( char* )VMA( 1 ), VMF( 2 ) );		return 0;	case WMUI_CVAR_RESET:		Cvar_Reset( ( char* )VMA( 1 ) );		return 0;	case WMUI_CVAR_CREATE:		Cvar_Get( ( char* )VMA( 1 ), ( char* )VMA( 2 ), args[ 3 ] );		return 0;	case WMUI_CVAR_INFOSTRINGBUFFER:		Cvar_InfoStringBuffer( args[ 1 ], MAX_INFO_STRING_Q3, ( char* )VMA( 2 ), args[ 3 ] );		return 0;	case WMUI_ARGC:		return Cmd_Argc();	case WMUI_ARGV:		Cmd_ArgvBuffer( args[ 1 ], ( char* )VMA( 2 ), args[ 3 ] );		return 0;	case WMUI_CMD_EXECUTETEXT:		Cbuf_ExecuteText( args[ 1 ], ( char* )VMA( 2 ) );		return 0;	case WMUI_FS_FOPENFILE:		return FS_FOpenFileByMode( ( char* )VMA( 1 ), ( fileHandle_t* )VMA( 2 ), ( fsMode_t )args[ 3 ] );	case WMUI_FS_READ:		FS_Read( VMA( 1 ), args[ 2 ], args[ 3 ] );		return 0;	case WMUI_FS_WRITE:		FS_Write( VMA( 1 ), args[ 2 ], args[ 3 ] );		return 0;	case WMUI_FS_FCLOSEFILE:		FS_FCloseFile( args[ 1 ] );		return 0;	case WMUI_FS_DELETEFILE:		return FS_Delete( ( char* )VMA( 1 ) );	case WMUI_FS_GETFILELIST:		return FS_GetFileList( ( char* )VMA( 1 ), ( char* )VMA( 2 ), ( char* )VMA( 3 ), args[ 4 ] );	case WMUI_R_REGISTERMODEL:		return R_RegisterModel( ( char* )VMA( 1 ) );	case WMUI_R_REGISTERSKIN:		return R_RegisterSkin( ( char* )VMA( 1 ) );	case WMUI_R_REGISTERSHADERNOMIP:		return R_RegisterShaderNoMip( ( char* )VMA( 1 ) );	case WMUI_R_CLEARSCENE:		R_ClearScene();		return 0;	case WMUI_R_ADDREFENTITYTOSCENE:		CLWM_AddRefEntityToScene( ( wmrefEntity_t* )VMA( 1 ) );		return 0;	case WMUI_R_ADDPOLYTOSCENE:		R_AddPolyToScene( args[ 1 ], args[ 2 ], ( polyVert_t* )VMA( 3 ), 1 );//.........这里部分代码省略.........
开发者ID:janisl,项目名称:jlquake,代码行数:101,


示例10: CL_UISystemCalls

/*====================CL_UISystemCallsThe ui module is making a system call====================*/intptr_t CL_UISystemCalls(intptr_t * args) {	switch (args[0]) {		case UI_ERROR:			Com_Error(ERR_DROP, "%s", (char *)VMA(1));			return 0;		case UI_PRINT:			Com_Printf("%s", (char *)VMA(1));			return 0;		case UI_MILLISECONDS:			return Sys_Milliseconds();		case UI_CVAR_REGISTER:			Cvar_Register((vmCvar_t*)VMA(1), (char*)VMA(2), (char*)VMA(3), args[4]);			return 0;		case UI_CVAR_UPDATE:			Cvar_Update((vmCvar_t*)VMA(1));			return 0;		case UI_CVAR_SET:			Cvar_Set((char*)VMA(1), (char*)VMA(2));			return 0;		case UI_CVAR_VARIABLEVALUE:			return FloatAsInt(Cvar_VariableValue((char*)VMA(1)));		case UI_CVAR_VARIABLESTRINGBUFFER:			Cvar_VariableStringBuffer((char*)VMA(1), (char*)VMA(2), args[3]);			return 0;		case UI_CVAR_LATCHEDVARIABLESTRINGBUFFER:			Cvar_LatchedVariableStringBuffer((char*)VMA(1), (char*)VMA(2), args[3]);			return 0;		case UI_CVAR_SETVALUE:			Cvar_SetValue((char*)VMA(1), VMF(2));			return 0;		case UI_CVAR_RESET:			Cvar_Reset((char*)VMA(1));			return 0;		case UI_CVAR_CREATE:			Cvar_Get((char*)VMA(1), (char*)VMA(2), args[3], (char*)VMA(4));			return 0;		case UI_CVAR_INFOSTRINGBUFFER:			Cvar_InfoStringBuffer(args[1], (char*)VMA(2), args[3]);			return 0;		case UI_ARGC:			return Cmd_Argc();		case UI_ARGV:			Cmd_ArgvBuffer(args[1], (char*)VMA(2), args[3]);			return 0;		case UI_CMD_EXECUTETEXT:			Cbuf_ExecuteText(args[1], (char*)VMA(2));			return 0;		case UI_ADDCOMMAND:			Cmd_AddCommand((char*)VMA(1), NULL, (char*)VMA(3));			return 0;		case UI_FS_FOPENFILE:			return FS_FOpenFileByMode((char*)VMA(1), (fileHandle_t*)VMA( 2 ), (fsMode_t)args[3] );		case UI_FS_READ:			FS_Read2(VMA(1), args[2], args[3]);			return 0;		case UI_FS_WRITE:			FS_Write(VMA(1), args[2], args[3]);			return 0;		case UI_FS_FCLOSEFILE:			FS_FCloseFile(args[1]);			return 0;		case UI_FS_DELETEFILE:			return FS_Delete((char*)VMA(1));		case UI_FS_GETFILELIST:			return FS_GetFileList((char*)VMA(1), (char*)VMA(2), (char*)VMA(3), args[4]);		case UI_FS_SEEK:			return FS_Seek( args[1], args[2], args[3] );		case UI_R_REGISTERMODEL:			return re.RegisterModel((char*)VMA(1));		case UI_R_REGISTERSKIN:			return re.RegisterSkin((char*)VMA(1));		case UI_R_REGISTERSHADERNOMIP:			return re.RegisterShaderNoMip((char*)VMA(1));		case UI_R_CLEARSCENE:			re.ClearScene();			return 0;		case UI_R_ADDREFENTITYTOSCENE:			re.AddRefEntityToScene((refEntity_t*)VMA(1));			return 0;		case UI_R_ADDPOLYTOSCENE:			re.AddPolyToScene(args[1], args[2], (polyVert_t*)VMA(3));			return 0;		case UI_R_ADDPOLYSTOSCENE:			re.AddPolysToScene(args[1], args[2], (polyVert_t*)VMA(3), args[4]);			return 0;		case UI_R_ADDLIGHTTOSCENE:			re.AddLightToScene((vec_t*)VMA(1), VMF(2), VMF(3), VMF(4), VMF(5), VMF(6), args[7], args[8]);			return 0;		case UI_R_ADDCORONATOSCENE:			re.AddCoronaToScene((vec_t*)VMA(1), VMF(2), VMF(3), VMF(4), VMF(5), args[6], (bool)args[7]);			return 0;		case UI_R_RENDERSCENE:			re.RenderScene((refdef_t*)VMA(1));//.........这里部分代码省略.........
开发者ID:TheDushan,项目名称:OpenWolf,代码行数:101,


示例11: SV_DemoList_f

void SV_DemoList_f( client_t *client ){	char message[MAX_STRING_CHARS];	char numpr[16];	char buffer[MAX_STRING_CHARS];	char *s, *p;	size_t j, length, length_escaped, pos, extlen;	int numdemos, i, start = -1, end, k;	if( client->state < CS_SPAWNED )		return;	if( Cmd_Argc() > 2 )	{		SV_AddGameCommand( client, "pr /"Usage: demolist [starting position]/n/"" );		return;	}	if( Cmd_Argc() == 2 )	{		start = atoi( Cmd_Argv( 1 ) ) - 1;		if( start < 0 )		{			SV_AddGameCommand( client, "pr /"Usage: demolist [starting position]/n/"" );			return;		}	}	Q_strncpyz( message, "pr /"Available demos:/n----------------/n", sizeof( message ) );	numdemos = FS_GetFileList( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, NULL, 0, 0, 0 );	if( numdemos )	{		if( start < 0 )			start = max( 0, numdemos - DEMOS_PER_VIEW );		else if( start > numdemos - 1 )			start = numdemos - 1;		if( start > 0 )			Q_strncatz( message, ".../n", sizeof( message ) );		end = start + DEMOS_PER_VIEW;		if( end > numdemos )			end = numdemos;		extlen = strlen( APP_DEMO_EXTENSION_STR );		i = start;		do		{			if( ( k = FS_GetFileList( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, buffer, sizeof( buffer ), i, end ) ) == 0 )			{				i++;				continue;			}			for( s = buffer; k > 0; k--, s += length+1, i++ )			{				length = strlen( s );				length_escaped = length;				p = s;				while( ( p = strchr( p, '//' ) ) )					length_escaped++;				Q_snprintfz( numpr, sizeof( numpr ), "%i: ", i+1 );				if( strlen( message ) + strlen( numpr ) + length_escaped - extlen + 1 + 5 >= sizeof( message ) )				{					Q_strncatz( message, "/"", sizeof( message ) );					SV_AddGameCommand( client, message );					Q_strncpyz( message, "pr /"", sizeof( message ) );					if( strlen( "demoget " ) + strlen( numpr ) + length_escaped - extlen + 1 + 5 >= sizeof( message ) )						continue;				}				Q_strncatz( message, numpr, sizeof( message ) );				pos = strlen( message );				for( j = 0; j < length - extlen; j++ )				{					assert( s[j] != '//' );					if( s[j] == '"' )						message[pos++] = '//';					message[pos++] = s[j];				}				message[pos++] = '/n';				message[pos] = '/0';			}		}		while( i < end );		if( end < numdemos )			Q_strncatz( message, ".../n", sizeof( message ) );	}	else	{		Q_strncatz( message, "none/n", sizeof( message ) );	}	Q_strncatz( message, "/"", sizeof( message ) );//.........这里部分代码省略.........
开发者ID:cfr,项目名称:qfusion,代码行数:101,


示例12: ML_InitFromCache

/** ML_InitFromCache* Fills map list array from cache, much faster*/static void ML_InitFromCache( void ){	int count, i, total, len;	size_t size = 0;	char *buffer, *chr, *current, *curend;	char *temp, *maps, *map;	mapdir_t *dir, *curmap, *prev;	if( ml_initialized )		return;	total = FS_GetFileListExt( "maps", ".bsp", NULL, &size, 0, 0 );	if( !total )		return;	// load maps from directory reading into a list	maps = temp = ( char* )Mem_TempMalloc( size + sizeof( mapdir_t ) * total );	temp += size;	FS_GetFileList( "maps", ".bsp", maps, size, 0, 0 );	len = 0;	prev = NULL;	dir = NULL;	for( i = 0; i < total; i++ )	{		map = maps + len;		len += strlen( map ) + 1;		curmap = ( mapdir_t * )temp;		temp += sizeof( mapdir_t );		COM_StripExtension( map );		if( !i )			dir = curmap;		else		{			prev->next = curmap;			curmap->prev = prev;		}		curmap->filename = map;		prev = curmap;	}	FS_LoadCacheFile( MLIST_CACHE, (void **)&buffer, NULL, 0 );	if( !buffer )	{		Mem_TempFree( maps );		return;	}	current = curend = buffer;	count = 0;	for( chr = buffer; *chr; chr++ )	{		// current character is a delimiter		if( *chr == '/n' )		{			if( *(chr-1) == '/r' )				*(chr-1) = '/0';	// clear the CR too			*chr = '/0';			// clear the LF			// if we have got both params			if( !( ++count & 1 ) )			{				// check if its in the maps directory				for( curmap = dir; curmap; curmap = curmap->next )				{					if( !Q_stricmp( curmap->filename, current ) )					{						if( curmap->prev )							curmap->prev->next = curmap->next;						else							dir = curmap->next;						if( curmap->next )							curmap->next->prev = curmap->prev;						break;					}				}				// if we found it in the maps directory				if( curmap )				{					COM_SanitizeFilePath( current );					// well, if we've got a map with an unknown fullname, load it from map					if( !strcmp( curend + 1, MLIST_UNKNOWN_MAPNAME ) )						ML_AddMap( current, NULL );					else						ML_AddMap( current, curend + 1 );				}				current = chr + 1;			}			else//.........这里部分代码省略.........
开发者ID:Clever-Boy,项目名称:qfusion,代码行数:101,


示例13: CL_UISystemCalls

/*====================CL_UISystemCallsThe ui module is making a system call====================*/intptr_t CL_UISystemCalls( intptr_t *args ) {	switch( args[0] ) 	{	case UI_ERROR:		Com_Error( ERR_DROP, "%s", VMA(1) );		return 0;	case UI_CVAR_REGISTER:		Cvar_Register( (vmCvar_t *)VMA(1),(const char *) VMA(2),(const char *) VMA(3), args[4] ); 		return 0;	case UI_CVAR_SET:		Cvar_Set( (const char *) VMA(1), (const char *) VMA(2) );		return 0;	case UI_CVAR_SETVALUE:		Cvar_SetValue( (const char *) VMA(1), VMF(2) );		return 0;	case UI_CVAR_UPDATE:		Cvar_Update( (vmCvar_t *) VMA(1) );		return 0;	case UI_R_REGISTERMODEL:		return re.RegisterModel((const char *) VMA(1) );	case UI_R_REGISTERSHADERNOMIP:		return re.RegisterShaderNoMip((const char *) VMA(1) );	case UI_GETGLCONFIG:		CL_GetGlconfig( ( glconfig_t *) VMA(1) );		return 0;	case UI_CMD_EXECUTETEXT:		Cbuf_ExecuteText( args[1], (const char *) VMA(2) );		return 0;	case UI_CVAR_VARIABLEVALUE:		return FloatAsInt( Cvar_VariableValue( (const char *) VMA(1) ) );	case UI_FS_GETFILELIST:		return FS_GetFileList( (const char *) VMA(1), (const char *) VMA(2), (char *) VMA(3), args[4] );	case UI_KEY_SETCATCHER:		Key_SetCatcher( args[1] );		return 0;	case UI_KEY_CLEARSTATES:		Key_ClearStates();		return 0;	case UI_R_SETCOLOR:		re.SetColor( (const float *) VMA(1) );		return 0;	case UI_R_DRAWSTRETCHPIC:		re.DrawStretchPic( VMF(1), VMF(2), VMF(3), VMF(4), VMF(5), VMF(6), VMF(7), VMF(8), args[9] );		return 0;	case UI_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( (const char *) VMA(1), (char *) VMA(2), args[3] );		return 0;  case UI_R_MODELBOUNDS:		re.ModelBounds( args[1], (float *) VMA(2),(float *) VMA(3) );		return 0;	case UI_R_CLEARSCENE:		re.ClearScene();		return 0;//	case UI_KEY_GETOVERSTRIKEMODE://		return Key_GetOverstrikeMode();//		return 0;//	case UI_PC_READ_TOKEN://		return PC_ReadTokenHandle( args[1], VMA(2) );		//	case UI_PC_SOURCE_FILE_AND_LINE://		return PC_SourceFileAndLine( args[1], VMA(2), VMA(3) );	case UI_KEY_GETCATCHER:		return Key_GetCatcher();	case UI_MILLISECONDS:		return Sys_Milliseconds();	case UI_S_REGISTERSOUND:		return S_RegisterSound((const char *) VMA(1));	case UI_S_STARTLOCALSOUND://.........这里部分代码省略.........
开发者ID:Elfmagi,项目名称:OpenJK,代码行数:101,


示例14: CL_UISystemCalls

/*====================CL_UISystemCallsThe ui module is making a system call====================*/int CL_UISystemCalls( int *args ) {	switch( args[0] ) {	case UI_ERROR:		Com_Error( ERR_DROP, "%s", VMA(1) );		return 0;	case UI_PRINT:		Com_Printf( "%s", VMA(1) );		return 0;	case UI_MILLISECONDS:		return Sys_Milliseconds();	case UI_CVAR_REGISTER:		Cvar_Register( (vmCvar_t *)VMA(1), (const char *)VMA(2), (const char *)VMA(3), args[4] ); 		return 0;	case UI_CVAR_UPDATE:		Cvar_Update( (vmCvar_t *)VMA(1) );		return 0;	case UI_CVAR_SET:		Cvar_Set( (const char *)VMA(1), (const char *)VMA(2) );		return 0;	case UI_CVAR_VARIABLEVALUE:		return FloatAsInt( Cvar_VariableValue( (const char *)VMA(1) ) );	case UI_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( (const char *)VMA(1), (char *)VMA(2), args[3] );		return 0;	case UI_CVAR_SETVALUE:		Cvar_SetValue( (const char *)VMA(1), VMF(2) );		return 0;	case UI_CVAR_RESET:		Cvar_Reset( (const char *)VMA(1) );		return 0;	case UI_CVAR_CREATE:		Cvar_Get( (const char *)VMA(1), (const char *)VMA(2), args[3] );		return 0;	case UI_CVAR_INFOSTRINGBUFFER:		Cvar_InfoStringBuffer( args[1], (char *)VMA(2), args[3] );		return 0;	case UI_ARGC:		return Cmd_Argc();	case UI_ARGV:		Cmd_ArgvBuffer( args[1], (char *)VMA(2), args[3] );		return 0;	case UI_CMD_EXECUTETEXT:		Cbuf_ExecuteText( args[1], (const char *)VMA(2) );		return 0;	case UI_FS_FOPENFILE:		return FS_FOpenFileByMode( (const char *)VMA(1), (int *)VMA(2), (fsMode_t)args[3] );	case UI_FS_READ:		FS_Read2( VMA(1), args[2], args[3] );		return 0;	case UI_FS_WRITE:		FS_Write( VMA(1), args[2], args[3] );		return 0;	case UI_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case UI_FS_GETFILELIST:		return FS_GetFileList( (const char *)VMA(1), (const char *)VMA(2), (char *)VMA(3), args[4] );	case UI_R_REGISTERMODEL:		return re.RegisterModel( (const char *)VMA(1) );	case UI_R_REGISTERSKIN:		return re.RegisterSkin( (const char *)VMA(1) );	case UI_R_REGISTERSHADERNOMIP:		return re.RegisterShaderNoMip( (const char *)VMA(1) );	case UI_R_CLEARSCENE:		re.ClearScene();		return 0;	case UI_R_ADDREFENTITYTOSCENE:		re.AddRefEntityToScene( (const refEntity_t *)VMA(1) );		return 0;//.........这里部分代码省略.........
开发者ID:Boothand,项目名称:jk2mp,代码行数:101,


示例15: CL_UISystemCalls

/** * @brief The ui module is making a system call * @param[in] args * @return */intptr_t CL_UISystemCalls(intptr_t *args){    switch (args[0])    {    case UI_ERROR:        Com_Error(ERR_DROP, "%s", (char *)VMA(1));    case UI_PRINT:        Com_Printf("%s", (char *)VMA(1));        return 0;    case UI_MILLISECONDS:        return Sys_Milliseconds();    case UI_CVAR_REGISTER:        Cvar_Register(VMA(1), VMA(2), VMA(3), args[4]);        return 0;    case UI_CVAR_UPDATE:        Cvar_Update(VMA(1));        return 0;    case UI_CVAR_SET:        Cvar_SetSafe(VMA(1), VMA(2));        return 0;    case UI_CVAR_VARIABLEVALUE:        return FloatAsInt(Cvar_VariableValue(VMA(1)));    case UI_CVAR_VARIABLESTRINGBUFFER:        Cvar_VariableStringBuffer(VMA(1), VMA(2), args[3]);        return 0;    case UI_CVAR_LATCHEDVARIABLESTRINGBUFFER:        Cvar_LatchedVariableStringBuffer(VMA(1), VMA(2), args[3]);        return 0;    case UI_CVAR_SETVALUE:        Cvar_SetValueSafe(VMA(1), VMF(2));        return 0;    case UI_CVAR_RESET:        Cvar_Reset(VMA(1));        return 0;    case UI_CVAR_CREATE:        Cvar_Register(NULL, VMA(1), VMA(2), args[3]);        return 0;    case UI_CVAR_INFOSTRINGBUFFER:        Cvar_InfoStringBuffer(args[1], VMA(2), args[3]);        return 0;    case UI_ARGC:        return Cmd_Argc();    case UI_ARGV:        Cmd_ArgvBuffer(args[1], VMA(2), args[3]);        return 0;    case UI_CMD_EXECUTETEXT:        if (args[1] == EXEC_NOW                && (!strncmp(VMA(2), "snd_restart", 11)                    || !strncmp(VMA(2), "vid_restart", 11)                    || !strncmp(VMA(2), "quit", 5)))        {            Com_Printf(S_COLOR_YELLOW "turning EXEC_NOW '%.11s' into EXEC_INSERT/n", (const char *)VMA(2));            args[1] = EXEC_INSERT;        }        Cbuf_ExecuteText(args[1], VMA(2));        return 0;    case UI_ADDCOMMAND:        Cmd_AddCommand(VMA(1));        return 0;    case UI_FS_FOPENFILE:        return FS_FOpenFileByMode(VMA(1), VMA(2), (fsMode_t)args[3]);    case UI_FS_READ:        FS_Read(VMA(1), args[2], args[3]);        return 0;    case UI_FS_WRITE:        FS_Write(VMA(1), args[2], args[3]);        return 0;    case UI_FS_FCLOSEFILE:        FS_FCloseFile(args[1]);        return 0;    case UI_FS_DELETEFILE:        return FS_Delete(VMA(1));    case UI_FS_GETFILELIST:        return FS_GetFileList(VMA(1), VMA(2), VMA(3), args[4]);    case UI_R_REGISTERMODEL:        return re.RegisterModel(VMA(1));    case UI_R_REGISTERSKIN:        return re.RegisterSkin(VMA(1));    case UI_R_REGISTERSHADERNOMIP:        return re.RegisterShaderNoMip(VMA(1));    case UI_R_CLEARSCENE:        re.ClearScene();        return 0;    case UI_R_ADDREFENTITYTOSCENE:        re.AddRefEntityToScene(VMA(1));        return 0;    case UI_R_ADDPOLYTOSCENE:        re.AddPolyToScene(args[1], args[2], VMA(3));        return 0;    case UI_R_ADDPOLYSTOSCENE:        re.AddPolysToScene(args[1], args[2], VMA(3), args[4]);        return 0;    case UI_R_ADDLIGHTTOSCENE:        // new dlight code        re.AddLightToScene(VMA(1), VMF(2), VMF(3), VMF(4), VMF(5), VMF(6), args[7], args[8]);//.........这里部分代码省略.........
开发者ID:etlegacy,项目名称:etlegacy,代码行数:101,


示例16: CL_UISystemCalls

/*====================CL_UISystemCallsThe ui module is making a system call====================*/intptr_t CL_UISystemCalls( intptr_t *args ) {	switch( args[0] ) {	case UI_ERROR:		Com_Error( ERR_DROP, "%s", (const char*)VMA(1) );		return 0;	case UI_PRINT:		Com_Printf( "%s", (const char*)VMA(1) );		return 0;	case UI_MILLISECONDS:		return Sys_Milliseconds();	case UI_CVAR_REGISTER:		Cvar_Register( VMA(1), VMA(2), VMA(3), args[4] ); 		return 0;	case UI_CVAR_UPDATE:		Cvar_Update( VMA(1) );		return 0;	case UI_CVAR_SET:		Cvar_SetSafe( VMA(1), VMA(2) );		return 0;	case UI_CVAR_VARIABLEVALUE:		return FloatAsInt( Cvar_VariableValue( VMA(1) ) );	case UI_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( VMA(1), VMA(2), args[3] );		return 0;	case UI_CVAR_SETVALUE:		Cvar_SetValueSafe( VMA(1), VMF(2) );		return 0;	case UI_CVAR_RESET:		Cvar_Reset( VMA(1) );		return 0;	case UI_CVAR_CREATE:		Cvar_Get( VMA(1), VMA(2), args[3] );		return 0;	case UI_CVAR_INFOSTRINGBUFFER:		Cvar_InfoStringBuffer( args[1], VMA(2), args[3] );		return 0;	case UI_ARGC:		return Cmd_Argc();	case UI_ARGV:		Cmd_ArgvBuffer( args[1], VMA(2), args[3] );		return 0;	case UI_CMD_EXECUTETEXT:		if(args[1] == EXEC_NOW		&& (!strncmp(VMA(2), "snd_restart", 11)		|| !strncmp(VMA(2), "vid_restart", 11)		|| !strncmp(VMA(2), "quit", 5)))		{			Com_Printf (S_COLOR_YELLOW "turning EXEC_NOW '%.11s' into EXEC_INSERT/n", (const char*)VMA(2));			args[1] = EXEC_INSERT;		}		Cbuf_ExecuteText( args[1], VMA(2) );		return 0;	case UI_FS_FOPENFILE:		return FS_FOpenFileByMode( VMA(1), VMA(2), args[3] );	case UI_FS_READ:		FS_Read2( VMA(1), args[2], args[3] );		return 0;	case UI_FS_WRITE:		FS_Write( VMA(1), args[2], args[3] );		return 0;	case UI_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case UI_FS_GETFILELIST:		return FS_GetFileList( VMA(1), VMA(2), VMA(3), args[4] );		case UI_R_REGISTERMODEL:		return re.RegisterModel( VMA(1) );	case UI_R_REGISTERSKIN:		return re.RegisterSkin( VMA(1) );	case UI_R_REGISTERSHADERNOMIP:		return re.RegisterShaderNoMip( VMA(1) );//.........这里部分代码省略.........
开发者ID:Aravind7z,项目名称:zeq2lite,代码行数:101,


示例17: Com_sprintf

/////////////////////////////////////////////////////////////////////// Name        : SV_GetMapSoundingLike// Description : Retrieve a full map name given a substring of it// Author      : Fenix, p5yc0runn3r/////////////////////////////////////////////////////////////////////static char *SV_GetMapSoundingLike(const char *s) {    int  i, mapcount;    int  len = 0, count = 0;    char *matches[MAX_MAPLIST_SIZE];    char *searchmap;    static char maplist[MAX_MAPLIST_STRING];    // [BUGFIX]: instead of iterating through all the maps matching both full and    // partial name, search just for the exact map name and return it if the match is found    Com_sprintf(maplist, sizeof(maplist), "maps/%s.bsp", s);    if (FS_ReadFile(maplist, NULL) > 0)     {        Com_sprintf(maplist, sizeof(maplist), "%s", s);        return maplist; // @p5yc0runn3r: Return static string    }    // We didn't found an exact name match. Keep iterating through all the    // available maps matching partial substrings    if (!(mapcount = FS_GetFileList("maps", ".bsp", maplist, sizeof(maplist))))     {        Com_Printf("Unable to retrieve map list/n");        return NULL;    }    for (searchmap = maplist, i = 0; i < mapcount && count < MAX_MAPLIST_SIZE; i++, searchmap += len + 1)     {        len = strlen(searchmap);        SV_StripExtension(searchmap, searchmap);        // Check for substring match        if (Q_strisub(searchmap, s))         {            matches[count] = searchmap;            count++;        }    }    // One match = one map, found match.    if (count == 1) return matches[0]; // @p5yc0runn3r: matches points to static string, safe to return.    if (count > 1)     {        // Multiple matches found for the given map name        Com_Printf("Multiple maps found matching '%s':/n", s);        // Sorting the short map list alphabetically        qsort(matches, count, sizeof(char *), SV_SortMaps);        for (i = 0; i < count; i++)         {            // Printing a short map list so the user can retry with a more specific name            Com_Printf(" %2d: [%s]/n", i + 1, matches[i]);        }        if (count >= MAX_MAPLIST_SIZE)         {            // Tell the user that there are actually more            // maps matching the given substring, although            // we are not displaying them....            Com_Printf("...and more/n");        }        return NULL;    }    // No match found for the given map name input    Com_Printf("No map found matching '%s'/n", s);    return NULL;}
开发者ID:CoolOppo,项目名称:ioq3-for-UrbanTerror-4,代码行数:74,


示例18: SV_DemoGet_f

/** SV_DemoGet_f* * Responds to clients demoget request with: demoget "filename"* If nothing is found, responds with demoget without filename, so client knowns it wasn't found*/void SV_DemoGet_f( client_t *client ){	int num, numdemos;	char message[MAX_STRING_CHARS];	char buffer[MAX_STRING_CHARS];	char *s, *p;	size_t j, length, length_escaped, pos, pos_bak, msglen;	if( client->state < CS_SPAWNED )		return;	if( Cmd_Argc() != 2 )		return;	Q_strncpyz( message, "demoget /"", sizeof( message ) );	Q_strncatz( message, SV_DEMO_DIR, sizeof( message ) );	msglen = strlen( message );	message[msglen++] = '/';	pos = pos_bak = msglen;	numdemos = FS_GetFileList( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, NULL, 0, 0, 0 );	if( numdemos )	{		if( Cmd_Argv( 1 )[0] == '.' )			num = numdemos - strlen( Cmd_Argv( 1 ) );		else			num = atoi( Cmd_Argv( 1 ) ) - 1;		clamp( num, 0, numdemos - 1 );		numdemos = FS_GetFileList( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, buffer, sizeof( buffer ), num, num+1 );		if( numdemos )		{			s = buffer;			length = strlen( buffer );			length_escaped = length;			p = s;			while( ( p = strchr( p, '//' ) ) )				length_escaped++;			if( msglen + length_escaped + 1 + 5 < sizeof( message ) )			{				for( j = 0; j < length; j++ )				{					assert( s[j] != '//' );					if( s[j] == '"' )						message[pos++] = '//';					message[pos++] = s[j];				}			}		}	}	if( pos == pos_bak )		return;	message[pos++] = '"';	message[pos] = '/0';	SV_AddGameCommand( client, message );}
开发者ID:cfr,项目名称:qfusion,代码行数:67,


示例19: CL_CgameSystemCalls

/*====================CL_CgameSystemCallsThe cgame module is making a system call====================*/intptr_t CL_CgameSystemCalls( intptr_t *args ) {	switch( args[0] ) {	case CG_PRINT:		Com_Printf( "%s", (const char*)VMA(1) );		return 0;	case CG_ERROR:		Com_Error( ERR_DROP, "%s", (const char*)VMA(1) );		return 0;	case CG_MILLISECONDS:		return Sys_Milliseconds();	case CG_CVAR_REGISTER:		Cvar_Register( VMA(1), VMA(2), VMA(3), args[4] ); 		return 0;	case CG_CVAR_UPDATE:		Cvar_Update( VMA(1) );		return 0;	case CG_CVAR_SET:		Cvar_Set( VMA(1), VMA(2) );		return 0;	case CG_CVAR_VARIABLESTRINGBUFFER:		Cvar_VariableStringBuffer( VMA(1), VMA(2), args[3] );		return 0;	case CG_ARGC:		return Cmd_Argc();	case CG_ARGV:		Cmd_ArgvBuffer( args[1], VMA(2), args[3] );		return 0;	case CG_ARGS:		Cmd_ArgsBuffer( VMA(1), args[2] );		return 0;	case CG_LITERAL_ARGS:		Cmd_LiteralArgsBuffer( VMA(1), args[2] );		return 0;	case CG_FS_FOPENFILE:		return FS_FOpenFileByMode( VMA(1), VMA(2), args[3] );	case CG_FS_READ:		FS_Read2( VMA(1), args[2], args[3] );		return 0;	case CG_FS_WRITE:		FS_Write( VMA(1), args[2], args[3] );		return 0;	case CG_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case CG_FS_SEEK:		return FS_Seek( args[1], args[2], args[3] );	case CG_FS_GETFILELIST:		return FS_GetFileList( VMA(1), VMA(2), VMA(3), args[4] );	case CG_SENDCONSOLECOMMAND:		Cbuf_AddText( VMA(1) );		return 0;	case CG_ADDCOMMAND:		CL_AddCgameCommand( VMA(1) );		return 0;	case CG_REMOVECOMMAND:		Cmd_RemoveCommand( VMA(1) );		return 0;	case CG_SENDCLIENTCOMMAND:		CL_AddReliableCommand( VMA(1) );		return 0;	case CG_UPDATESCREEN:		// this is used during lengthy level loading, so pump message loop//		Com_EventLoop();	// FIXME: if a server restarts here, BAD THINGS HAPPEN!// We can't call Com_EventLoop here, a restart will crash and this _does_ happen// if there is a map change while we are downloading at pk3.// ZOID		SCR_UpdateScreen();		return 0;	case CG_CM_LOADMAP:		CL_CM_LoadMap( VMA(1) );		return 0;	case CG_CM_NUMINLINEMODELS:		return CM_NumInlineModels();	case CG_CM_INLINEMODEL:		return CM_InlineModel( args[1] );	case CG_CM_TEMPBOXMODEL:		return CM_TempBoxModel( VMA(1), VMA(2), /*int capsule*/ qfalse );	case CG_CM_TEMPCAPSULEMODEL:		return CM_TempBoxModel( VMA(1), VMA(2), /*int capsule*/ qtrue );	case CG_CM_POINTCONTENTS:		return CM_PointContents( VMA(1), args[2] );	case CG_CM_TRANSFORMEDPOINTCONTENTS:		return CM_TransformedPointContents( VMA(1), args[2], VMA(3), VMA(4) );	case CG_CM_BOXTRACE:		CM_BoxTrace( VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], TT_AABB );		return 0;	case CG_CM_CAPSULETRACE:		CM_BoxTrace( VMA(1), VMA(2), VMA(3), VMA(4), VMA(5), args[6], args[7], TT_CAPSULE );		return 0;	case CG_CM_TRANSFORMEDBOXTRACE:		CM_TransformedBoxTrace( VMA(1), VMA(2), VMA(3), VMA(4), VMA(5),				args[6], args[7], VMA(8), VMA(9), TT_AABB );		return 0;//.........这里部分代码省略.........
开发者ID:ksritharan,项目名称:fsm-trem,代码行数:101,


示例20: TV_Upstream_NextDemo

/** TV_Upstream_NextDemo*/void TV_Upstream_NextDemo( const char *demoname, const char *curdemo, qboolean randomize, char **name, char **filepath ){	int i, j, total;	size_t bufsize, len, dir_size;	char *file, *buf, **match, *dir;	const char *extension, *pattern, *p;	*name = *filepath = NULL;	assert( demoname );	assert( *demoname );	buf = NULL;	bufsize = 0;	total = 0;	// check if user specified a demo pattern (e.g. "tutorials/*.wd10") or a demolist filename	extension = COM_FileExtension( demoname );	if( extension && !Q_stricmp( extension, APP_DEMO_EXTENSION_STR ) )		pattern = demoname;	else		pattern = "";	dir_size = strlen( "demos" ) + strlen( pattern ) + 1;	dir = Mem_TempMalloc( dir_size );	strcpy( dir, "demos" );	if( *pattern )	{		// find first character that looks like a wildcard		const char *last_slash = NULL;		p = pattern;		do		{			if( *p == '/' )				last_slash = p;			else if( *p == '?' || *p == '*' || *p == '[' )				break;		} while( *++p );		// append the path part of wildcard to dir and shift the pattern		if( last_slash )		{			Q_strncatz( dir, "/", dir_size );			Q_strncatz( dir, pattern, strlen( dir ) + (last_slash - pattern) + 1 );			pattern = last_slash + 1;		}		bufsize = 0;		total = FS_GetFileListExt( dir, APP_DEMO_EXTENSION_STR, NULL, &bufsize, 0, 0 );		if( !total )			bufsize = 0;		if( bufsize )		{			buf = Mem_TempMalloc( bufsize );			FS_GetFileList( dir, APP_DEMO_EXTENSION_STR, buf, bufsize, 0, 0 );		}	}	else	{		// load demolist file and pick next available demo		int filehandle = 0, filelen = -1;		// load list from file		filelen = FS_FOpenFile( demoname, &filehandle, FS_READ );		if( filehandle && filelen > 0 )		{			bufsize = (size_t)(filelen + 1);			buf = Mem_TempMalloc( bufsize );			FS_Read( buf, filelen, filehandle );			FS_FCloseFile( filehandle );		}		// parse the list stripping CRLF characters		if( buf )		{			p = strtok( buf, "/r/n" );			if( p )			{				char *newbuf;				size_t newbufsize;				newbufsize = 0;				newbuf = Mem_TempMalloc( bufsize );				while( p != NULL )				{					total++;					Q_strncpyz( newbuf + newbufsize, p, bufsize - newbufsize );					newbufsize += strlen( p ) + 1;					p = strtok( NULL, "/r/n" );				}				Mem_TempFree( buf );				buf = newbuf;//.........这里部分代码省略.........
开发者ID:codetwister,项目名称:qfusion,代码行数:101,


示例21: CL_UISystemCalls

//.........这里部分代码省略.........			Cmd_ArgvBuffer( args[ 1 ], VMA( 2 ), args[ 3 ] );			return 0;		case UI_CMD_EXECUTETEXT:			Cbuf_ExecuteText( args[ 1 ], VMA( 2 ) );			return 0;		case UI_ADDCOMMAND:			Cmd_AddCommand( VMA( 1 ), NULL );			return 0;		case UI_FS_FOPENFILE:			return FS_FOpenFileByMode( VMA( 1 ), VMA( 2 ), args[ 3 ] );		case UI_FS_READ:			VM_CheckBlock( args[1], args[2], "FSREAD" );			FS_Read2( VMA( 1 ), args[ 2 ], args[ 3 ] );			return 0;		case UI_FS_WRITE:			VM_CheckBlock( args[1], args[2], "FSWRITE" );			FS_Write( VMA( 1 ), args[ 2 ], args[ 3 ] );			return 0;		case UI_FS_FCLOSEFILE:			FS_FCloseFile( args[ 1 ] );			return 0;		case UI_FS_DELETEFILE:			return FS_Delete( VMA( 1 ) );		case UI_FS_GETFILELIST:			VM_CheckBlock( args[3], args[4], "FSGFL" );			return FS_GetFileList( VMA( 1 ), VMA( 2 ), VMA( 3 ), args[ 4 ] );		case UI_FS_SEEK:			return FS_Seek( args[ 1 ], args[ 2 ], args[ 3 ] );		case UI_R_REGISTERMODEL:			return re.RegisterModel( VMA( 1 ) );		case UI_R_REGISTERSKIN:			return re.RegisterSkin( VMA( 1 ) );		case UI_R_REGISTERSHADERNOMIP:			return re.RegisterShaderNoMip( VMA( 1 ) );		case UI_R_CLEARSCENE:			re.ClearScene();			return 0;		case UI_R_ADDREFENTITYTOSCENE:			re.AddRefEntityToScene( VMA( 1 ) );			return 0;		case UI_R_ADDPOLYTOSCENE:			re.AddPolyToScene( args[ 1 ], args[ 2 ], VMA( 3 ) );			return 0;			// Ridah		case UI_R_ADDPOLYSTOSCENE:			re.AddPolysToScene( args[ 1 ], args[ 2 ], VMA( 3 ), args[ 4 ] );			return 0;			// done.		case UI_R_ADDLIGHTTOSCENE:
开发者ID:ghostmod,项目名称:Unvanquished,代码行数:67,


示例22: SV_GameSystemCalls

/*====================SV_GameSystemCallsThe module is making a system call====================*/intptr_t SV_GameSystemCalls(intptr_t * args) {	switch (args[0]) {		case G_PRINT:			Com_Printf("%s", (char *)VMA(1));			return 0;		case G_ERROR:			Com_Error(ERR_DROP, "%s", (char *)VMA(1));			return 0;		case G_MILLISECONDS:			return Sys_Milliseconds();		case G_CVAR_REGISTER:			Cvar_Register((vmCvar_t*)VMA(1), (char*)VMA(2), (char*)VMA(3), args[4]);			return 0;		case G_CVAR_UPDATE:			Cvar_Update((vmCvar_t*)VMA(1));			return 0;		case G_CVAR_SET:			Cvar_Set((const char *)VMA(1), (const char *)VMA(2));			return 0;		case G_CVAR_VARIABLE_INTEGER_VALUE:			return Cvar_VariableIntegerValue((const char *)VMA(1));		case G_CVAR_VARIABLE_STRING_BUFFER:			Cvar_VariableStringBuffer((char *)VMA(1), (char*)VMA(2), args[3]);			return 0;		case G_CVAR_LATCHEDVARIABLESTRINGBUFFER:			Cvar_LatchedVariableStringBuffer((char *)VMA(1), (char*)VMA(2), args[3]);			return 0;		case G_ARGC:			return Cmd_Argc();		case G_ARGV:			Cmd_ArgvBuffer(args[1], (char*)VMA(2), args[3]);			return 0;		case G_SEND_CONSOLE_COMMAND:			Cbuf_ExecuteText(args[1], (char *)VMA(2));			return 0;		case G_FS_FOPEN_FILE:			return FS_FOpenFileByMode((char *)VMA(1), (fileHandle_t*)VMA(2), (fsMode_t)args[3]);		case G_FS_READ:			FS_Read2(VMA(1), args[2], args[3]);			return 0;		case G_FS_WRITE:			return FS_Write(VMA(1), args[2], args[3]);		case G_FS_RENAME:			FS_Rename((char *)VMA(1), (char *)VMA(2));			return 0;		case G_FS_FCLOSE_FILE:			FS_FCloseFile(args[1]);			return 0;		case G_FS_GETFILELIST:			return FS_GetFileList((char *)VMA(1), (char *)VMA(2), (char*)VMA(3), args[4]);		case G_LOCATE_GAME_DATA:			SV_LocateGameData((sharedEntity_t*)VMA(1), args[2], args[3], (playerState_t*)VMA(4), args[5]);			return 0;		case G_DROP_CLIENT:			SV_GameDropClient(args[1], (char*)VMA(2), args[3]);			return 0;		case G_SEND_SERVER_COMMAND:			SV_GameSendServerCommand(args[1], (char*)VMA(2));			return 0;		case G_LINKENTITY:			SV_LinkEntity((sharedEntity_t*)VMA(1));			return 0;		case G_UNLINKENTITY:			SV_UnlinkEntity((sharedEntity_t*)VMA(1));			return 0;		case G_ENTITIES_IN_BOX:			return SV_AreaEntities((float*)VMA(1), (float*)VMA(2), (int*)VMA(3), args[4]);		case G_ENTITY_CONTACT:			return SV_EntityContact((float*)VMA(1), (float*)VMA(2), (sharedEntity_t*)VMA(3), TT_AABB);		case G_ENTITY_CONTACTCAPSULE:			return SV_EntityContact((float*)VMA(1), (float*)VMA(2), (sharedEntity_t*)VMA(3), TT_CAPSULE);		case G_TRACE:			SV_Trace((trace_t*)VMA(1), (float*)VMA(2), (float*)VMA(3), (float*)VMA(4), (float*)VMA(5), args[6], args[7], TT_AABB);			return 0;		case G_TRACECAPSULE:			SV_Trace((trace_t*)VMA(1), (float*)VMA(2), (float*)VMA(3), (float*)VMA(4), (float*)VMA(5), args[6], args[7], TT_CAPSULE);			return 0;		case G_POINT_CONTENTS:			return SV_PointContents((float*)VMA(1), args[2]);		case G_SET_BRUSH_MODEL:			SV_SetBrushModel((sharedEntity_t*)VMA(1), (char*)VMA(2));			return 0;		case G_IN_PVS:			return SV_inPVS((float*)VMA(1), (float*)VMA(2));		case G_IN_PVS_IGNORE_PORTALS:			return SV_inPVSIgnorePortals((float*)VMA(1), (float*)VMA(2));		case G_SET_CONFIGSTRING:			SV_SetConfigstring(args[1], (char*)VMA(2));			return 0;		case G_GET_CONFIGSTRING:			SV_GetConfigstring(args[1], (char*)VMA(2), args[3]);			return 0;		case G_SET_CONFIGSTRING_RESTRICTIONS://.........这里部分代码省略.........
开发者ID:TheDushan,项目名称:OpenWolf,代码行数:101,


示例23: CL_CgameSystemCalls

/*=======================================================================================================================================CL_CgameSystemCallsThe cgame module is making a system call.=======================================================================================================================================*/intptr_t CL_CgameSystemCalls(intptr_t *args) {	switch (args[0]) {		case TRAP_MEMSET:			Com_Memset(VMA(1), args[2], args[3]);			return 0;		case TRAP_MEMCPY:			Com_Memcpy(VMA(1), VMA(2), args[3]);			return 0;		case TRAP_STRNCPY:			strncpy(VMA(1), VMA(2), args[3]);			return args[1];		case TRAP_SIN:			return FloatAsInt(sin(VMF(1)));		case TRAP_COS:			return FloatAsInt(cos(VMF(1)));		case TRAP_ATAN2:			return FloatAsInt(atan2(VMF(1), VMF(2)));		case TRAP_SQRT:			return FloatAsInt(sqrt(VMF(1)));		case TRAP_FLOOR:			return FloatAsInt(floor(VMF(1)));		case TRAP_CEIL:			return FloatAsInt(ceil(VMF(1)));		case TRAP_ACOS:			return FloatAsInt(Q_acos(VMF(1)));		case CG_PRINT:			Com_Printf("%s", (const char *)VMA(1));			return 0;		case CG_ERROR:			Com_Error(ERR_DROP, "%s", (const char *)VMA(1));			return 0;		case CG_MILLISECONDS:			return Sys_Milliseconds();		case CG_REAL_TIME:			return Com_RealTime(VMA(1));		case CG_SNAPVECTOR:			Q_SnapVector(VMA(1));			return 0;		case CG_ARGC:			return Cmd_Argc();		case CG_ARGV:			Cmd_ArgvBuffer(args[1], VMA(2), args[3]);			return 0;		case CG_ARGS:			Cmd_ArgsBuffer(VMA(1), args[2]);			return 0;		case CG_ADDCOMMAND:			CL_AddCgameCommand(VMA(1));			return 0;		case CG_REMOVECOMMAND:			Cmd_RemoveCommandSafe(VMA(1));			return 0;		case CG_CMD_EXECUTETEXT:			Cbuf_ExecuteTextSafe(args[1], VMA(2));			return 0;		case CG_CVAR_REGISTER:			Cvar_Register(VMA(1), VMA(2), VMA(3), args[4]);			return 0;		case CG_CVAR_UPDATE:			Cvar_Update(VMA(1));			return 0;		case CG_CVAR_SET:			Cvar_SetSafe(VMA(1), VMA(2));			return 0;		case CG_CVAR_SET_VALUE:			Cvar_SetValueSafe(VMA(1), VMF(2));			return 0;		case CG_CVAR_VARIABLE_VALUE:			return FloatAsInt(Cvar_VariableValue(VMA(1)));		case CG_CVAR_VARIABLE_INTEGER_VALUE:			return Cvar_VariableIntegerValue(VMA(1));		case CG_CVAR_VARIABLE_STRING_BUFFER:			Cvar_VariableStringBuffer(VMA(1), VMA(2), args[3]);			return 0;		case CG_FS_FOPENFILE:			return FS_FOpenFileByMode(VMA(1), VMA(2), args[3]);		case CG_FS_READ:			FS_Read(VMA(1), args[2], args[3]);			return 0;		case CG_FS_WRITE:			FS_Write(VMA(1), args[2], args[3]);			return 0;		case CG_FS_SEEK:			return FS_Seek(args[1], args[2], args[3]);		case CG_FS_FCLOSEFILE:			FS_FCloseFile(args[1]);			return 0;		case CG_FS_GETFILELIST:			return FS_GetFileList(VMA(1), VMA(2), VMA(3), args[4]);		case CG_PC_ADD_GLOBAL_DEFINE:			return botlib_export->PC_AddGlobalDefine(VMA(1));		case CG_PC_LOAD_SOURCE://.........这里部分代码省略.........
开发者ID:KuehnhammerTobias,项目名称:ioqw,代码行数:101,


示例24: CL_CgameSystemCalls

/*====================CL_CgameSystemCallsThe cgame module is making a system call====================*/intptr_t CL_CgameSystemCalls( intptr_t *args ){	switch ( args[ 0 ] )	{		case CG_PRINT:			Com_Printf( "%s", ( char * ) VMA( 1 ) );			return 0;		case CG_ERROR:			Com_Error( ERR_DROP, "%s", ( char * ) VMA( 1 ) );		case CG_MILLISECONDS:			return Sys_Milliseconds();		case CG_CVAR_REGISTER:			Cvar_Register( VMA( 1 ), VMA( 2 ), VMA( 3 ), args[ 4 ] );			return 0;		case CG_CVAR_UPDATE:			Cvar_Update( VMA( 1 ) );			return 0;		case CG_CVAR_SET:			Cvar_Set( VMA( 1 ), VMA( 2 ) );			return 0;		case CG_CVAR_VARIABLESTRINGBUFFER:			VM_CheckBlock( args[2], args[3], "CVARVSB" );			Cvar_VariableStringBuffer( VMA( 1 ), VMA( 2 ), args[ 3 ] );			return 0;		case CG_CVAR_LATCHEDVARIABLESTRINGBUFFER:			VM_CheckBlock( args[2], args[3], "CVARLVSB" );			Cvar_LatchedVariableStringBuffer( VMA( 1 ), VMA( 2 ), args[ 3 ] );			return 0;		case CG_ARGC:			return Cmd_Argc();		case CG_ARGV:			VM_CheckBlock( args[2], args[3], "ARGV" );			Cmd_ArgvBuffer( args[ 1 ], VMA( 2 ), args[ 3 ] );			return 0;		case CG_ARGS:			VM_CheckBlock( args[1], args[2], "ARGS" );			Cmd_ArgsBuffer( VMA( 1 ), args[ 2 ] );			return 0;		case CG_LITERAL_ARGS:			// FIXME			VM_CheckBlock( args[1], args[2], "LARGS" );			Cmd_LiteralArgsBuffer( VMA( 1 ), args[ 2 ] );//                      Cmd_ArgsBuffer(VMA(1), args[2]);			return 0;		case CG_GETDEMOSTATE:			return CL_DemoState();		case CG_GETDEMOPOS:			return CL_DemoPos();		case CG_FS_FOPENFILE:			return FS_FOpenFileByMode( VMA( 1 ), VMA( 2 ), args[ 3 ] );		case CG_FS_READ:			VM_CheckBlock( args[1], args[2], "FSREAD" );			FS_Read2( VMA( 1 ), args[ 2 ], args[ 3 ] );			return 0;		case CG_FS_WRITE:			VM_CheckBlock( args[1], args[2], "FSWRITE" );			return FS_Write( VMA( 1 ), args[ 2 ], args[ 3 ] );		case CG_FS_FCLOSEFILE:			FS_FCloseFile( args[ 1 ] );			return 0;		case CG_FS_GETFILELIST:			VM_CheckBlock( args[3], args[4], "FSGFL" );			return FS_GetFileList( VMA( 1 ), VMA( 2 ), VMA( 3 ), args[ 4 ] );		case CG_FS_DELETEFILE:			return FS_Delete( VMA( 1 ) );		case CG_SENDCONSOLECOMMAND:			Cbuf_AddText( VMA( 1 ) );			return 0;		case CG_ADDCOMMAND:			CL_AddCgameCommand( VMA( 1 ) );			return 0;//.........这里部分代码省略.........
开发者ID:Sixthly,项目名称:Unvanquished,代码行数:101,


示例25: SV_Demo_Purge_f

/** SV_Demo_Purge_f* * Removes the server demo files*/void SV_Demo_Purge_f( void ){	char *buffer;	char *p, *s, num[8];	char path[256];	size_t extlen, length, bufSize;	unsigned int i, numdemos, numautodemos, maxautodemos;	if( Cmd_Argc() > 2 )	{		Com_Printf( "Usage: serverrecordpurge [maxautodemos]/n" );		return;	}	maxautodemos = 0;	if( Cmd_Argc() == 2 )		maxautodemos = atoi( Cmd_Argv( 1 ) );	numdemos = FS_GetFileListExt( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, NULL, &bufSize, 0, 0 );	if( !numdemos )		return;	extlen = strlen( APP_DEMO_EXTENSION_STR );	buffer = Mem_TempMalloc( bufSize );	FS_GetFileList( SV_DEMO_DIR, APP_DEMO_EXTENSION_STR, buffer, bufSize, 0, 0 );	numautodemos = 0;	s = buffer;	for( i = 0; i < numdemos; i++, s += length + 1 )	{		length = strlen( s );		if( length < strlen( "_auto9999" ) + extlen )			continue;		p = s + length - strlen( "_auto9999" ) - extlen;		if( strncmp( p, "_auto", strlen( "_auto" ) ) )			continue;		p += strlen( "_auto" );		Q_snprintfz( num, sizeof( num ), "%04i", atoi( p ) );		if( strncmp( p, num, 4 ) )			continue;		numautodemos++;	}	if( numautodemos <= maxautodemos )	{		Mem_TempFree( buffer );		return;	}	s = buffer;	for( i = 0; i < numdemos; i++, s += length + 1 )	{		length = strlen( s );		if( length < strlen( "_auto9999" ) + extlen )			continue;		p = s + length - strlen( "_auto9999" ) - extlen;		if( strncmp( p, "_auto", strlen( "_auto" ) ) )			continue;		p += strlen( "_auto" );		Q_snprintfz( num, sizeof( num ), "%04i", atoi( p ) );		if( strncmp( p, num, 4 ) )			continue;		Q_snprintfz( path, sizeof( path ), "%s/%s", SV_DEMO_DIR, s );		Com_Printf( "Removing old autorecord demo: %s/n", path );		if( !FS_RemoveFile( path ) )		{			Com_Printf( "Error, couldn't remove file: %s/n", path );			continue;		}		if( --numautodemos == maxautodemos )			break;	}	Mem_TempFree( buffer );}
开发者ID:cfr,项目名称:qfusion,代码行数:87,


示例26: CL_UISystemCalls

//.........这里部分代码省略.........		return 0;	case UI_CVAR_INFOSTRINGBUFFER:		Cvar_InfoStringBuffer( args[1], (char *)VMA(2), args[3] );		return 0;	case UI_ARGC:		return Cmd_Argc();	case UI_ARGV:		Cmd_ArgvBuffer( args[1], (char *)VMA(2), args[3] );		return 0;	case UI_CMD_EXECUTETEXT:		Cbuf_ExecuteText( args[1], (const char *)VMA(2) );		return 0;	case UI_FS_FOPENFILE:		return FS_FOpenFileByMode( (const char *)VMA(1), (int *)VMA(2), (fsMode_t)args[3] );	case UI_FS_READ:		FS_Read2( VMA(1), args[2], args[3] );		return 0;	case UI_FS_WRITE:		FS_Write( VMA(1), args[2], args[3] );		return 0;	case UI_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case UI_FS_GETFILELIST:		return FS_GetFileList( (const char *)VMA(1), (const char *)VMA(2), (char *)VMA(3), args[4] );	case UI_R_REGISTERMODEL:		return re.RegisterModel( (const char *)VMA(1) );	case UI_R_REGISTERSKIN:		return re.RegisterSkin( (const char *)VMA(1) );	case UI_R_REGISTERSHADERNOMIP:		return re.RegisterShaderNoMip( (const char *)VMA(1) );	case UI_R_SHADERNAMEFROMINDEX:		{			char *gameMem = (char *)VMA(1);			const char *retMem = re.ShaderNameFromIndex(args[2]);			if (retMem)			{				strcpy(gameMem, retMem);			}			else			{				gameMem[0] = 0;			}		}		return 0;	case UI_R_CLEARSCENE:		re.ClearScene();		return 0;	case UI_R_ADDREFENTITYTOSCENE:		re.AddRefEntityToScene( (const refEntity_t *)VMA(1) );		return 0;
开发者ID:entdark,项目名称:jaMME,代码行数:67,


示例27: CL_UISystemCalls

//.........这里部分代码省略.........#if defined RTCW_ET	case UI_ADDCOMMAND:		Cmd_AddCommand( static_cast<const char*> (VMA( 1 )), NULL );		return 0;#endif // RTCW_XX	case UI_FS_FOPENFILE:		return FS_FOpenFileByMode( static_cast<const char*> (VMA( 1 )), static_cast<fileHandle_t*> (VMA( 2 )), fsMode_t (args[3]) );	case UI_FS_READ:		FS_Read( VMA( 1 ), args[2], args[3] );		return 0;#if defined RTCW_SP//----(SA)	added	case UI_FS_SEEK:		FS_Seek( args[1], args[2], args[3] );		return 0;//----(SA)	end#endif // RTCW_XX	case UI_FS_WRITE:		FS_Write( VMA( 1 ), args[2], args[3] );		return 0;	case UI_FS_FCLOSEFILE:		FS_FCloseFile( args[1] );		return 0;	case UI_FS_DELETEFILE:		return FS_Delete( static_cast<char*> (VMA( 1 )) );	case UI_FS_GETFILELIST:		return FS_GetFileList( static_cast<const char*> (VMA( 1 )), static_cast<const char*> (VMA( 2 )), static_cast<char*> (VMA( 3 )), args[4] );	case UI_R_REGISTERMODEL:		return re.RegisterModel( static_cast<const char*> (VMA( 1 )) );	case UI_R_REGISTERSKIN:		return re.RegisterSkin( static_cast<const char*> (VMA( 1 )) );	case UI_R_REGISTERSHADERNOMIP:		return re.RegisterShaderNoMip( static_cast<const char*> (VMA( 1 )) );	case UI_R_CLEARSCENE:		re.ClearScene();		return 0;	case UI_R_ADDREFENTITYTOSCENE:		re.AddRefEntityToScene( static_cast<const refEntity_t*> (VMA( 1 )) );		return 0;	case UI_R_ADDPOLYTOSCENE:		re.AddPolyToScene( args[1], args[2], static_cast<const polyVert_t*> (VMA( 3 )) );		return 0;		// Ridah	case UI_R_ADDPOLYSTOSCENE:		re.AddPolysToScene( args[1], args[2], static_cast<const polyVert_t*> (VMA( 3 )), args[4] );		return 0;		// done.	case UI_R_ADDLIGHTTOSCENE:#if !defined RTCW_ET		re.AddLightToScene( static_cast<const vec_t*> (VMA( 1 )), VMF( 2 ), VMF( 3 ), VMF( 4 ), VMF( 5 ), args[6] );
开发者ID:bibendovsky,项目名称:rtcw,代码行数:67,



注:本文中的FS_GetFileList函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ FS_Open函数代码示例
C++ FS_Gamedir函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。