mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-05-09 20:18:17 +03:00
Renamed **CG_PlayerTeamUpdate** to **CG_PlayerTeamIcon**
This commit is contained in:
parent
143d14a582
commit
ae6dab4022
1 changed files with 31 additions and 40 deletions
|
@ -26,7 +26,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
#include "cg_local.h"
|
#include "cg_local.h"
|
||||||
#include "tiki.h"
|
#include "tiki.h"
|
||||||
|
|
||||||
void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
void CG_PlayerTeamIcon(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
{
|
{
|
||||||
qboolean bInArtillery, bInTeam, bSpecialIcon;
|
qboolean bInArtillery, bInTeam, bSpecialIcon;
|
||||||
|
|
||||||
|
@ -77,12 +77,12 @@ void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
if ((pPlayerState->eFlags & EF_PLAYER_TALKING) != 0 && ((cg.time >> 8) & 1) != 0)
|
if ((pPlayerState->eFlags & EF_PLAYER_TALKING) != 0 && ((cg.time >> 8) & 1) != 0)
|
||||||
{
|
{
|
||||||
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/talking_headicon.spr");
|
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/talking_headicon.spr");
|
||||||
bSpecialIcon = 1;
|
bSpecialIcon = qtrue;
|
||||||
}
|
}
|
||||||
else if ((pPlayerState->eFlags & EF_PLAYER_IN_MENU) != 0)
|
else if ((pPlayerState->eFlags & EF_PLAYER_IN_MENU) != 0)
|
||||||
{
|
{
|
||||||
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/inmenu_headicon.spr");
|
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/inmenu_headicon.spr");
|
||||||
bSpecialIcon = 1;
|
bSpecialIcon = qtrue;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -108,10 +108,10 @@ void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
memset(vTmp, 0, sizeof(vTmp));
|
memset(vTmp, 0, sizeof(vTmp));
|
||||||
AnglesToAxis(vTmp, iconEnt.axis);
|
AnglesToAxis(vTmp, iconEnt.axis);
|
||||||
|
|
||||||
iconEnt.scale = 0.5;
|
iconEnt.scale = 0.5f;
|
||||||
iconEnt.renderfx = 0;
|
iconEnt.renderfx = 0;
|
||||||
iconEnt.reType = RT_SPRITE;
|
iconEnt.reType = RT_SPRITE;
|
||||||
iconEnt.shaderTime = 0.0;
|
iconEnt.shaderTime = 0.0f;
|
||||||
iconEnt.frameInfo[0].index = 0;
|
iconEnt.frameInfo[0].index = 0;
|
||||||
iconEnt.shaderRGBA[0] = -1;
|
iconEnt.shaderRGBA[0] = -1;
|
||||||
iconEnt.shaderRGBA[1] = -1;
|
iconEnt.shaderRGBA[1] = -1;
|
||||||
|
@ -121,7 +121,7 @@ void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
iTag = cgi.Tag_NumForName(pModel->tiki, "eyes bone");
|
iTag = cgi.Tag_NumForName(pModel->tiki, "eyes bone");
|
||||||
if (iTag == -1)
|
if (iTag == -1)
|
||||||
{
|
{
|
||||||
iconEnt.origin[2] = iconEnt.origin[2] + 96.0;
|
iconEnt.origin[2] = iconEnt.origin[2] + 96.0f;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -131,66 +131,58 @@ void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
VectorMA(iconEnt.origin, oEyes.origin[i], pModel->axis[i], iconEnt.origin);
|
VectorMA(iconEnt.origin, oEyes.origin[i], pModel->axis[i], iconEnt.origin);
|
||||||
}
|
}
|
||||||
|
|
||||||
iconEnt.origin[2] = iconEnt.origin[2] + 20.0;
|
iconEnt.origin[2] = iconEnt.origin[2] + 20.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
VectorSubtract(iconEnt.origin, cg.refdef.vieworg, vTmp);
|
VectorSubtract(iconEnt.origin, cg.refdef.vieworg, vTmp);
|
||||||
fDist = VectorLength(vTmp);
|
fDist = VectorLength(vTmp);
|
||||||
|
|
||||||
if (fDist >= 256)
|
if (fDist < 256.0f) {
|
||||||
{
|
iconEnt.scale = fDist / 853.0f + 0.2f;
|
||||||
if (fDist > 512.0) {
|
} else if (fDist > 512.0f) {
|
||||||
iconEnt.scale = (fDist - 512.0) / 2560.0 + 0.5;
|
// Make sure to scale so the icon can be seen far away
|
||||||
}
|
iconEnt.scale = (fDist - 512.0f) / 2560.0f + 0.5f;
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
iconEnt.scale = fDist / 853.0 + 0.2;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (iconEnt.scale > 1.0) {
|
if (iconEnt.scale > 1.0f) {
|
||||||
iconEnt.scale = 1.0;
|
iconEnt.scale = 1.0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fDist > 256.0) {
|
if (fDist > 256.0) {
|
||||||
fAlpha = 1.0;
|
fAlpha = 1.0f;
|
||||||
}
|
} else if (fDist >= 72.0f) {
|
||||||
else if (fDist >= 72.0) {
|
fAlpha = (fDist - 72.0f) / 184.0f;
|
||||||
fAlpha = (fDist - 72.0) / 184.0;
|
} else {
|
||||||
}
|
fAlpha = 0.0f;
|
||||||
else {
|
|
||||||
fAlpha = 0.0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cg.snap->ps.stats[STAT_TEAM] == 4 || cg.snap->ps.stats[STAT_TEAM] == 3) {
|
if (cg.snap->ps.stats[STAT_TEAM] == TEAM_ALLIES || cg.snap->ps.stats[STAT_TEAM] == TEAM_AXIS) {
|
||||||
fAlpha = fAlpha * 0.65;
|
fAlpha = fAlpha * 0.65f;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
fAlpha = fAlpha * 0.4;
|
fAlpha = fAlpha * 0.4f;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bSpecialIcon)
|
if (bSpecialIcon)
|
||||||
{
|
{
|
||||||
int value = (int)((fAlpha + 0.60000002) * 255.0);
|
int value = (int)((fAlpha + 0.6f) * 255.0f);
|
||||||
if (value > 255) value = 255;
|
if (value > 255) value = 255;
|
||||||
iconEnt.shaderRGBA[3] = value;
|
iconEnt.shaderRGBA[3] = value;
|
||||||
}
|
} else {
|
||||||
else
|
iconEnt.shaderRGBA[3] = (int)(fAlpha * 255.0f);
|
||||||
{
|
|
||||||
iconEnt.shaderRGBA[3] = (int)(fAlpha * 255.0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (fAlpha > 0.0 || bSpecialIcon)
|
if (fAlpha > 0.0 || bSpecialIcon)
|
||||||
{
|
{
|
||||||
if (bSpecialIcon)
|
if (bSpecialIcon)
|
||||||
{
|
{
|
||||||
VectorMA(iconEnt.origin, -2.0, cg.refdef.viewaxis[0], iconEnt.origin);
|
VectorMA(iconEnt.origin, -2.0f, cg.refdef.viewaxis[0], iconEnt.origin);
|
||||||
iconEnt.scale = iconEnt.scale + 0.05;
|
iconEnt.scale += 0.05f;
|
||||||
}
|
}
|
||||||
|
|
||||||
cgi.R_AddRefSpriteToScene(&iconEnt);
|
cgi.R_AddRefSpriteToScene(&iconEnt);
|
||||||
|
|
||||||
if (bSpecialIcon && bInTeam && fAlpha > 0.0)
|
if (bSpecialIcon && bInTeam && fAlpha > 0.0f)
|
||||||
{
|
{
|
||||||
if (pPlayerState->eFlags & EF_ALLIES) {
|
if (pPlayerState->eFlags & EF_ALLIES) {
|
||||||
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/allies_headicon.spr");
|
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/allies_headicon.spr");
|
||||||
|
@ -198,14 +190,13 @@ void CG_PlayerTeamUpdate(refEntity_t* pModel, entityState_t* pPlayerState)
|
||||||
else {
|
else {
|
||||||
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/axis_headicon.spr");
|
iconEnt.hModel = cgi.R_RegisterModel("textures/hud/axis_headicon.spr");
|
||||||
}
|
}
|
||||||
VectorMA(iconEnt.origin, 4.0, cg.refdef.viewaxis[0], iconEnt.origin);
|
VectorMA(iconEnt.origin, 4.0f, cg.refdef.viewaxis[0], iconEnt.origin);
|
||||||
iconEnt.scale = iconEnt.scale - 0.1;
|
iconEnt.scale = iconEnt.scale - 0.1;
|
||||||
iconEnt.shaderRGBA[3] = (int)(fAlpha * 255.0);
|
iconEnt.shaderRGBA[3] = (int)(fAlpha * 255.0f);
|
||||||
cgi.R_AddRefSpriteToScene(&iconEnt);
|
cgi.R_AddRefSpriteToScene(&iconEnt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// FIXME: unimplemented
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -953,7 +944,7 @@ void CG_ModelAnim(centity_t* cent, qboolean bDoShaderTime)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cent->currentState.eType == ET_PLAYER && !(cent->currentState.eFlags & EF_DEAD)) {
|
if (cent->currentState.eType == ET_PLAYER && !(cent->currentState.eFlags & EF_DEAD)) {
|
||||||
CG_PlayerTeamUpdate(&model, ¢->currentState);
|
CG_PlayerTeamIcon(&model, ¢->currentState);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s1->number == cg.snap->ps.clientNum)
|
if (s1->number == cg.snap->ps.clientNum)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue