【发布时间】:2014-12-29 00:06:51
【问题描述】:
在我的游戏中,我尝试添加音效和其他声音元素。我对所有内容(BGM、sfx 等)都使用了 AudioClip。现在我需要检查一个 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();
【问题讨论】:
-
看起来像是两个不同的API;
AudioClip在java.applet中,而Clip在javax.sound.sampled中。 -
它们有什么优缺点吗?因为我真的需要 .isRunning() 函数,所以我应该将所有声音都更改为 Clip 而不是 AudioClip?还是有别的办法?