我有一个8个影片剪辑的数组,可以拖放到他们常见的hitObject的MC上。AS3:如何从基于e.target的MC数组中添加儿童?
我希望拖动哪个mc作为hitObject MC的子项被添加,但是我在设置代码时遇到了麻烦。目前,只有一个特定实例将作为hitObject的子项添加,因为除了特定实例名称外,我不知道要在addChild()参数内写入什么内容(以下都不是可接受的:e.target,数组名称,MovieClip名称)。
这里是我的代码--any和所有帮助将非常感激:
import flash.events.MouseEvent;
import flash.display.MovieClip;
var redArray:Array = [red,red1,red2,red3,red4,red5,red6,red7];
redArray.forEach(setupDrag);
function setupDrag(dragger:MovieClip, index:int, array:Array):void {
dragger.addEventListener(MouseEvent.MOUSE_DOWN, dragRed);
dragger.buttonMode=true;}
redArray.forEach(setupDrop);
function setupDrop(dropper:MovieClip, index:int, array:Array):void {
dropper.addEventListener(MouseEvent.MOUSE_UP, dropRed);
dropper.buttonMode=true;}
var dirt:MovieClip
function dragRed(e:Event):void{
dirt = e.currentTarget as MovieClip;
e.target.startDrag();
}
function dropRed(e:Event):void{
e.target.stopDrag();
if (e.target.hitTestObject(drawer_mc))
{
drawer_mc.addChild(red1);
red1.y=10;
}
}
提前感谢!
谢谢,这正是我所需要的!我无法完全理解它。我在等待的时候踢过去,发现了另一个解决方案,尽管它不像这样干净。我很欣赏你提供的链接。干杯! – llyfre