Sound actuator bug reported by zapman on blenderartist.
authorCampbell Barton <ideasman42@gmail.com>
Thu, 11 Jun 2009 10:26:53 +0000 (10:26 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Thu, 11 Jun 2009 10:26:53 +0000 (10:26 +0000)
Negative events would play on an actuator if it hadn't played a sound yet.

source/gameengine/Ketsji/KX_GameObject.cpp
source/gameengine/Ketsji/KX_SoundActuator.cpp

index 7f417b325c8919d644aef84108b9189a3f4f832e..fdab34c13a91419d70cf80204f205f1e83bb3a9f 100644 (file)
@@ -2207,7 +2207,7 @@ PyObject* KX_GameObject::PyGetChildrenRecursive()
 
 PyObject* KX_GameObject::PyGetMesh(PyObject* args)
 {
-       ShowDeprecationWarning("getMesh()", "the meshes property");
+       ShowDeprecationWarning("getMesh()", "the meshes property (now a list of meshes)");
        
        int mesh = 0;
 
index 5c02a2db6460bb845b7f05aac42208e9f73e6280..c13271f66a583fd1313963121f2855c0137fbeba 100644 (file)
@@ -112,7 +112,7 @@ bool KX_SoundActuator::Update(double curtime, bool frame)
                return false;
 
        // actual audio device playing state
-       bool isplaying = (m_soundObject->GetPlaystate() != SND_STOPPED) ? true : false;
+       bool isplaying = (m_soundObject->GetPlaystate() != SND_STOPPED && m_soundObject->GetPlaystate() != SND_INITIAL) ? true : false;
 
        if (m_pino)
        {
@@ -194,7 +194,7 @@ bool KX_SoundActuator::Update(double curtime, bool frame)
                }
        }
        // verify that the sound is still playing
-       isplaying = (m_soundObject->GetPlaystate() != SND_STOPPED) ? true : false;
+       isplaying = (m_soundObject->GetPlaystate() != SND_STOPPED && m_soundObject->GetPlaystate() != SND_INITIAL) ? true : false;
 
        if (isplaying)
        {