//----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void CLogicNavigation::Activate() { BaseClass::Activate(); if ( HasSpawnFlags( SF_NAV_START_ON ) ) { TurnOn(); RemoveSpawnFlags( SF_NAV_START_ON ); } else if ( m_isOn ) { gEntList.AddListenerEntity( this ); } }
//----------------------------------------------------------------------------- // Purpose: Update the visible representation of the physic system's representation of this object //----------------------------------------------------------------------------- void CPhysicsCannister::VPhysicsUpdate( IPhysicsObject *pPhysics ) { BaseClass::VPhysicsUpdate( pPhysics ); // if this is the first time we have moved, fire our target if ( HasSpawnFlags( SF_CANNISTER_ASLEEP ) ) { if ( !pPhysics->IsAsleep() ) { m_OnAwakened.FireOutput(this, this); RemoveSpawnFlags( SF_CANNISTER_ASLEEP ); } } }
void CZombie::Ignite( float flFlameLifetime, bool bNPCOnly, float flSize, bool bCalledByLevelDesigner ) { if( !IsOnFire() && IsAlive() ) { BaseClass::Ignite( flFlameLifetime, bNPCOnly, flSize, bCalledByLevelDesigner ); RemoveSpawnFlags( SF_NPC_GAG ); MoanSound( envZombieMoanIgnited, ARRAYSIZE( envZombieMoanIgnited ) ); if ( m_pMoanSound ) { ENVELOPE_CONTROLLER.SoundChangePitch( m_pMoanSound, 120, 1.0 ); ENVELOPE_CONTROLLER.SoundChangeVolume( m_pMoanSound, 1, 1.0 ); } } }
void CTriggerTimerStart::SetHasLookAngles(bool bHasLook) { if (bHasLook) { if (!HasSpawnFlags(SF_USE_LOOKANGLES)) { AddSpawnFlags(SF_USE_LOOKANGLES); } } else { if (HasSpawnFlags(SF_USE_LOOKANGLES)) { RemoveSpawnFlags(SF_USE_LOOKANGLES); } } }
void CTriggerTimerStart::SetIsLimitingSpeedOnlyXY(bool pIsLimitingSpeedOnlyXY) { if (pIsLimitingSpeedOnlyXY) { if (!HasSpawnFlags(SF_LIMIT_LEAVE_SPEED_ONLYXY)) { AddSpawnFlags(SF_LIMIT_LEAVE_SPEED_ONLYXY); } } else { if (HasSpawnFlags(SF_LIMIT_LEAVE_SPEED_ONLYXY)) { RemoveSpawnFlags(SF_LIMIT_LEAVE_SPEED_ONLYXY); } } }
void CTriggerTimerStart::SetIsLimitingSpeed(bool bIsLimitSpeed) { if (bIsLimitSpeed) { if (!HasSpawnFlags(SF_LIMIT_LEAVE_SPEED)) { AddSpawnFlags(SF_LIMIT_LEAVE_SPEED); } } else { if (HasSpawnFlags(SF_LIMIT_LEAVE_SPEED)) { RemoveSpawnFlags(SF_LIMIT_LEAVE_SPEED); } } }
void CASW_Zombie::ASW_Ignite( float flFlameLifetime, float flSize, CBaseEntity *pAttacker, CBaseEntity *pDamagingWeapon /*= NULL */ ) { if (AllowedToIgnite()) { if( IsOnFire() ) return; m_bOnFire = true; if (ASWBurning()) ASWBurning()->BurnEntity(this, pAttacker, flFlameLifetime, 0.4f, 5.0f * 0.4f); // 5 dps, applied every 0.4 seconds /* CEntityFlame *pFlame = CEntityFlame::Create( this ); if (pFlame) { if (pAttacker) pFlame->SetOwnerEntity(pAttacker); pFlame->SetLifetime( flFlameLifetime ); AddFlag( FL_ONFIRE ); SetEffectEntity( pFlame ); if ( flSize > 0.0f ) { pFlame->SetSize( flSize ); } } */ m_OnIgnite.FireOutput( this, this ); RemoveSpawnFlags( SF_NPC_GAG ); MoanSound( envASWZombieMoanIgnited, ARRAYSIZE( envASWZombieMoanIgnited ) ); if( m_pMoanSound ) { ENVELOPE_CONTROLLER.SoundChangePitch( m_pMoanSound, 120, 1.0 ); ENVELOPE_CONTROLLER.SoundChangeVolume( m_pMoanSound, 1, 1.0 ); } } }