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

时间:2016-06-14 08:30:53

标签: java slick2d

我正在使用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();
        }

我使用过jogg-0.0.7.jar,jorbis-0.0.17-1.jar,jorbis-0.0.15-1.jar。

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

你能帮我解决一下吗?

感谢。

2 个答案:

答案 0 :(得分:1)

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

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

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

显然,Sound Class的构造函数需要OGG,MOD / XM文件的路径。您应该使用这些格式之一来确保每个事件都按预期工作。

答案 1 :(得分:0)

我正在为寻找这种情况的答案的其他人发布此信息。 在Windows中:我只是将库位置更改为项目外部。然后它从项目属性重置库路径后工作。但在Linux中它没有做任何事情工作正常。如果您确定已正确添加所有库并出现错误,我建议您将库位置更改为项目外部。