From 3f181f9a9d71368bcaa847ca00df194979f5e674 Mon Sep 17 00:00:00 2001 From: Marc Zinnschlag Date: Tue, 4 Sep 2012 15:21:56 +0200 Subject: [PATCH] Issue #370: Support for targets in containers --- apps/openmw/mwworld/action.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/openmw/mwworld/action.cpp b/apps/openmw/mwworld/action.cpp index efce2b129..98682e705 100644 --- a/apps/openmw/mwworld/action.cpp +++ b/apps/openmw/mwworld/action.cpp @@ -22,12 +22,15 @@ void MWWorld::Action::execute (const Ptr& actor) { if (mTeleport && actor.getRefData().getHandle()=="player") { + // sound moves with player when teleporting MWBase::Environment::get().getSoundManager()->playSound(mSoundId, 1.0, 1.0, MWBase::SoundManager::Play_NoTrack); } else { - MWBase::Environment::get().getSoundManager()->playSound3D (mTarget.isEmpty() ? actor : mTarget, + bool local = mTarget.isEmpty() || !mTarget.isInCell(); // no usable target + + MWBase::Environment::get().getSoundManager()->playSound3D (local ? actor : mTarget, mSoundId, 1.0, 1.0, mTeleport ? MWBase::SoundManager::Play_NoTrack : MWBase::SoundManager::Play_Normal); }