BVB Source Codes

CRYENGINE Show RuntimeAreaObject.h Source code

Return Download CRYENGINE: download RuntimeAreaObject.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #ifndef RUNTIMEAREAOBJECT_H_INCLUDED
  4. #define RUNTIMEAREAOBJECT_H_INCLUDED
  5.  
  6. class CRuntimeAreaObject : public CGameObjectExtensionHelper<CRuntimeAreaObject, IGameObjectExtension>
  7. {
  8. public:
  9.  
  10.         typedef unsigned int TSurfaceCRC;
  11.  
  12.         struct SAudioControls
  13.         {
  14.                 AudioControlId audioTriggerId;
  15.                 AudioControlId audioRtpcId;
  16.  
  17.                 explicit SAudioControls(
  18.                   AudioControlId _audioTriggerId = INVALID_AUDIO_CONTROL_ID,
  19.                   AudioControlId _audioRtpcId = INVALID_AUDIO_CONTROL_ID)
  20.                         : audioTriggerId(_audioTriggerId)
  21.                         , audioRtpcId(_audioRtpcId)
  22.                 {}
  23.         };
  24.  
  25.         typedef std::map<TSurfaceCRC, SAudioControls> TAudioControlMap;
  26.  
  27.         static TAudioControlMap m_audioControls;
  28.  
  29.         CRuntimeAreaObject();
  30.         virtual ~CRuntimeAreaObject() override;
  31.  
  32.         // IGameObjectExtension
  33.         virtual bool                 Init(IGameObject* pGameObject) override;
  34.         virtual void                 InitClient(int channelId) override                                                       {}
  35.         virtual void                 PostInit(IGameObject* pGameObject) override                                              {}
  36.         virtual void                 PostInitClient(int channelId) override                                                   {}
  37.         virtual bool                 ReloadExtension(IGameObject* pGameObject, const SEntitySpawnParams& params) override;
  38.         virtual void                 PostReloadExtension(IGameObject* pGameObject, const SEntitySpawnParams& params) override {}
  39.         virtual void                 FullSerialize(TSerialize ser) override                        {}
  40.         virtual bool                 NetSerialize(TSerialize ser, EEntityAspects aspect, uint8 profile, int flags) override;
  41.         virtual void                 PostSerialize() override                                      {}
  42.         virtual void                 SerializeSpawnInfo(TSerialize ser) override                   {}
  43.         virtual ISerializableInfoPtr GetSpawnInfo() override                                       { return NULL; }
  44.         virtual void                 Update(SEntityUpdateContext& ctx, int slot) override          {}
  45.         virtual void                 HandleEvent(const SGameObjectEvent& gameObjectEvent) override {}
  46.         virtual void                 ProcessEvent(SEntityEvent& entityEvent) override;
  47.         virtual void                 SetChannelId(uint16 id) override                              {}
  48.         virtual void                 SetAuthority(bool auth) override                              {}
  49.         virtual void                 PostUpdate(float frameTime) override                          { CRY_ASSERT(false); }
  50.         virtual void                 PostRemoteSpawn() override                                    {}
  51.         virtual void                 GetMemoryUsage(ICrySizer* pSizer) const override;
  52.         // ~IGameObjectExtension
  53.  
  54.         // IEntityComponent
  55.         virtual void OnShutDown() override;
  56.         // ~IEntityComponent
  57.  
  58. private:
  59.  
  60.         struct SAreaSoundInfo
  61.         {
  62.                 SAudioControls audioControls;
  63.                 float          parameter;
  64.  
  65.                 explicit SAreaSoundInfo(SAudioControls const& _audioControls, float const _parameter = 0.0f)
  66.                         : audioControls(_audioControls)
  67.                         , parameter(_parameter)
  68.                 {}
  69.  
  70.                 ~SAreaSoundInfo()
  71.                 {}
  72.         };
  73.  
  74.         typedef std::map<TSurfaceCRC, SAreaSoundInfo>  TAudioParameterMap;
  75.         typedef std::map<EntityId, TAudioParameterMap> TEntitySoundsMap;
  76.  
  77.         void UpdateParameterValues(IEntity* const pEntity, TAudioParameterMap& paramMap);
  78.         void StopEntitySounds(EntityId const entityId, TAudioParameterMap& paramMap);
  79.  
  80.         TEntitySoundsMap m_activeEntitySounds;
  81. };
  82.  
  83. #endif // RUNTIMEAREAOBJECT_H_INCLUDED
  84.  
downloadRuntimeAreaObject.h Source code - Download CRYENGINE Source code
Related Source Codes/Software:
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top