Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
1.6 KiB

  1. //========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
  2. //
  3. // Purpose:
  4. //
  5. // $Workfile: $
  6. // $Date: $
  7. //
  8. //-----------------------------------------------------------------------------
  9. // $Log: $
  10. //
  11. // $NoKeywords: $
  12. //=============================================================================//
  13. #if !defined( FXFLECKS_H )
  14. #define FXFLECKS_H
  15. #ifdef _WIN32
  16. #pragma once
  17. #endif
  18. #include "particles_simple.h"
  19. #include "particlemgr.h"
  20. #include "particle_collision.h"
  21. // FleckParticle
  22. class FleckParticle : public Particle
  23. {
  24. public:
  25. Vector m_vecVelocity;
  26. float m_flRoll;
  27. float m_flRollDelta;
  28. float m_flDieTime; // How long it lives for.
  29. float m_flLifetime; // How long it has been alive for so far.
  30. byte m_uchColor[3];
  31. byte m_uchSize;
  32. };
  33. //
  34. // CFleckParticles
  35. //
  36. class CFleckParticles : public CSimpleEmitter
  37. {
  38. public:
  39. explicit CFleckParticles( const char *pDebugName );
  40. ~CFleckParticles();
  41. static CSmartPtr<CFleckParticles> Create( const char *pDebugName, const Vector &vCenter, const Vector &extents );
  42. virtual void RenderParticles( CParticleRenderIterator *pIterator );
  43. virtual void SimulateParticles( CParticleSimulateIterator *pIterator );
  44. //Setup for point emission
  45. virtual void Setup( const Vector &origin, const Vector *direction, float angularSpread, float minSpeed, float maxSpeed, float gravity, float dampen, int flags = 0 );
  46. CParticleCollision m_ParticleCollision;
  47. CFleckParticles *m_pNextParticleSystem;
  48. private:
  49. CFleckParticles( const CFleckParticles & ); // not defined, not accessible
  50. };
  51. #endif //FXFLECKS_H