在我的游戏中,我尝试添加sfx和其他声音元素。我将AudioClip用于所有内容(BGM,sfx等)。现在,我需要检查sfx是否已在循环中。我想归档的是,如果角色靠近门户,则应该循环播放sfx。如果超出距离,则应停止。我读到有一个.isRunning()函数,但据我所知它只能与Clip一起使用。这是我的代码的一部分。

那么AudioClip和Clip有什么区别?

if (hero.getHeroX() > (MAZECOL - 5) * 30 && hero.getHeroY() > (MAZEROW - 4) * 30)
    if (portalSFX is not in loop)
        portalSFX.loop();
else
    portalSFX.stop();

最佳答案

AudioClip属于applet API。使用它真的没有意义。它较旧并且功能有限。

Clip属于javax.sound.sampled。可以从AudioSystem获得,并且有官方教程here

10-05 23:40