Flash 操作脚本3.0中变量的IF语句
我正在为一个项目构建一个样本垫式仪器,我有四个通道用于四种不同的仪器界面有四个按钮用于选择仪器,当选择按钮时,图像应为绿色,但当选择其他乐器时,图像应转到电影剪辑的第二帧,这是一个红色按钮,表示乐器已关闭 第23行我为与频道相关的变量添加了一个条件语句,它不会显示任何错误,但在我单击另一个按钮时也不会更改图像。有人知道我哪里出错了吗Flash 操作脚本3.0中变量的IF语句,flash,actionscript,if-statement,conditional,Flash,Actionscript,If Statement,Conditional,我正在为一个项目构建一个样本垫式仪器,我有四个通道用于四种不同的仪器界面有四个按钮用于选择仪器,当选择按钮时,图像应为绿色,但当选择其他乐器时,图像应转到电影剪辑的第二帧,这是一个红色按钮,表示乐器已关闭 第23行我为与频道相关的变量添加了一个条件语句,它不会显示任何错误,但在我单击另一个按钮时也不会更改图像。有人知道我哪里出错了吗 //import flash stuff import flash.events.MouseEvent; import flash.display.MovieCl
//import flash stuff
import flash.events.MouseEvent;
import flash.display.MovieClip;
stop();
//event listener for the power button
poweroff.addEventListener(MouseEvent.CLICK, mouseClick1);
function mouseClick1(event:MouseEvent):void{
gotoAndStop(1);
}
//select which samples to use with event listener,
//changes var selector bellow, so input listens for
//different samples
drumSelector.addEventListener(MouseEvent.CLICK, drumClick);
function drumClick(event:MouseEvent):void{
selector = drums;
if (selector == drums)
{
drumSelector.gotoAndStop(1);
}else{
drumSelector.gotoAndStop(2);
}
}
bassSelector.addEventListener(MouseEvent.CLICK, bassClick);
function bassClick(event:MouseEvent):void{
selector = bass;
}
synthSelector.addEventListener(MouseEvent.CLICK, synthClick);
function synthClick(event:MouseEvent):void{
selector = synth;
}
beatSelector.addEventListener(MouseEvent.CLICK, beatClick);
function beatClick(event:MouseEvent):void{
selector = beat;
}
//selects which movieclip samples to use for input
var selector:MovieClip = drums;
//listen for events on display keyboard
//make movieclips visible so they can play samples
key1.addEventListener(MouseEvent.CLICK, key1Click);
function key1Click(evt:MouseEvent):void
{
selector.i1.visible=true;
}
key2.addEventListener(MouseEvent.CLICK, key2Click);
function key2Click(evt:MouseEvent):void
{
selector.i2.visible=true;
}
key3.addEventListener(MouseEvent.CLICK, key3Click);
function key3Click(evt:MouseEvent):void
{
selector.i3.visible=true;
}
key4.addEventListener(MouseEvent.CLICK, key4Click);
function key4Click(evt:MouseEvent):void
{
selector.i4.visible=true;
}
目前,您的条件仅在单击drumSelector按钮时执行,因为它位于drumSelector click处理程序中。您应该将条件移动到一个单独的函数中,并从控制仪器的四个按钮的单击处理程序中调用它。为条件创建一个新函数,如:
function updateSelector(){
if (selector == drums)
{
drumSelector.gotoAndStop(1);
}else{
drumSelector.gotoAndStop(2);
}
}
然后在每个按钮处理程序中:
bassSelector.addEventListener(MouseEvent.CLICK, bassClick);
function bassClick(event:MouseEvent):void{
selector = bass;
updateSelector();
}