Merge pull request #1223 from MiroslavR/rifle_sounds

Fix for incorrect gun sounds with the Clean Hunter Rifles mod
0.6.1
scrawl 8 years ago committed by GitHub
commit a6429a2518

@ -12,6 +12,9 @@
#include "../mwbase/soundmanager.hpp"
#include "../mwbase/windowmanager.hpp"
#include "../mwworld/inventorystore.hpp"
#include "../mwworld/class.hpp"
#include "interpretercontext.hpp"
#include "ref.hpp"
@ -183,8 +186,22 @@ namespace MWScript
int index = runtime[0].mInteger;
runtime.pop();
runtime.push (MWBase::Environment::get().getSoundManager()->getSoundPlaying (
ptr, runtime.getStringLiteral (index)));
bool ret = MWBase::Environment::get().getSoundManager()->getSoundPlaying (
ptr, runtime.getStringLiteral (index));
// GetSoundPlaying called on an equipped item should also look for sounds played by the equipping actor.
if (!ret && ptr.getContainerStore())
{
MWWorld::Ptr cont = MWBase::Environment::get().getWorld()->findContainer(ptr);
if (!cont.isEmpty() && cont.getClass().hasInventoryStore(cont) && cont.getClass().getInventoryStore(cont).isEquipped(ptr))
{
ret = MWBase::Environment::get().getSoundManager()->getSoundPlaying (
cont, runtime.getStringLiteral (index));
}
}
runtime.push(ret);
}
};

Loading…
Cancel
Save