我更改了问题,因为它似乎是目标没有注册子mc /或嵌套MovieClip的问题。
var box:Box = new Box();
ground.push(box);
levelPlane.addEventListener(MouseEvent.MOUSE_DOWN, onOver);
box.x = box.width /2* (x + y);
box.y = box.height/2 * (x - y);
levelPlane.addChild(box);
function onOver(e:MouseEvent):void{
var tree1:Tree1 = new Tree1();
addChild(tree1)
trace(e.target.x);
tree.x = e.target.x;
}
如何定位主MovieClip(levelPlane)中的动画片段(BOX)? 想象我在MovieClip中嵌套了10个盒子,叫做“levelPlane”我想点击任意一个盒子,在盒子上添加另一个Mc,我点击了x,y位置。
答案 0 :(得分:1)
Event.currentTarget属性引用处理事件的当前对象,即侦听器对象。如果要引用调度事件的对象,请使用e.target
答案 1 :(得分:1)
如果我理解正确,您试图将新创建的影片剪辑放在另一个上面,但它们不在同一坐标空间内。目标的坐标必须转换为tree1的坐标空间,以使它们具有相同的位置:
var tree1:Tree1 = new Tree1();
addChild(tree1);
var global:Point = e.target.parent.localToGlobal(new Point (e.target.x, e.target.y));
var local:Point = globalToLocal(global);
tree1.x = local.x;
tree1.y = local.y;