player: Fix for server-side controlled rendermodes on player entities
This commit is contained in:
parent
f0d7288871
commit
f9798b48f9
1 changed files with 26 additions and 28 deletions
|
@ -340,31 +340,6 @@ player::ReceiveEntity(float new, float flChanged)
|
||||||
|
|
||||||
if (flChanged & PLAYER_ITEMS || flChanged & PLAYER_HEALTH) {
|
if (flChanged & PLAYER_ITEMS || flChanged & PLAYER_HEALTH) {
|
||||||
HUD_ItemNotify_Check(this);
|
HUD_ItemNotify_Check(this);
|
||||||
|
|
||||||
if (HasInvisibility()) {
|
|
||||||
SetRenderMode(RM_DONTRENDER);
|
|
||||||
SetRenderFX(RFX_GLOWSHELL);
|
|
||||||
SetRenderColor([0.5, 0.5, 0.5]);
|
|
||||||
SetRenderAmt(0.1f);
|
|
||||||
} else if (HasQuadDamage()) {
|
|
||||||
SetRenderFX(RFX_GLOWSHELL);
|
|
||||||
SetRenderColor([0.5, 0.5, 1.0]);
|
|
||||||
SetRenderAmt(1.0f);
|
|
||||||
} else if (HasInvulnerability()) {
|
|
||||||
SetRenderFX(RFX_GLOWSHELL);
|
|
||||||
SetRenderColor([1.0, 0.5, 0.0]);
|
|
||||||
SetRenderAmt(1.0f);
|
|
||||||
} else if (HasEnviroSuit()) {
|
|
||||||
SetRenderFX(RFX_GLOWSHELL);
|
|
||||||
SetRenderColor([0.5, 1.0, 0.5]);
|
|
||||||
SetRenderAmt(1.0f);
|
|
||||||
} else {
|
|
||||||
SetRenderMode(RM_NORMAL);
|
|
||||||
SetRenderFX(RM_NORMAL);
|
|
||||||
SetRenderColor([1.0, 1.0, 1.0]);
|
|
||||||
SetRenderAmt(1.0f);
|
|
||||||
}
|
|
||||||
|
|
||||||
p_model.SetRenderMode(GetRenderMode());
|
p_model.SetRenderMode(GetRenderMode());
|
||||||
p_model.SetRenderFX(GetRenderFX());
|
p_model.SetRenderFX(GetRenderFX());
|
||||||
p_model.SetRenderColor(GetRenderColor());
|
p_model.SetRenderColor(GetRenderColor());
|
||||||
|
@ -483,30 +458,53 @@ player::Restore(string strKey, string strValue)
|
||||||
void
|
void
|
||||||
player::EvaluateEntity(void)
|
player::EvaluateEntity(void)
|
||||||
{
|
{
|
||||||
|
/* check artifacts for their effect time */
|
||||||
if (g_items & ITEM_QUAD) {
|
if (g_items & ITEM_QUAD) {
|
||||||
if (m_quadFinishTime < time) {
|
if (m_quadFinishTime < time) {
|
||||||
g_items &= ~ITEM_QUAD;
|
g_items &= ~ITEM_QUAD;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_items & ITEM_INVIS) {
|
if (g_items & ITEM_INVIS) {
|
||||||
if (m_invisFinishTime < time) {
|
if (m_invisFinishTime < time) {
|
||||||
g_items &= ~ITEM_INVIS;
|
g_items &= ~ITEM_INVIS;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_items & ITEM_INVULN) {
|
if (g_items & ITEM_INVULN) {
|
||||||
if (m_invulnFinishTime < time) {
|
if (m_invulnFinishTime < time) {
|
||||||
g_items &= ~ITEM_INVULN;
|
g_items &= ~ITEM_INVULN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (g_items & ITEM_ENVIROSUIT) {
|
if (g_items & ITEM_ENVIROSUIT) {
|
||||||
if (m_enviroFinishTime < time) {
|
if (m_enviroFinishTime < time) {
|
||||||
g_items &= ~ITEM_ENVIROSUIT;
|
g_items &= ~ITEM_ENVIROSUIT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* depending on who's left, set the appropriate rendering mode */
|
||||||
|
if (HasInvisibility()) {
|
||||||
|
SetRenderMode(RM_DONTRENDER);
|
||||||
|
SetRenderFX(RFX_GLOWSHELL);
|
||||||
|
SetRenderColor([0.5, 0.5, 0.5]);
|
||||||
|
SetRenderAmt(0.1f);
|
||||||
|
} else if (HasQuadDamage()) {
|
||||||
|
SetRenderFX(RFX_GLOWSHELL);
|
||||||
|
SetRenderColor([0.5, 0.5, 1.0]);
|
||||||
|
SetRenderAmt(1.0f);
|
||||||
|
} else if (HasInvulnerability()) {
|
||||||
|
SetRenderFX(RFX_GLOWSHELL);
|
||||||
|
SetRenderColor([1.0, 0.5, 0.0]);
|
||||||
|
SetRenderAmt(1.0f);
|
||||||
|
} else if (HasEnviroSuit()) {
|
||||||
|
SetRenderFX(RFX_GLOWSHELL);
|
||||||
|
SetRenderColor([0.5, 1.0, 0.5]);
|
||||||
|
SetRenderAmt(1.0f);
|
||||||
|
} else {
|
||||||
|
SetRenderMode(RM_NORMAL);
|
||||||
|
SetRenderFX(RM_NORMAL);
|
||||||
|
SetRenderColor([1.0, 1.0, 1.0]);
|
||||||
|
SetRenderAmt(1.0f);
|
||||||
|
}
|
||||||
|
|
||||||
if (health > 100) {
|
if (health > 100) {
|
||||||
if (m_megaHealthTime < time) {
|
if (m_megaHealthTime < time) {
|
||||||
health -= 1;
|
health -= 1;
|
||||||
|
|
Loading…
Reference in a new issue