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.

73 lines
1.6 KiB

  1. //--------------------------------------------------------------------------------------------------------
  2. // Copyright (c) 2007 Turtle Rock Studios, Inc. - All Rights Reserved
  3. #ifndef FOG_VOLUME_H
  4. #define FOG_VOLUME_H
  5. #ifdef _WIN32
  6. #pragma once
  7. #endif
  8. class CFogController;
  9. class CPostProcessController;
  10. class CColorCorrection;
  11. //--------------------------------------------------------------------------------------------------------
  12. // Fog volume entity
  13. class CFogVolume : public CServerOnlyEntity
  14. {
  15. DECLARE_CLASS( CFogVolume, CServerOnlyEntity );
  16. DECLARE_DATADESC();
  17. public:
  18. CFogVolume();
  19. virtual ~CFogVolume();
  20. virtual void Spawn( void );
  21. virtual void Activate();
  22. static CFogVolume *FindFogVolumeForPosition( const Vector &position );
  23. const char *GetFogControllerName() const
  24. {
  25. return STRING( m_fogName );
  26. }
  27. CFogController* GetFogController( ) const
  28. {
  29. return m_hFogController.Get();
  30. }
  31. CPostProcessController* GetPostProcessController( ) const
  32. {
  33. return m_hPostProcessController.Get();
  34. }
  35. CColorCorrection* GetColorCorrectionController( ) const
  36. {
  37. return m_hColorCorrectionController.Get();
  38. }
  39. void InputEnable( inputdata_t &data );
  40. void InputDisable( inputdata_t &data );
  41. private:
  42. string_t m_fogName;
  43. string_t m_postProcessName;
  44. string_t m_colorCorrectionName;
  45. CHandle< CFogController > m_hFogController;
  46. CHandle< CPostProcessController > m_hPostProcessController;
  47. CHandle< CColorCorrection > m_hColorCorrectionController;
  48. bool m_bDisabled;
  49. bool m_bInFogVolumesList;
  50. void AddToGlobalList();
  51. void RemoveFromGlobalList();
  52. };
  53. extern CUtlVector< CFogVolume * > TheFogVolumes;
  54. #endif // FOG_VOLUME_H