Add get/set methods for rendermodes so we can issue network-updates
directly instead of wasting attributes to keep track of changes.
This commit is contained in:
parent
fa8304f70d
commit
61ea2dfe6c
8 changed files with 49 additions and 48 deletions
|
@ -14,6 +14,10 @@
|
|||
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* a lot of the rendering info is assembled with the following url:
|
||||
* https://sites.google.com/site/svenmanor/rendermodes
|
||||
* for reference. I thank thee fellow soldiers at sven manor! */
|
||||
|
||||
var int autocvar_cl_showtriggers = FALSE;
|
||||
|
||||
string __fullspawndata;
|
||||
|
|
|
@ -44,11 +44,6 @@ class CBaseEntity
|
|||
float m_flRenderAmt;
|
||||
vector m_vecRenderColor;
|
||||
|
||||
int m_old_iRenderFX;
|
||||
float m_old_iRenderMode;
|
||||
float m_old_flRenderAmt;
|
||||
vector m_old_vecRenderColor;
|
||||
|
||||
int m_spawn_iRenderFX;
|
||||
float m_spawn_iRenderMode;
|
||||
float m_spawn_flRenderAmt;
|
||||
|
@ -66,8 +61,42 @@ class CBaseEntity
|
|||
virtual float(entity, float) SendEntity;
|
||||
virtual void(int iHitBody) Pain;
|
||||
virtual void(int iHitBody) Death;
|
||||
|
||||
#ifdef GS_RENDERFX
|
||||
virtual void(int) SetRenderFX;
|
||||
virtual void(float) SetRenderMode;
|
||||
virtual void(float) SetRenderAmt;
|
||||
virtual void(vector) SetRenderColor;
|
||||
#endif
|
||||
};
|
||||
|
||||
#ifdef GS_RENDERFX
|
||||
void
|
||||
CBaseEntity::SetRenderFX(int newFX)
|
||||
{
|
||||
m_iRenderFX = newFX;
|
||||
SendFlags |= BASEFL_CHANGED_RENDERFX;
|
||||
}
|
||||
void
|
||||
CBaseEntity::SetRenderMode(float newMode)
|
||||
{
|
||||
m_iRenderMode = newMode;
|
||||
SendFlags |= BASEFL_CHANGED_RENDERMODE;
|
||||
}
|
||||
void
|
||||
CBaseEntity::SetRenderAmt(float newAmt)
|
||||
{
|
||||
m_flRenderAmt = newAmt;
|
||||
SendFlags |= BASEFL_CHANGED_RENDERAMT;
|
||||
}
|
||||
void
|
||||
CBaseEntity::SetRenderColor(vector newColor)
|
||||
{
|
||||
m_vecRenderColor = newColor;
|
||||
SendFlags |= BASEFL_CHANGED_RENDERCOLOR;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Make sure StartFrame calls this */
|
||||
float
|
||||
CBaseEntity::SendEntity(entity ePEnt, float fChanged)
|
||||
|
@ -206,22 +235,7 @@ CBaseEntity::ParentUpdate(void)
|
|||
oldnet_body = m_iBody;
|
||||
}
|
||||
#ifdef GS_RENDERFX
|
||||
if (m_old_iRenderFX != m_iRenderFX) {
|
||||
SendFlags |= BASEFL_CHANGED_RENDERFX;
|
||||
m_old_iRenderFX = m_iRenderFX;
|
||||
}
|
||||
if (m_old_iRenderMode != m_iRenderMode) {
|
||||
SendFlags |= BASEFL_CHANGED_RENDERMODE;
|
||||
m_old_iRenderMode = m_iRenderMode;
|
||||
}
|
||||
if (m_old_flRenderAmt != m_flRenderAmt) {
|
||||
SendFlags |= BASEFL_CHANGED_RENDERAMT;
|
||||
m_old_flRenderAmt = m_flRenderAmt;
|
||||
}
|
||||
if (m_old_vecRenderColor != m_vecRenderColor) {
|
||||
SendFlags |= BASEFL_CHANGED_RENDERCOLOR;
|
||||
m_old_vecRenderColor = m_vecRenderColor;
|
||||
}
|
||||
|
||||
#else
|
||||
if (alpha != oldnet_alpha) {
|
||||
SendFlags |= BASEFL_CHANGED_ALPHA;
|
||||
|
|
|
@ -133,7 +133,7 @@ CBaseTrigger::InitBrushTrigger(void)
|
|||
setmodel(this, m_oldModel);
|
||||
movetype = MOVETYPE_NONE;
|
||||
solid = SOLID_BSPTRIGGER;
|
||||
m_iRenderMode = RM_TRIGGER;
|
||||
SetRenderMode(RM_TRIGGER);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
Decorative, does nothing yet.
|
||||
*/
|
||||
|
||||
class cycler_sprite:CBaseTrigger
|
||||
class cycler_sprite:CBaseEntity
|
||||
{
|
||||
|
||||
};
|
||||
|
|
|
@ -47,26 +47,22 @@ env_render::Trigger(void)
|
|||
CBaseEntity trigger = (CBaseEntity)e;
|
||||
|
||||
dprint(sprintf("^2env_render::^3Trigger^7: with spawnflags %d\n", spawnflags));
|
||||
print(sprintf("\tTarget: %s\n", m_strTarget));
|
||||
dprint(sprintf("\tTarget: %s\n", m_strTarget));
|
||||
if (!(spawnflags & SF_NORENDERMODE)) {
|
||||
dprint(sprintf("\tMode change from %d to %d\n", trigger.m_iRenderMode, m_iRenderMode));
|
||||
trigger.m_iRenderMode = m_iRenderMode;
|
||||
trigger.SendFlags |= BASEFL_CHANGED_RENDERMODE;
|
||||
trigger.SetRenderMode(m_iRenderMode);
|
||||
}
|
||||
if (!(spawnflags & SF_NORENDERCOLOR)) {
|
||||
dprint(sprintf("\tColor change from %v to %v\n", trigger.m_vecRenderColor, m_vecRenderColor));
|
||||
trigger.m_vecRenderColor = m_vecRenderColor;
|
||||
trigger.SendFlags |= BASEFL_CHANGED_RENDERCOLOR;
|
||||
trigger.SetRenderColor(m_vecRenderColor);
|
||||
}
|
||||
if (!(spawnflags & SF_NORENDERAMT)) {
|
||||
dprint(sprintf("\tAmt change from %d to %d\n", trigger.m_flRenderAmt, m_flRenderAmt));
|
||||
trigger.m_flRenderAmt = m_flRenderAmt;
|
||||
trigger.SendFlags |= BASEFL_CHANGED_RENDERAMT;
|
||||
trigger.SetRenderAmt(m_flRenderAmt);
|
||||
}
|
||||
if (!(spawnflags & SF_NORENDERFX)) {
|
||||
dprint(sprintf("\tFX change from %i to %i\n", trigger.m_iRenderFX, m_iRenderFX));
|
||||
trigger.m_iRenderFX = m_iRenderFX;
|
||||
trigger.SendFlags |= BASEFL_CHANGED_RENDERFX;
|
||||
trigger.SetRenderFX(m_iRenderFX);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -41,14 +41,7 @@ void func_ladder::Respawn(void)
|
|||
movetype = MOVETYPE_NONE;
|
||||
skin = CONTENT_LADDER;
|
||||
solid = SOLID_BSP;
|
||||
|
||||
#ifdef GS_DEVELOPER
|
||||
m_iRenderMode = RM_SOLID;
|
||||
m_flRenderAmt = 0.25f;
|
||||
#else
|
||||
m_iRenderMode = RM_SOLID;
|
||||
m_flRenderAmt = 0.0f;
|
||||
#endif
|
||||
SetRenderMode(RM_TRIGGER);
|
||||
}
|
||||
|
||||
void func_ladder::func_ladder(void)
|
||||
|
|
|
@ -59,13 +59,7 @@ void
|
|||
trigger_once::Respawn(void)
|
||||
{
|
||||
solid = SOLID_TRIGGER;
|
||||
#ifdef GS_DEVELOPER
|
||||
m_iRenderMode = RM_SOLID;
|
||||
m_flRenderAmt = 0.25f;
|
||||
#else
|
||||
m_iRenderMode = RM_SOLID;
|
||||
m_flRenderAmt = 0.0f;
|
||||
#endif
|
||||
SetRenderMode(RM_TRIGGER);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -34,5 +34,5 @@ trigger_transition::trigger_transition(void)
|
|||
setmodel(this, model);
|
||||
model = __NULL__;
|
||||
modelindex = 0;
|
||||
m_iRenderMode = RM_TRIGGER;
|
||||
SetRenderMode(RM_TRIGGER);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue