Actionscript 3 有没有办法在电影剪辑中使用一个声道?
我能描述这一点的唯一方法是展示我已经拥有的代码,然后试图解释我想要做什么。。 基本上,我正在创建一个音板游戏,在屏幕的底部我会有一个是movieclip的条,我会将其他movieclip拖到上面,然后单击pay,使用数组和。按顺序播放。我试着用代码把声音放到电影唇上。到目前为止,我有:Actionscript 3 有没有办法在电影剪辑中使用一个声道?,actionscript-3,flash,audio,flash-cs5,media-channel,Actionscript 3,Flash,Audio,Flash Cs5,Media Channel,我能描述这一点的唯一方法是展示我已经拥有的代码,然后试图解释我想要做什么。。 基本上,我正在创建一个音板游戏,在屏幕的底部我会有一个是movieclip的条,我会将其他movieclip拖到上面,然后单击pay,使用数组和。按顺序播放。我试着用代码把声音放到电影唇上。到目前为止,我有: var snd1:Sound = newSound(); snd.load(newURLRequest("naturefrog.wav")); var channel:SoundChannel; snd.add
var snd1:Sound = newSound();
snd.load(newURLRequest("naturefrog.wav"));
var channel:SoundChannel;
snd.addEventListener
现在,我一直在想我应该为侦听器添加哪些内容。您应该使用来确定要添加哪些侦听器。页面底部有一些有用的例子
我想您会想添加:
snd.addEventListener(Event.COMPLETE, completeHandler);
snd.addEventListener(Event.ID3, id3Handler);
snd.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
snd.addEventListener(ProgressEvent.PROGRESS, progressHandler);
如果声音是外部的,请参阅此答案了解声音何时完成加载: 现在,当您准备好播放声音并聆听它完成时,这里的答案如下:
当用户将一个movieclip的声音引用拖动到一个特定的movieclip中时,您正在将它推送到一个数组中,对吗?如果这样做,则可以从数组中移动元素(array.shift,通常会删除并返回数组的第一个元素)
谢谢你的帮助。我想做的是,当我把它拖放到另一个电影剪辑上时,让它播放声音,如果这有意义的话,我完全迷路了,所以任何帮助都会很好。谢谢我不确定你是否能帮我,但我想做的是让电影剪辑在被拖到另一个电影剪辑上时播放声音,然后按下播放按钮,以便按照声音被拖的顺序播放声音。我知道我需要使用数组、推送函数和循环…但我迷路了。任何帮助都将不胜感激。谢谢,谢谢,这真的很有帮助。我不确定你是否能帮我,但我想做的是让movieclip在拖到另一个movieclip上时播放声音,然后按下播放按钮,以便按照声音被拖的顺序播放声音。我知道我需要使用数组、推送函数和循环…但我迷路了。任何帮助都将不胜感激。谢谢
function playSoundInArray(){
if(array.length){
var snd:Sound = array.shift() as Sound;
channel = snd.play();
channel.addEventListener(Event.SOUND_COMPLETE, onSoundPlayed);
}else{
//Do something here if there is no sound reference or the array is empty
}
}
function onSoundPlayed(e:EVent){
channel.removeEventListener(Event.SOUND_COMPLETE, onSoundPlayed);
playSoundInArray();
}