我是这方面的初学者,我已经设置了我的太空入侵者克隆,我在互联网上的各种教程中学习了如何制作flash游戏,但没有声音。然而,游戏运行良好,没有错误,但是,当我按下空格键时,声音没有播放,这是我想要的那种声音。以下是PlayerShip.as上的代码:
package
{
import org.flixel.*;
public class PlayerShip extends FlxSprite
{
[Embed(source = "../img/ship.png")] private var ImgShip:Class;
[Embed(source = "../snd/shoot.mp3")] private var ShootEffect:Class;
public function PlayerShip()
{
super(FlxG.width/2-6, FlxG.height-12, ImgShip);
}
override public function update():void
{
velocity.x = 0;
if(FlxG.keys.LEFT)
velocity.x -= 150;
if(FlxG.keys.RIGHT)
velocity.x += 150;
super.update();
if(x > FlxG.width-width-4)
x = FlxG.width-width-4;
if(x < 4)
x = 4;
if (FlxG.keys.justPressed("SPACE"))
{
var bullet:FlxSprite = (FlxG.state as PlayState).playerBullets.recycle() as FlxSprite;
bullet.reset(x + width/2 - bullet.width/2, y);
bullet.velocity.y = -140;
FlxG.play(ShootEffect);
}
}
}
}
我在互联网上进行了研究,谷歌只显示了如何添加音乐,而不是我所说的声音,请帮助!!!如有任何帮助,我们将一如既往地不胜感激!!
播放音乐或孤立的SFX在语义上几乎相同,但这里有一种轻松播放SFX的方法。它使用FlxSound
类的一个实例:
package
{
import org.flixel.*;
public class PlayerShip extends FlxSprite
{
[Embed(source = "../snd/shoot.mp3")] private var ShootEffect:Class;
private var shootSound:FlxSound;
public function PlayerShip()
{
super(FlxG.width/2-6, FlxG.height-12, ImgShip);
// Instantiate and load the SFX
shootSound = new FlxSound();
shootSound.loadEmbedded(ShootEffect);
}
override public function update():void
{
if (FlxG.keys.justPressed("SPACE"))
{
// Play the SFX
shootSound.play();
}
}
}
}