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

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

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

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

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

示例1: CG_FireteamHasClass

qboolean CG_FireteamHasClass(int classnum, qboolean selectedonly) {	fireteamData_t *ft;	int            i;	ft = CG_IsOnFireteam(cg.clientNum);	if (!ft) {		return qfalse;	}	for (i = 0; i < MAX_CLIENTS; i++) {		if (!cgs.clientinfo[i].infoValid) {			continue;		}		if (ft != CG_IsOnFireteam(i)) {			continue;		}		if (cgs.clientinfo[i].cls != classnum) {			continue;		}		if (selectedonly && !cgs.clientinfo[i].selected) {			continue;		}		return qtrue;	}	return qfalse;}
开发者ID:Exosum,项目名称:ETrun,代码行数:31,


示例2: CG_IsOnFireteam

// Client, not sorted by rank, on CLIENT'S fireteamclientInfo_t *CG_FireTeamPlayerForPosition(int pos, int max){	int            i, cnt = 0;	fireteamData_t *f = CG_IsOnFireteam(cg.clientNum);	if (!f)	{		return NULL;	}	for (i = 0; i < MAX_CLIENTS && cnt < max; i++)	{		if (cgs.clientinfo[i].infoValid && cgs.clientinfo[cg.clientNum].team == cgs.clientinfo[i].team)		{			if (!(f == CG_IsOnFireteam(i)))			{				continue;			}			if (cnt == pos)			{				return &cgs.clientinfo[i];			}			cnt++;		}	}	return NULL;}
开发者ID:belstgut,项目名称:etlegacy,代码行数:30,


示例3: CG_IsOnFireteam

// Fireteam that both specified clients are on, if they both are on the same teamfireteamData_t *CG_IsOnSameFireteam(int clientNum, int clientNum2) {	if (CG_IsOnFireteam(clientNum) == CG_IsOnFireteam(clientNum2)) {		return CG_IsOnFireteam(clientNum);	}	return NULL;}
开发者ID:Exosum,项目名称:ETrun,代码行数:8,


示例4: CG_CountPlayersSF

int CG_CountPlayersSF(void){	int             i, cnt = 0;	for (i = 0; i < MAX_CLIENTS; i++)	{		if (i == cg.clientNum)		{			continue;		}		if (!cgs.clientinfo[i].infoValid)		{			continue;		}		if (cgs.clientinfo[i].team != cgs.clientinfo[cg.clientNum].team)		{			continue;		}		if (CG_IsOnFireteam(i) != CG_IsOnFireteam(cg.clientNum))		{			continue;		}		cnt++;	}	return cnt;}
开发者ID:morsik,项目名称:warpig,代码行数:31,


示例5: CG_IsOnFireteam

// Client, sorted by rank, on CLIENT'S fireteamclientInfo_t *CG_SortedFireTeamPlayerForPosition(int pos, int max){	int            i, cnt = 0;	fireteamData_t *f = CG_IsOnFireteam(cg.clientNum);	if (!f)	{		return NULL;	}	for (i = 0; i < MAX_CLIENTS && cnt < max; i++)	{		if (!(f == CG_IsOnFireteam(sortedFireTeamClients[i])))		{			return NULL;		}		if (cnt == pos)		{			return &cgs.clientinfo[sortedFireTeamClients[i]];		}		cnt++;	}	return NULL;}
开发者ID:morsik,项目名称:war-territory,代码行数:27,


示例6: CG_PlayerNFFromPos

int CG_PlayerNFFromPos(int pos, int *pageofs){	int             x, i;	if (!CG_IsOnFireteam(cg.clientNum))	{		*pageofs = 0;		return -1;	}	x = CG_CountPlayersNF();	if (x < ((*pageofs) * 8))	{		*pageofs = 0;	}	x = 0;	for (i = 0; i < MAX_CLIENTS; i++)	{		if (i == cg.clientNum)		{			continue;		}		if (!cgs.clientinfo[i].infoValid)		{			continue;		}		if (cgs.clientinfo[i].team != cgs.clientinfo[cg.clientNum].team)		{			continue;		}		if (CG_IsOnFireteam(i))		{			continue;		}		if (x >= ((*pageofs) * 8) && x < ((*pageofs + 1) * 8))		{			int             ofs = x - ((*pageofs) * 8);			if (pos == ofs)			{				return i;			}		}		x++;	}	return -1;}
开发者ID:morsik,项目名称:warpig,代码行数:56,


示例7: CG_DrawUpperRight

/*=====================CG_DrawUpperRight=====================*/void CG_DrawUpperRight(void){	int y = 152; // 20 + 100 + 32;	if (cg_drawFireteamOverlay.integer && CG_IsOnFireteam(cg.clientNum))	{		CG_DrawFireTeamOverlay(&activehud->fireteam.location);	}	if (!(cg.snap->ps.pm_flags & PMF_LIMBO) && (cg.snap->ps.persistant[PERS_TEAM] != TEAM_SPECTATOR) &&	    (cgs.autoMapExpanded || (!cgs.autoMapExpanded && (cg.time - cgs.autoMapExpandTime < 250.f))))	{		return;	}	if (cg_drawRoundTimer.integer)	{		y = CG_DrawTimer(y);	}	if (cg_drawFPS.integer)	{		y = CG_DrawFPS(y);	}	if (cg_drawSnapshot.integer)	{		y = CG_DrawSnapshot(y);	}}
开发者ID:sxweet,项目名称:etlegacy,代码行数:35,


示例8: CG_QuickFireteams_f

static void CG_QuickFireteams_f( void ) {	if( cg.showFireteamMenu ) {		if( cgs.ftMenuMode == 0 ) {			CG_EventHandling( CGAME_EVENT_NONE, qfalse );		} else {			cgs.ftMenuMode = 0;		}	} else if( CG_IsOnFireteam( cg.clientNum ) ) {		CG_EventHandling( CGAME_EVENT_FIRETEAMMSG, qfalse );		cgs.ftMenuMode = 0;	}}
开发者ID:BackupTheBerlios,项目名称:et-flf-svn,代码行数:12,


示例9: CG_IsFireTeamLeader

// Fireteam that specified client is leader of, or NULL if nonefireteamData_t* CG_IsFireTeamLeader( int clientNum ) {	fireteamData_t* f;	if(!(f = CG_IsOnFireteam(clientNum))) {		return NULL;	}	if(f->leader != clientNum) {		return NULL;	}	return f ;}
开发者ID:GenaSG,项目名称:ET,代码行数:14,


示例10: CG_ClientInfoForPosition

// Client, not on a fireteam, not sorted, but on your teamclientInfo_t* CG_ClientInfoForPosition(int pos, int max) {	int i, cnt = 0;	for(i = 0; i < MAX_CLIENTS && cnt < max; i++) {		if(cg.clientNum != i && cgs.clientinfo[i].infoValid && !CG_IsOnFireteam( i ) && cgs.clientinfo[cg.clientNum].team == cgs.clientinfo[i].team ) {			if(cnt == pos) {				return &cgs.clientinfo[i];			}			cnt++;		}	}	return NULL;}
开发者ID:GenaSG,项目名称:ET,代码行数:15,


示例11: CG_SelectBuddy_f

static void CG_SelectBuddy_f( void ) {	int pos = atoi( CG_Argv( 1 ) );	int i;	clientInfo_t* ci;	if( !CG_IsOnFireteam( cg.clientNum ) ) {		return; // Gordon: we aren't a leader, so dont allow selection	}	// Gordon:	// 0 - 5 = select that person	// -1 = none	// -2 = all	switch( pos ) {		case -1:			for(i = 0; i < MAX_FIRETEAM_MEMBERS; i++) {				ci = CG_SortedFireTeamPlayerForPosition( i );				if( !ci ) {					return; // there was no-one in this position				}				ci->selected = qfalse;			}			return;		case -2:			for(i = 0; i < MAX_FIRETEAM_MEMBERS; i++) {				ci = CG_SortedFireTeamPlayerForPosition( i );				if(!ci) {					return; // there was no-one in this position				}				ci->selected = qtrue;			}			return;	}	if( pos >= MAX_FIRETEAM_MEMBERS || pos < 0)		return;	ci = CG_SortedFireTeamPlayerForPosition( pos );	if( !ci ) {		return; // there was no-one in this position	}	ci->selected ^= qtrue;}
开发者ID:thewolfteam,项目名称:Reloaded,代码行数:46,


示例12: CG_SelectBuddy_f

static void CG_SelectBuddy_f(void){	int          pos = atoi(CG_Argv(1));	int          i;	clientInfo_t *ci;	// 0 - 7 = select that person	// -1 = none	// -2 = all	switch (pos)	{	case 0:	case 1:	case 2:	case 3:	case 4:	case 5:	case 6:	case 7:		if (!CG_IsOnFireteam(cg.clientNum))		{			break;     // we aren't a leader, so dont allow selection		}		ci = CG_SortedFireTeamPlayerForPosition(pos);		if (!ci)		{			break;     // there was no-one in this position		}		ci->selected ^= qtrue;		break;	case -1:		if (!CG_IsOnFireteam(cg.clientNum))		{			break;     // we aren't a leader, so dont allow selection		}		for (i = 0; i < MAX_FIRETEAM_MEMBERS; i++)		{			ci = CG_SortedFireTeamPlayerForPosition(i);			if (!ci)			{				break;     // there was no-one in this position			}			ci->selected = qfalse;		}		break;	case -2:		if (!CG_IsOnFireteam(cg.clientNum))		{			break;     // we aren't a leader, so dont allow selection		}		for (i = 0; i < MAX_FIRETEAM_MEMBERS; i++)		{			ci = CG_SortedFireTeamPlayerForPosition(i);			if (!ci)			{				break;     // there was no-one in this position			}			ci->selected = qtrue;		}		break;	}}
开发者ID:Classixz,项目名称:etlegacy,代码行数:70,


示例13: CG_ParseFireteams

// Parses fireteam servercommandvoid CG_ParseFireteams(){	int        i, j;	char       *s;	const char *p;	int        clnts[2];	qboolean onFireteam2;	qboolean isLeader2;//	qboolean onFireteam =	CG_IsOnFireteam( cg.clientNum ) ? qtrue : qfalse;//	qboolean isLeader =		CG_IsFireTeamLeader( cg.clientNum ) ? qtrue : qfalse;	for (i = 0; i < MAX_CLIENTS; i++)	{		cgs.clientinfo[i].fireteamData = NULL;	}	for (i = 0; i < MAX_FIRETEAMS; i++)	{		char hexbuffer[11] = "0x00000000";		p = CG_ConfigString(CS_FIRETEAMS + i);/*		s = Info_ValueForKey(p, "n");        if(!s || !*s) {            cg.fireTeams[i].inuse = qfalse;            continue;        } else {            cg.fireTeams[i].inuse = qtrue;        }*///		Q_strncpyz(cg.fireTeams[i].name, s, 32);//		CG_Printf("Fireteam: %s/n", cg.fireTeams[i].name);		j = atoi(Info_ValueForKey(p, "id"));		if (j == -1)		{			cg.fireTeams[i].inuse = qfalse;			continue;		}		else		{			cg.fireTeams[i].inuse = qtrue;			cg.fireTeams[i].ident = j;		}		s                      = Info_ValueForKey(p, "l");		cg.fireTeams[i].leader = atoi(s);		s = Info_ValueForKey(p, "c");		Q_strncpyz(hexbuffer + 2, s, 9);		sscanf(hexbuffer, "%x", &clnts[1]);		Q_strncpyz(hexbuffer + 2, s + 8, 9);		sscanf(hexbuffer, "%x", &clnts[0]);		for (j = 0; j < MAX_CLIENTS; j++)		{			if (COM_BitCheck(clnts, j))			{				cg.fireTeams[i].joinOrder[j]   = qtrue;				cgs.clientinfo[j].fireteamData = &cg.fireTeams[i];//				CG_Printf("%s/n", cgs.clientinfo[j].name);			}			else			{				cg.fireTeams[i].joinOrder[j] = qfalse;			}		}	}	CG_SortClientFireteam();	onFireteam2 = CG_IsOnFireteam(cg.clientNum) ? qtrue : qfalse;	isLeader2   = CG_IsFireTeamLeader(cg.clientNum) ? qtrue : qfalse;}
开发者ID:morsik,项目名称:war-territory,代码行数:76,


示例14: CG_Fireteams_MenuText_Draw

void CG_Fireteams_MenuText_Draw(panel_button_t *button){	float           y = button->rect.y;	int             i;	switch (cgs.ftMenuMode)	{		case 0:			if (cgs.ftMenuPos == -1)			{				for (i = 0; ftMenuRootStrings[i]; i++)				{					const char     *str;					if (i < 5)					{						if (!CG_FireteamHasClass(i, qtrue))						{							continue;						}					}					if (cg_quickMessageAlt.integer)					{						str = va("%i. %s", (i + 1) % 10, ftMenuRootStrings[i]);					}					else					{						str = va("%s. %s", ftMenuRootStringsAlphachars[i], ftMenuRootStrings[i]);					}					CG_Text_Paint_Ext(button->rect.x, y, button->font->scalex, button->font->scaley, button->font->colour, str, 0,					                  0, button->font->style, button->font->font);					y += button->rect.h;				}			}			else			{				if (cgs.ftMenuPos < 0 || cgs.ftMenuPos > 4)				{					return;				}				else				{					const char    **strings = ftMenuStrings[cgs.ftMenuPos];					for (i = 0; strings[i]; i++)					{						const char     *str;						if (cg_quickMessageAlt.integer)						{							str = va("%i. %s", (i + 1) % 10, strings[i]);						}						else						{							str = va("%s. %s", (ftMenuStringsAlphachars[cgs.ftMenuPos])[i], strings[i]);						}						CG_Text_Paint_Ext(button->rect.x, y, button->font->scalex, button->font->scaley, button->font->colour,						                  str, 0, 0, button->font->style, button->font->font);						y += button->rect.h;					}				}			}			break;		case 1:			if (!CG_IsOnFireteam(cg.clientNum))			{				for (i = 0; ftOffMenuList[i]; i++)				{					const char     *str;					if (i == 0 && !CG_CountFireteamsByTeam(cgs.clientinfo[cg.clientNum].team))					{						continue;					}					if (cg_quickMessageAlt.integer)					{						str = va("%i. %s", (i + 1) % 10, ftOffMenuList[i]);					}					else					{						str = va("%s. %s", ftOffMenuListAlphachars[i], ftOffMenuList[i]);					}					CG_Text_Paint_Ext(button->rect.x, y, button->font->scalex, button->font->scaley, button->font->colour, str, 0,					                  0, button->font->style, button->font->font);					y += button->rect.h;				}			}			else			{				if (!CG_IsFireTeamLeader(cg.clientNum))//.........这里部分代码省略.........
开发者ID:morsik,项目名称:warpig,代码行数:101,


示例15: CG_DrawFireTeamOverlay

// FIXME: add more options to shorten this boxvoid CG_DrawFireTeamOverlay(rectDef_t *rect){	int            x = rect->x;	int            y = rect->y + 1;             // +1, jitter it into place in 1024 :)	int            i;	int            boxWidth  = 106;	int            bestWidth = -1;	char           buffer[64];	float          h   = 16;                    // 12 + 2 + 2	clientInfo_t   *ci = NULL;	fireteamData_t *f  = NULL;	char           *locStr[MAX_FIRETEAM_MEMBERS];	int            locwidth;	int            namewidth;	vec3_t         origin;	int curWeap;	// assign fireteam data, and early out if not on one	if (!(f = CG_IsOnFireteam(cg.clientNum)))	{		return;	}	memset(locStr, 0, sizeof(locStr));	// First get name and location width, also store location names	for (i = 0; i < MAX_FIRETEAM_MEMBERS; i++)	{		ci = CG_SortedFireTeamPlayerForPosition(i);		// Make sure it's valid		if (!ci)		{			break;		}		origin[0] = ci->location[0];		origin[1] = ci->location[1];		locStr[i] = CG_BuildLocationString(ci->clientNum, origin, LOC_FTEAM);		if (!locStr[i][1] || !*locStr[i])		{			locStr[i] = "";		}		locwidth = CG_Text_Width_Ext(locStr[i], 0.2f, 0, &cgs.media.limboFont2);		//if ( cg_fixedFTeamSize.integer ) {		//	namewidth = 102;		//}		//else {		namewidth = CG_Text_Width_Ext(ci->name, 0.2f, 17, &cgs.media.limboFont2);		if (ci->health == 0)		{			namewidth += 7;		}		//}		if ((locwidth + namewidth) > bestWidth)		{			bestWidth = locwidth + namewidth;		}		h += 12.f;	}	boxWidth += bestWidth;	CG_DrawRect(x, y, boxWidth, h, 1, borderColor);	CG_FillRect(x + 1, y + 1, boxWidth - 2, h - 2, bgColor);	x += 2;	y += 2;	CG_FillRect(x, y, boxWidth - 4, 12, clr1);	Com_sprintf(buffer, 64, "Fireteam: %s", bg_fireteamNames[f->ident]);	Q_strupr(buffer);	CG_Text_Paint_Ext(x + 3, y + FT_BAR_HEIGHT, .19f, .19f, tclr, buffer, 0, 0, 0, &cgs.media.limboFont1);	x += 2;	for (i = 0; i < MAX_FIRETEAM_MEMBERS; i++)	{		y += FT_BAR_HEIGHT + FT_BAR_YSPACING;		x  = rect->x + 2;		// Grab a pointer to the current player		ci = CG_SortedFireTeamPlayerForPosition(i);		// Make sure it's valid		if (!ci)		{			break;		}//.........这里部分代码省略.........
开发者ID:BulldogDrummond,项目名称:etlegacy-mysql,代码行数:101,


示例16: CG_DrawFireTeamOverlay

void CG_DrawFireTeamOverlay(rectDef_t *rect) {	int            x = rect->x;	int            y = rect->y + 1; // +1, jitter it into place in 1024 :)	float          h;	clientInfo_t   *ci = NULL;	char           buffer[64];	fireteamData_t *f;	int            i;	vec4_t         clr1        = { .16f, .2f, .17f, .8f };	vec4_t         tclr        = { 0.6f, 0.6f, 0.6f, 1.0f };	vec4_t         bgColor     = { 0.0f, 0.0f, 0.0f, 0.5f }; // window	vec4_t         borderColor = { 0.5f, 0.5f, 0.5f, 0.5f }; // window	f = CG_IsOnFireteam(cg.clientNum);	if (!f) {		return;	}	h = 12 + 2 + 2;	for (i = 0; i < 6; i++) {		ci = CG_SortedFireTeamPlayerForPosition(i, 6);		if (!ci) {			break;		}		h += FT_BAR_HEIGHT + FT_BAR_YSPACING;	}	CG_DrawRect(x, y, FT_WIDTH, h, 1, borderColor);	CG_FillRect(x + 1, y + 1, FT_WIDTH - 2, h - 2, bgColor);	x += 2;	y += 2;	CG_FillRect(x, y, FT_WIDTH - 4, 12, clr1);	// Nico, show if it's a private or public FT	if (f->priv) {		sprintf(buffer, "FT %s (Priv)", bg_fireteamNames[f->ident]);	} else {		sprintf(buffer, "FT %s", bg_fireteamNames[f->ident]);	}	Q_strupr(buffer);	CG_Text_Paint_Ext(x + 3, y + FT_BAR_HEIGHT, .19f, .19f, tclr, buffer, 0, 0, 0, &cgs.media.limboFont1);	x += 2;	for (i = 0; i < 6; i++) {		y += FT_BAR_HEIGHT + FT_BAR_YSPACING;		x  = rect->x + 2;		ci = CG_SortedFireTeamPlayerForPosition(i, 6);		if (!ci) {			break;		}		x += 4;		CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, ci->name, 0, 17, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);	}}
开发者ID:Exosum,项目名称:ETrun,代码行数:61,


示例17: CG_FireteamCheckExecKey

//.........这里部分代码省略.........								if (doaction)								{									trap_SendClientCommand(va									                       ("vsay_buddy %i %s %s", cgs.ftMenuPos, CG_BuildSelectedFirteamString(),									                        (ftMenuStringsMsg[cgs.ftMenuPos])[i]));									CG_EventHandling(CGAME_EVENT_NONE, qfalse);								}								return qtrue;							}						}					}				}			}			break;		case 1:		{			int             i = -1, x;			if (cg_quickMessageAlt.integer)			{				if (key >= '0' && key <= '9')				{					i = ((key - '0') + 9) % 10;				}			}			else			{				const char    **strings;				if (!CG_IsOnFireteam(cg.clientNum))				{					strings = ftOffMenuListAlphachars;				}				else				{					if (!CG_IsFireTeamLeader(cg.clientNum))					{						strings = ftOnMenuListAlphachars;					}					else					{						strings = ftLeaderMenuListAlphachars;					}				}				if (key >= 'a' || key <= 'z')				{					for (x = 0; strings[x]; x++)					{						if (key == tolower(*strings[x]))						{							i = x;							break;						}					}				}			}			if (i == -1)			{				break;			}
开发者ID:morsik,项目名称:warpig,代码行数:67,


示例18: CG_DrawFireTeamOverlay

void CG_DrawFireTeamOverlay(rectDef_t *rect){	int            x = rect->x;	int            y = rect->y + 1;  // +1, jitter it into place in 1024 :)	float          h;	clientInfo_t   *ci = NULL;	char           buffer[64];	fireteamData_t *f = NULL;	int            i;	vec4_t         clr1        = { .16f, .2f, .17f, .8f };	vec4_t         clr2        = { 0.f, 0.f, 0.f, .2f };	vec4_t         clr3        = { 0.25f, 0.f, 0.f, 153 / 255.f };	vec4_t         tclr        = { 0.6f, 0.6f, 0.6f, 1.0f };	vec4_t         bgColor     = { 0.0f, 0.0f, 0.0f, 0.6f };  // window	vec4_t         borderColor = { 0.5f, 0.5f, 0.5f, 0.5f };  // window	if (!(f = CG_IsOnFireteam(cg.clientNum)))	{		return;	}	h = 12 + 2 + 2;	for (i = 0; i < 6; i++)	{		ci = CG_SortedFireTeamPlayerForPosition(i, 6);		if (!ci)		{			break;;		}		h += FT_BAR_HEIGHT + FT_BAR_YSPACING;	}	CG_DrawRect(x, y, 204, h, 1, borderColor);	CG_FillRect(x + 1, y + 1, 204 - 2, h - 2, bgColor);	x += 2;	y += 2;	CG_FillRect(x, y, 204 - 4, 12, clr1);	sprintf(buffer, "Fireteam: %s", bg_fireteamNames[f->ident]);	Q_strupr(buffer);	CG_Text_Paint_Ext(x + 3, y + FT_BAR_HEIGHT, .19f, .19f, tclr, buffer, 0, 0, 0, &cgs.media.limboFont1);	x += 2;	//y += 2;	for (i = 0; i < 6; i++)	{		y += FT_BAR_HEIGHT + FT_BAR_YSPACING;		x  = rect->x + 2;		ci = CG_SortedFireTeamPlayerForPosition(i, 6);		if (!ci)		{			break;;		}		if (ci->selected)		{			CG_FillRect(x, y + FT_BAR_YSPACING, 204 - 4, FT_BAR_HEIGHT, clr3);		}		else		{			CG_FillRect(x, y + FT_BAR_YSPACING, 204 - 4, FT_BAR_HEIGHT, clr2);		}		x += 4;		CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, BG_ClassLetterForNumber(ci->cls), 0, 0, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);		x += 10;		CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, ci->team == TEAM_AXIS ? miniRankNames_Axis[ci->rank] : miniRankNames_Allies[ci->rank], 0, 0, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);		x += 22;		CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, ci->name, 0, 17, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);		x += 90;/*		CG_DrawPic(x + 2, y + 2, FT_BAR_HEIGHT - 4, FT_BAR_HEIGHT - 4, cgs.media.movementAutonomyIcons[0]);        x += FT_BAR_HEIGHT;        CG_DrawPic(x + 2, y + 2, FT_BAR_HEIGHT - 4, FT_BAR_HEIGHT - 4, cgs.media.weaponAutonomyIcons[0]);        x += FT_BAR_HEIGHT;        x += 4;*//*		if( isLeader ) {            CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, va("%i", i+4), 0, 0, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2 );        }*/		x += 20;		if (ci->health > 80)		{			CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, tclr, va("%i", ci->health < 0 ? 0 : ci->health), 0, 0, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);		}		else if (ci->health > 0)		{			CG_Text_Paint_Ext(x, y + FT_BAR_HEIGHT, .2f, .2f, colorYellow, va("%i", ci->health < 0 ? 0 : ci->health), 0, 0, ITEM_TEXTSTYLE_SHADOWED, &cgs.media.limboFont2);		}		else//.........这里部分代码省略.........
开发者ID:morsik,项目名称:war-territory,代码行数:101,


示例19: CG_DrawFireTeamOverlay

/** * @brief Draw FireTeam overlay */void CG_DrawFireTeamOverlay(rectDef_t *rect){	int            x = rect->x;	int            y = rect->y + 1;             // +1, jitter it into place	int            i, locwidth, namewidth, puwidth, lineX;	int            boxWidth      = 90;	int            bestNameWidth = -1;	int            bestLocWidth  = -1;	char           buffer[64];	float          h   = 16;                    // 12 + 2 + 2	clientInfo_t   *ci = NULL;	fireteamData_t *f  = NULL;	char           *locStr[MAX_FIRETEAM_MEMBERS];	vec3_t         origin;	int curWeap;	// assign fireteam data, and early out if not on one	if (!(f = CG_IsOnFireteam(cg.clientNum)))	{		return;	}	memset(locStr, 0, sizeof(char *) * MAX_FIRETEAM_MEMBERS);	// First get name and location width, also store location names	for (i = 0; i < MAX_FIRETEAM_MEMBERS; i++)	{		ci = CG_SortedFireTeamPlayerForPosition(i);		// Make sure it's valid		if (!ci)		{			break;		}		if (cg_locations.integer & LOC_FTEAM)		{			origin[0] = ci->location[0];			origin[1] = ci->location[1];			origin[2] = ci->location[2];			locStr[i] = CG_BuildLocationString(ci->clientNum, origin, LOC_FTEAM);			if (!locStr[i][1] || !*locStr[i])			{				locStr[i] = "";			}			locwidth = CG_Text_Width_Ext(locStr[i], 0.2f, 0, FONT_TEXT);		}		else		{			locwidth = 0;		}		namewidth = CG_Text_Width_Ext(ci->name, 0.2f, 0, FONT_TEXT);		if (ci->powerups & ((1 << PW_REDFLAG) | (1 << PW_BLUEFLAG) | (1 << PW_OPS_DISGUISED)))		{			namewidth += 14;		}		if (namewidth > bestNameWidth)		{			bestNameWidth = namewidth;		}		if (locwidth > bestLocWidth)		{			bestLocWidth = locwidth;		}		h += 12.f;	}	boxWidth += bestLocWidth + bestNameWidth;	if (cg_fireteamLatchedClass.integer)	{		boxWidth += 28;	}	if ((Ccg_WideX(640) - MIN_BORDER_DISTANCE) < (x + boxWidth))	{		x = x - ((x + boxWidth) - Ccg_WideX(640)) - MIN_BORDER_DISTANCE;	}	else if (x < MIN_BORDER_DISTANCE)	{		x = MIN_BORDER_DISTANCE;	}	CG_FillRect(x, y, boxWidth, h, FT_bg2);	CG_DrawRect(x, y, boxWidth, h, 1, FT_border);	x += 1;	y += 1;//.........这里部分代码省略.........
开发者ID:belstgut,项目名称:etlegacy,代码行数:101,


示例20: CG_DrawFireTeamOverlay

void CG_DrawFireTeamOverlay( rectDef_t* rect ) {	int x = rect->x;	int y = rect->y + 1;	// +1, jitter it into place in 1024 :)	int boxWidth = 204;	int bestWidth = -1;	char *locStr[MAX_FIRETEAM_MEMBERS];	vec2_t loc;	float h;	clientInfo_t* ci = NULL;	char buffer[64];	fireteamData_t* f = NULL;	int i;	vec4_t clr1 =	{ .16f,		.2f,	.17f,	.8f };	vec4_t clr2 =	{ 0.f,		0.f,		0.f,		.2f };	vec4_t clr3 =	{ 0.25f,		0.f,		0.f,		153/255.f };	vec4_t tclr =	{ 0.6f,		0.6f,		0.6f,		1.0f };	vec4_t bgColor		= { 0.0f, 0.0f, 0.0f, 0.6f };		// window	vec4_t borderColor	= { 0.5f, 0.5f, 0.5f, 0.5f };	// window	centity_t*	cent;	bgColor[3] = cg_fireteamAlpha.value;	if(cg.hudEditor.showHudEditor) {		//draw a fake fireteam box...		CG_DrawFakeFireTeamOverlay(rect);		return;	} else 	if(!(f = CG_IsOnFireteam( cg.clientNum ))) {		return;	}	h = 12 + 2 + 2;	for(i = 0; i < MAX_FIRETEAM_MEMBERS; i++) {		int		locwidth;		vec3_t	origin;		ci = CG_SortedFireTeamPlayerForPosition( i );		if(!ci) {			break;		}		h += FT_BAR_HEIGHT + FT_BAR_YSPACING;		loc[0] = ci->location[0];		loc[1] = ci->location[1];		if(cg_locations.integer > 0) {			qboolean locValid = qtrue;			cent = &cg_entities[ci->clientNum];			// Dens: use lerpOrigin for now			origin[0] = cent->lerpOrigin[0];			origin[1] = cent->lerpOrigin[1];			origin[2] = cent->lerpOrigin[2];				locStr[i] = va( "^3%s", CG_GetLocationMsg(origin));			if (!Q_stricmp( locStr[i], "^3Unknown")){				locStr[i] = va( "^3(%s)", BG_GetLocationString( loc ));				locValid = qfalse;			}			if(cg_locations.integer > 1 && locValid)				Q_strcat( locStr[i], 64, va(" ^3(%s)", BG_GetLocationString( loc )) );		} else {			locStr[i] = va( "^3(%s)", BG_GetLocationString( loc ));		}		if( !locStr[i][1] || !*locStr[i] )			locStr[i] = " ";			locwidth = CG_Text_Width_Ext( locStr[i], 0.2f, 0, &cgs.media.font3 );			if(locwidth > bestWidth)			bestWidth = locwidth;	}	boxWidth += bestWidth;	CG_DrawRect( x, y, boxWidth, h, 1, borderColor);	CG_FillRect( x + 1, y + 1, boxWidth - 2, h - 2, bgColor);	x += 2;	y += 2;	CG_FillRect( x, y, boxWidth - 4, 12, clr1 );	Com_sprintf( buffer, 64, "Fireteam: %s", bg_fireteamNames[f->ident] );	//sprintf( buffer, "Fireteam: %s", bg_fireteamNames[f->ident] );	Q_strupr( buffer );	CG_Text_Paint_Ext( x + 3, y + FT_BAR_HEIGHT, .19f, .19f, tclr, buffer, 0, 0, 0, &cgs.media.font1 );	x += 2;	//y += 2;	for(i = 0; i < MAX_FIRETEAM_MEMBERS; i++) {		y += FT_BAR_HEIGHT + FT_BAR_YSPACING;		x = rect->x + 2;		ci = CG_SortedFireTeamPlayerForPosition( i );//.........这里部分代码省略.........
开发者ID:lcfx,项目名称:etet,代码行数:101,



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


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