AndEngine - 在ParentScene中设置的声音也在ChildScene中播放

时间:2013-02-25 08:21:48

标签: android andengine scene

我有3个场景。

  1. GameModeScene
  2. PlayModeScene
  3. GameScene
  4. 在GameModeScene和PlayModeScene中,每当用户触摸场景时我都会播放声音

    -public class GameModeScene extends Scene implements IOnSceneTouchListener{}
    -public class PlayModeScene extends Scene implements IOnSceneTouchListener{}
    

    这就是我在onSceneTouchEvent上播放声音的方式

    public boolean onSceneTouchEvent(Scene pScene,TouchEvent pSceneTouchEvent) {
    
        if(pSceneTouchEvent.isActionDown()){
          // This Method plays sound
           this.animateSparkles(pSceneTouchEvent.getX(),pSceneTouchEvent.getY());
        }
        return false;
    }
    

    在更改场景时,我将PlayModeScene设置为ChildScene至GameModeScene,然后将GameScene设置为ChildScene至GameModeScene。

    在GameScene中我不会播放任何声音,但声音正在播放。它显然来自Previous Scene。 我怎么能阻止它。我不想在GameScene中发出这样的声音。

    这是在将场景从PlayModeScene更改为GameScene时所做的。

     mActivity.getEngine().runOnUpdateThread(new Runnable(){
               public void run() {
                     mPlayModeScene.clearTouchAreas();
                     mPlayModeScene.detachChildren();
    
                     mActivity.getEngine().clearUpdateHandlers();
                     mPlayModeScene.setChildScene(   
                       mActivity.getSceneController().getScene(SceneType.SinglePlayerNewGameScene)
                     );
                }
        });
    

0 个答案:

没有答案