2012-07-10 154 views
0

我正在寻找在Flash CS5中事件(如按下按钮)后交叉淡入淡出两个声音文件。 理想情况下,第一个声音循环播放,直到按下按钮时,淡出的声音将同时开始淡出。我对actionscript 3的理解有限。 感谢您的帮助:)在Flash CS5事件后出现交叉淡化声音

回答

0

为了达到这种效果,您将需要使用两个soundChannels。由于您使用CS5我假设你正在循环的第一个声音文件像这样(如果没有,你应该是):

var sc1:SoundChannel = myFirstSound.play(0, 999); 

现在,当事件被称为(按钮被点击)你将要降低音量的第一个声音文件,并增加第二个声音文件的音量。为此,您可以在soundChannel上使用soundTransform属性。这将是降低音量的一个例子。

sc1.soundTransform = new SoundTransform(sc1.soundTransform.volume - .1, 0); 

则需减少第一个声音文件这样的体积在enterFrame事件循环。也是在这个循环中,您将需要增加第二个声音文件的音量:

var sc2:SoundChannel = mySecondSound.play(0, 999); 
sc2.soundTransform = new SoundTransform(0, 0); 

那么enterFrame事件循环内增加第二声音这将是与上面相同,但加法,而不是减法:

sc2.soundTransform = new SoundTransform(sc2.soundTransform.volume + .1, 0); 

在这种情况下.1在淡化声音的速度有多快。你可能不得不玩这个。一旦第一个声音文件音量达到零,你应该删除它并结束循环。无论如何,我认为这是足够的信息,以完成你的目标。祝你好运。

+0

感谢您的帮助 – user1515452 2012-09-05 10:32:14