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

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

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

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

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

示例1: CL_Disconnect

/*=====================CL_DisconnectCalled when a connection, or cinematic is being terminated.Goes from a connected state to either a menu state or a console stateSends a disconnect message to the serverThis is also called on Com_Error and Com_Quit, so it shouldn't cause any errors=====================*/void CL_Disconnect( void ) {	if ( !com_cl_running || !com_cl_running->integer ) {		return;	}	if (cls.uiStarted)		UI_SetActiveMenu( NULL,NULL );	SCR_StopCinematic ();	S_ClearSoundBuffer();	// send a disconnect message to the server	// send it a few times in case one is dropped	if ( cls.state >= CA_CONNECTED ) {		CL_AddReliableCommand( "disconnect" );		CL_WritePacket();		CL_WritePacket();		CL_WritePacket();	}		CL_ClearState ();	CL_FreeReliableCommands();	extern void CL_FreeServerCommands(void);	CL_FreeServerCommands();	memset( &clc, 0, sizeof( clc ) );	cls.state = CA_DISCONNECTED;	// allow cheats locally	Cvar_Set( "timescale", "1" );//jic we were skipping	Cvar_Set( "skippingCinematic", "0" );//jic we were skipping}
开发者ID:Delfin1,项目名称:OpenJK,代码行数:45,


示例2: CL_Disconnect

/*=====================CL_DisconnectCalled when a connection, or cinematic is being terminated.Goes from a connected state to either a menu state or a console stateSends a disconnect message to the serverThis is also called on Com_Error and Com_Quit, so it shouldn't cause any errors=====================*/void CL_Disconnect( void ) {	if ( !com_cl_running || !com_cl_running->integer ) {		return;	}#ifdef _XBOX	Cvar_Set("r_norefresh", "0");	// Make sure to stop all rumbling! - Prevents bug when quitting game during rumble:	extern void IN_KillRumbleScripts( void );	IN_KillRumbleScripts();#endif	if (cls.uiStarted)		UI_SetActiveMenu( NULL,NULL );	SCR_StopCinematic ();	S_ClearSoundBuffer();#ifdef _XBOX//	extern qboolean RE_RegisterImages_LevelLoadEnd(void);//	RE_RegisterImages_LevelLoadEnd();	R_DeleteTextures();#endif	// send a disconnect message to the server	// send it a few times in case one is dropped	if ( cls.state >= CA_CONNECTED ) {		CL_AddReliableCommand( "disconnect" );		CL_WritePacket();		CL_WritePacket();		CL_WritePacket();	}		CL_ClearState ();	CL_FreeReliableCommands();	extern void CL_FreeServerCommands(void);	CL_FreeServerCommands();	memset( &clc, 0, sizeof( clc ) );	cls.state = CA_DISCONNECTED;	// allow cheats locally	Cvar_Set( "timescale", "1" );//jic we were skipping	Cvar_Set( "skippingCinematic", "0" );//jic we were skipping}
开发者ID:Drakesinger,项目名称:jediacademypc,代码行数:59,


示例3: CL_SendCmd

/*=================CL_SendCmdCalled every frame to builds and sends a command packet to the server.=================*/voidCL_SendCmd(void){  // don't send any message if not connected  if (clc.state < CA_CONNECTED)  {    return;  }  // don't send commands if paused  if (com_sv_running->integer && sv_paused->integer && cl_paused->integer)  {    return;  }  // we create commands even if a demo is playing,  CL_CreateNewCommands();  // don't send a packet if the last packet was sent too recently  if (!CL_ReadyToSendPacket())  {    if (cl_showSend->integer)    {      Com_Printf(". ");    }    return;  }  CL_WritePacket();}
开发者ID:lrq3000,项目名称:ioquake3-anti-cheat,代码行数:37,


示例4: CL_SendCmd

/*=================CL_SendCmdCalled every frame to builds and sends a command packet to the server.=================*/void CL_SendCmd( void ){	// we create commands even if a demo is playing,	CL_CreateCmd();	// clc_move, userinfo etc	CL_WritePacket();	// make sure what menu and CL_WritePacket catch changes	userinfo->modified = false;}
开发者ID:Reedych,项目名称:xash3d,代码行数:17,


示例5: CL_Disconnect

/*=====================CL_DisconnectCalled when a connection, or cinematic is being terminated.Goes from a connected state to either a menu state or a console stateSends a disconnect message to the serverThis is also called on Com_Error and Com_Quit, so it shouldn't cause any errors=====================*/void CL_Disconnect( void ) {	int		i;	if ( !com_cl_running || !com_cl_running->integer ) {		return;	}	if (cls.uiStarted)		UI_SetActiveMenu( NULL,NULL );	SCR_StopCinematic ();	S_ClearSoundBuffer();	// send a disconnect message to the server	// send it a few times in case one is dropped	if ( cls.state >= CA_CONNECTED ) {		CL_AddReliableCommand( "disconnect" );		CL_WritePacket();		CL_WritePacket();		CL_WritePacket();	}		CL_ClearState ();	// wipe the client connection	for ( i = 0 ; i < MAX_RELIABLE_COMMANDS ; i++ ) {		if ( clc.reliableCommands[i] ) {			Z_Free( clc.reliableCommands[i] );		}	}	memset( &clc, 0, sizeof( clc ) );	cls.state = CA_DISCONNECTED;	// allow cheats locally	Cvar_Set( "timescale", "1" );//jic we were skipping	Cvar_Set( "skippingCinematic", "0" );//jic we were skipping}
开发者ID:Agustinlv,项目名称:BlueHarvest,代码行数:48,


示例6: CL_ParseDownload

//.........这里部分代码省略.........			{				CL_AddReliableCommand( "wwwdl bbl8r" );				cls.bWWWDlDisconnected = qtrue;			}			return;		}		else		{			// server keeps sending that message till we ack it, eat and ignore			//MSG_ReadLong( msg );			MSG_ReadString( msg );			MSG_ReadLong( msg );			MSG_ReadLong( msg );			return;		}	}	if ( !block )	{		// block zero is special, contains file size		clc.downloadSize = MSG_ReadLong( msg );		Cvar_SetValue( "cl_downloadSize", clc.downloadSize );		if ( clc.downloadSize < 0 )		{			Com_Error( ERR_DROP, "%s", MSG_ReadString( msg ) );		}	}	size = MSG_ReadShort( msg );	if ( size < 0 || size > sizeof( data ) )	{		Com_Error( ERR_DROP, "CL_ParseDownload: Invalid size %d for download chunk.", size );	}	MSG_ReadData( msg, data, size );	if ( clc.downloadBlock != block )	{		Com_DPrintf( "CL_ParseDownload: Expected block %d, got %d/n", clc.downloadBlock, block );		return;	}	// open the file if not opened yet	if ( !clc.download )	{		clc.download = FS_SV_FOpenFileWrite( cls.downloadTempName );		if ( !clc.download )		{			Com_Printf(_( "Could not create %s/n"), cls.downloadTempName );			CL_AddReliableCommand( "stopdl" );			CL_NextDownload();			return;		}	}	if ( size )	{		FS_Write( data, size, clc.download );	}	CL_AddReliableCommand( va( "nextdl %d", clc.downloadBlock ) );	clc.downloadBlock++;	clc.downloadCount += size;	// So UI gets access to it	Cvar_SetValue( "cl_downloadCount", clc.downloadCount );	if ( !size )	{		// A zero length block means EOF		if ( clc.download )		{			FS_FCloseFile( clc.download );			clc.download = 0;			// rename the file			FS_SV_Rename( cls.downloadTempName, cls.downloadName );		}		*cls.downloadTempName = *cls.downloadName = 0;		Cvar_Set( "cl_downloadName", "" );		// send intentions now		// We need this because without it, we would hold the last nextdl and then start		// loading right away.  If we take a while to load, the server is happily trying		// to send us that last block over and over.		// Write it twice to help make sure we acknowledge the download		CL_WritePacket();		CL_WritePacket();		// get another file if needed		CL_NextDownload();	}}
开发者ID:justhacking,项目名称:Unvanquished,代码行数:101,


示例7: CL_cURL_BeginDownload

void CL_cURL_BeginDownload( const char *localName, const char *remoteURL ){    clc.cURLUsed = qtrue;    Com_Printf("URL: %s/n", remoteURL);    Com_DPrintf("***** CL_cURL_BeginDownload *****/n"                "Localname: %s/n"                "RemoteURL: %s/n"                "****************************/n", localName, remoteURL);    CL_cURL_Cleanup();    Q_strncpyz(clc.downloadURL, remoteURL, sizeof(clc.downloadURL));    Q_strncpyz(clc.downloadName, localName, sizeof(clc.downloadName));    Com_sprintf(clc.downloadTempName, sizeof(clc.downloadTempName),                "%s.tmp", localName);    // Set so UI gets access to it    Cvar_Set("cl_downloadName", localName);    Cvar_Set("cl_downloadSize", "0");    Cvar_Set("cl_downloadCount", "0");    Cvar_SetValue("cl_downloadTime", cls.realtime);    clc.downloadBlock = 0; // Starting new file    clc.downloadCount = 0;    clc.downloadCURL = qcurl_easy_init();    if(!clc.downloadCURL) {        Com_Error(ERR_DROP, "CL_cURL_BeginDownload: qcurl_easy_init() "                  "failed/n");        return;    }    clc.download = FS_SV_FOpenFileWrite(clc.downloadTempName);    if(!clc.download) {        Com_Error(ERR_DROP, "CL_cURL_BeginDownload: failed to open "                  "%s for writing/n", clc.downloadTempName);        return;    }    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_WRITEDATA, clc.download);    if(com_developer->integer)        qcurl_easy_setopt(clc.downloadCURL, CURLOPT_VERBOSE, 1);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_URL, clc.downloadURL);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_TRANSFERTEXT, 0);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_REFERER, va("ioQ3://%s",                      NET_AdrToString(clc.serverAddress)));    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_USERAGENT, va("%s %s",                      Q3_VERSION, qcurl_version()));    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_WRITEFUNCTION,                      CL_cURL_CallbackWrite);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_WRITEDATA, &clc.download);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_NOPROGRESS, 0);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_PROGRESSFUNCTION,                      CL_cURL_CallbackProgress);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_PROGRESSDATA, NULL);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_FAILONERROR, 1);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_FOLLOWLOCATION, 1);    qcurl_easy_setopt(clc.downloadCURL, CURLOPT_MAXREDIRS, 5);    clc.downloadCURLM = qcurl_multi_init();    if(!clc.downloadCURLM) {        qcurl_easy_cleanup(clc.downloadCURL);        clc.downloadCURL = NULL;        Com_Error(ERR_DROP, "CL_cURL_BeginDownload: qcurl_multi_init() "                  "failed/n");        return;    }    qcurl_multi_add_handle(clc.downloadCURLM, clc.downloadCURL);    if(!(clc.sv_allowDownload & DLF_NO_DISCONNECT) &&            !clc.cURLDisconnected) {        CL_AddReliableCommand("disconnect");        CL_WritePacket();        CL_WritePacket();        CL_WritePacket();        clc.cURLDisconnected = qtrue;    }}
开发者ID:tariqhamid,项目名称:quake3,代码行数:74,


示例8: CL_ParseDownload

/*=====================CL_ParseDownloadA download message has been received from the server=====================*/void CL_ParseDownload ( msg_t *msg ) {	int		size;	unsigned char data[MAX_MSGLEN];	uint16_t block;	if (!*clc.downloadTempName) {		Com_Printf("Server sending download, but no download was requested/n");		CL_AddReliableCommand("stopdl", qfalse);		return;	}	// read the data	block = MSG_ReadShort ( msg );	if(!block && !clc.downloadBlock)	{		// block zero is special, contains file size		clc.downloadSize = MSG_ReadLong ( msg );		Cvar_SetValue( "cl_downloadSize", clc.downloadSize );		if (clc.downloadSize < 0)		{			Com_Error( ERR_DROP, "%s", MSG_ReadString( msg ) );			return;		}	}	size = MSG_ReadShort ( msg );	if (size < 0 || size > sizeof(data))	{		Com_Error(ERR_DROP, "CL_ParseDownload: Invalid size %d for download chunk", size);		return;	}		MSG_ReadData(msg, data, size);	if((clc.downloadBlock & 0xFFFF) != block)	{		Com_DPrintf( "CL_ParseDownload: Expected block %d, got %d/n", (clc.downloadBlock & 0xFFFF), block);		return;	}	// open the file if not opened yet	if (!clc.download)	{		clc.download = FS_SV_FOpenFileWrite( clc.downloadTempName );		if (!clc.download) {			Com_Printf( "Could not create %s/n", clc.downloadTempName );			CL_AddReliableCommand("stopdl", qfalse);			CL_NextDownload();			return;		}	}	if (size)		FS_Write( data, size, clc.download );	CL_AddReliableCommand(va("nextdl %d", clc.downloadBlock), qfalse);	clc.downloadBlock++;	clc.downloadCount += size;	// So UI gets access to it	Cvar_SetValue( "cl_downloadCount", clc.downloadCount );	if (!size) { // A zero length block means EOF		if (clc.download) {			FS_FCloseFile( clc.download );			clc.download = 0;			// rename the file			FS_SV_Rename ( clc.downloadTempName, clc.downloadName, qfalse );		}		// send intentions now		// We need this because without it, we would hold the last nextdl and then start		// loading right away.  If we take a while to load, the server is happily trying		// to send us that last block over and over.		// Write it twice to help make sure we acknowledge the download		CL_WritePacket();		CL_WritePacket();		// get another file if needed		CL_NextDownload ();	}}
开发者ID:darklegion,项目名称:tremulous,代码行数:95,



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


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