如何在达到某个值后触发一次声音

时间:2017-01-17 09:02:18

标签: java android

如何调整源代码,以便在升级时,升级声音只应触发一次?

现在声音一直在复制并且不会停止,但我希望升级声音只为每个级别触发一次。

private void Run(){
    int a = 0;
    do {
        showEmerald();
        a++;
    }while (a<15);//show more emeralds
    vanishEmerald();
    updateScreen();
    handler.postDelayed(this,  600);

    if (points>=25){
        level=2;
        levelup.start();
    }

1 个答案:

答案 0 :(得分:1)

一旦命中超过25分,你定义它的方式 If-clause 总是满满并且会触发levelup。我的建议是在循环外定义If或/并在触发levelup后重置点的计数器。

这样的事情:

if (points>=25){
    level++;
    levelup.start();
    points = 0
}

这样你就不必每次都手动增加等级,而且每次都会进一步增加等级。