0

将声音嵌入到我的 .swf 中。

[Embed(source='/audio/files/sp_worm.mp3')]
private var sf_warp_finish:Class;

在这里阅读:

var sndClass:Class;
if (soundId == "sf_warp_finish") sndClass = new sf_warp_finish();

并收到此错误:

Type Coercion failed: cannot convert GameSoundManager_sf_warp_finish@a94eb31 to Class.

不知道为什么这不起作用 - 有什么想法吗?

4

2 回答 2

2

sf_warp_finish 实际上是嵌入数据的类;当你调用 new() 时,你实例化它,现在你有一个对象(不是 Class 对象)。

有关示例,请参见http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/SoundAsset.html 。

于 2013-01-17T19:47:10.937 回答
0

它应该工作:

var snd:Sound;
if (soundId == "sf_warp_finish") snd = new sf_warp_finish() as Sound;
if (snd)
    snd.play();
于 2013-01-17T21:15:41.993 回答