0
我想创建一个像3个选项一样的从头开始。第一个网站发送有关哪个字段是正确的信息。然后闪光取代2个影片剪辑与'错误'的形象和1与'好'的形象。我已经创建了临时平台,但只适用于1个对象。我不知道为什么?闪存中的多个对象(检测事件中的对象)
我甚至尝试过重复的事件功能。最好的方法是获得元素索引。但如何在事件函数中传递它?
基本上它只有3个黑色的瓷砖上的图像。但为什么只有第一个对象有效?
我的代码是:
function getFlashVars():Object {
return Object(LoaderInfo(this.loaderInfo).parameters);
}
var m = 0;
function stopRys(myszka:MouseEvent):void {
m = myszka.currentTarget.tabIndex;
cover[m].removeEventListener(MouseEvent.MOUSE_MOVE, tworzMaske);
image[m].removeEventListener(MouseEvent.MOUSE_MOVE, tworzMaske);
}
function startRys(myszka:MouseEvent):void {
m = myszka.currentTarget.tabIndex;
cover[m].addEventListener(MouseEvent.MOUSE_MOVE, tworzMaske);
image[m].addEventListener(MouseEvent.MOUSE_MOVE, tworzMaske);
}
function tworzMaske(myszka:MouseEvent):void {
m = myszka.currentTarget.tabIndex;
image[m].visible = true;
rysuj[m].graphics.lineStyle(1);
rysuj[m].graphics.beginFill(0x000000);
rysuj[m].graphics.drawCircle(mouseX, mouseY, 50);
image[m].mask = rysuj[m];
}
var key1 = getFlashVars().key1;
var intWidth:Number = 200;
var intHeight:Number = 200;
var cover = new Array();
var image = new Array();
var rysuj = new Array();
var i:Number = 0;
for (i=0; i<3; i++) {
cover[i] = new MovieClip();
image[i] = new MovieClip();
rysuj[i] = new Sprite();
cover[i]._x = intWidth*i;
cover[i]._y = 0;
cover[i].tabIndex = i;
cover[i]._width = intWidth;
cover[i]._height = intHeight;
cover[i].graphics.beginFill(0x000000);
cover[i].graphics.drawRect(intWidth*i,0,intWidth,intHeight);
cover[i].graphics.endFill();
image[i]._x = intWidth*i;
image[i]._y = 0;
image[i].tabIndex = i;
image[i]._width = intWidth;
image[i]._height = intHeight;
var myBitmapDataObject:przegrana = new przegrana(200, 200);
var myImage:Bitmap = new Bitmap(myBitmapDataObject);
image[i].addChild(myImage);
addChild(cover[i]);
addChild(image[i]);
addChild(rysuj[i]);
image[i].visible = false;
image[i].addEventListener(MouseEvent.MOUSE_DOWN, startRys);
cover[i].addEventListener(MouseEvent.MOUSE_DOWN, startRys);
image[i].addEventListener(MouseEvent.MOUSE_OUT, stopRys);
image[i].addEventListener(MouseEvent.MOUSE_UP, stopRys);
}
编辑:
现在我有一些奇怪的问题。事件只能在第一个对象上工作,就像在整个Flash动画中一样。
谢谢,我尝试通过它作为选项卡索引,但仍然更多的问题:(更多的话题 – Kaminari 2011-05-28 16:44:23