0
Adobe Animateでインタラクティブな紙の人形を作成していて、ドラッグドロップ機能を動作させるときに問題があります。私は同じエリアにドラッグされる可能性が必要な複数の衣服アイテムを持っています。たとえば、私は4つの異なるシャツオプションを持っています。私は2つのドレス(黄色のドレス_mc &青いドレス_mc)から始めました。黄色のドレスは正常に機能していますが、青いドレスは機能しません。ドラッグすることはできますが、ドロップすることはできません。助言がありますか?ActionScript 3.0でドラッグ&ドロップを作成する方法は?複数のアイテムが複数のターゲットにドラッグされている
これが今の私が持っているコードです:
var objectoriginalX:Number;
var objectoriginalY:Number;
flower_mc.buttonMode = true;
flower_mc.addEventListener(MouseEvent.MOUSE_DOWN, pickupObject);
flower_mc.addEventListener(MouseEvent.MOUSE_UP, dropObject);
yellowdress_mc.buttonMode = true;
yellowdress_mc.addEventListener(MouseEvent.MOUSE_DOWN, pickupObject);
yellowdress_mc.addEventListener(MouseEvent.MOUSE_UP, dropObject);
bluedress_mc.buttonMode = true;
bluedress_mc.addEventListener(MouseEvent.MOUSE_DOWN, pickupObject);
bluedress_mc.addEventListener(MouseEvent.MOUSE_UP, dropObject);
function pickupObject(event:MouseEvent):void {
event.target.startDrag(true);
event.target.parent.addChild(event.target);
objectoriginalX = event.target.x;
objectoriginalY = event.target.y;
}
function dropObject(event:MouseEvent):void {
event.target.stopDrag();
var matchingTargetName:String = "target" + event.target.name;
var matchingTarget:DisplayObject = getChildByName(matchingTargetName);
if (event.target.dropTarget != null && event.target.dropTarget.parent ==
matchingTarget){
event.target.removeEventListener(MouseEvent.MOUSE_DOWN, pickupObject);
event.target.removeEventListener(MouseEvent.MOUSE_UP, dropObject);
event.target.buttonMode = false;
event.target.x = matchingTarget.x;
event.target.y = matchingTarget.y;
} else {
event.target.x = objectoriginalX;
event.target.y = objectoriginalY;
}
}