//----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void C_FireSmoke::Simulate( void ) { if ( ShouldDraw() == false ) { for ( int i = 0; i < NUM_CHILD_FLAMES; i++ ) { m_entFlames[i].SetRenderColor( 0, 0, 0, 0 ); m_entFlames[i].SetBrightness( 0 ); } if ( m_nFlags & bitsFIRESMOKE_VISIBLE_FROM_ABOVE ) { for ( int i = 0; i < NUM_CHILD_FLAMES; i++ ) { m_entFlamesFromAbove[i].SetRenderColor( 0, 0, 0, 0 ); m_entFlamesFromAbove[i].SetBrightness( 0 ); } } m_nFlags &= ~bitsFIRESMOKE_SMOKE; } //Only do this if we're active if (( m_nFlags & bitsFIRESMOKE_ACTIVE ) == false ) return; Update(); AddFlames(); }
//----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- void C_FireSmoke::Simulate( void ) { //Only do this if we're active if (( m_nFlags & bitsFIRESMOKE_ACTIVE ) == false ) return; Update(); AddFlames(); }
//----------------------------------------------------------------------------- // Purpose: //----------------------------------------------------------------------------- bool C_Plasma::Simulate( void ) { //Only do this if we're active if ( ( m_nFlags & bitsFIRESMOKE_ACTIVE ) == false ) return false; Update(); AddFlames(); float dScale = m_flScaleRegister - m_flGlowScale; m_flGlowScale = m_flScaleRegister; // Note: Sprite renderer assumes scale of 0.0 is 1.0 m_entGlow.SetScale( MAX( 0.0000001f, (m_flScaleRegister*1.5f) + GetFlickerScale() ) ); m_entGlow.SetLocalOriginDim( Z_INDEX, m_entGlow.GetLocalOriginDim( Z_INDEX ) + ( dScale * 32.0f ) ); return true; }