如何在slick2D java游戏库中播放声音和音乐



我正在用java slick2D开发一个2D游戏。

游戏运行良好,没有错误。但如果我尝试播放声音和音乐,则不会。

反正我没能玩。

这是我的代码:

 @Override
        public void init(GameContainer gc,StateBasedGame sbg) throws SlickException{
            sound=new Sound("sounds/town.wav");
            sound.play(1f, 1f);
            sound.play();
        }

我用过慢跑-0.0.7.jar,jorbis-0.0.17-1.jar,jorbis-0.0.15-1.jar。

没有任何错误,但声音没有播放。

你能给我一个解决方案吗?

谢谢。

您的项目似乎设置正确,因为没有例外。

我建议检查您的声音是否真的被播放过:

sound.play()
if(sound.playing){
System.print.out("works");
}

如果这打印出"工作",您的.wav文件可能已损坏。您可以尝试改用.ogg文件。此外,我认为Slick仅支持8/16位单声道/立体声格式。

您可以尝试的另一件事是将代码放入更新循环中,看看它的行为方式。

另请参阅此处的文档:http://slick.ninjacave.com/javadoc/org/newdawn/slick/Sound.html

public Sound(java.lang.String ref) throws SlickException
Parameters:ref - The location of the OGG or MOD/XM to load

显然,声音类的构造函数想要 OGG、MOD/XM 文件的路径。您应该使用这些格式之一来确保一切按预期工作。

我正在为其他寻找这种情况答案的人发布此内容。在窗口中:我刚刚将库位置更改为项目外部。然后它在从项目属性重置库路径后工作。但在 Linux 中它无需执行任何操作即可正常工作。如果您确定已正确添加所有库并出现一些错误,我建议您将库位置更改为项目外部。

最新更新