Changeset View
Changeset View
Standalone View
Standalone View
source/simulation2/components/CCmpSoundManager.cpp
Show First 20 Lines • Show All 92 Lines • ▼ Show 20 Lines | public: | ||||
virtual void StopMusic() | virtual void StopMusic() | ||||
{ | { | ||||
if (!g_SoundManager) | if (!g_SoundManager) | ||||
return; | return; | ||||
g_SoundManager->Pause(true); | g_SoundManager->Pause(true); | ||||
} | } | ||||
virtual void AddAmbientEmitter(const std::wstring& name, entity_id_t source) | |||||
{ | |||||
if (!g_SoundManager) | |||||
return; | |||||
CmpPtr<ICmpPosition> cmpPosition(GetSimContext(), source); | |||||
if (!cmpPosition || !cmpPosition->IsInWorld()) | |||||
return; | |||||
g_SoundManager->AddAmbientEmitter(name, CVector3D(cmpPosition->GetPosition()), source); | |||||
} | |||||
virtual void RemoveAmbientEmitter(entity_id_t source) | |||||
{ | |||||
if (!g_SoundManager) | |||||
return; | |||||
g_SoundManager->RemoveAmbientEmitter(source); | |||||
} | |||||
virtual void UpdateAmbientEmitterPosition(entity_id_t source) | |||||
{ | |||||
if (!g_SoundManager) | |||||
return; | |||||
CmpPtr<ICmpPosition> cmpPosition(GetSimContext(), source); | |||||
if (!cmpPosition || !cmpPosition->IsInWorld()) | |||||
return; | |||||
g_SoundManager->UpdateAmbientEmitterPosition(source, CVector3D(cmpPosition->GetPosition())); | |||||
} | |||||
}; | }; | ||||
REGISTER_COMPONENT_TYPE(SoundManager) | REGISTER_COMPONENT_TYPE(SoundManager) | ||||
Wildfire Games · Phabricator