Я пытаюсь создать игру с перетаскиванием, в которой пользователь может создать что-то, используя предоставленные мной изображения. У меня будут изображения в меню, которые пользователь может щелкнуть и перетащить в область здания. Пользователь сможет добавить столько экземпляров этого изображения, сколько захочет.
Я смог заставить часть его работать. Пока что я могу щелкнуть изображение и перетащить его, а также создать столько экземпляров, сколько захочу. Однако я не могу щелкнуть и перетащить изображение после его размещения.
Когда я делаю трассировку, чтобы узнать, что это за имя, оно говорит, что все новые экземпляры называются hillChild1. Я пытался назвать их hillChild1, hillChild2 и т. д., но это, похоже, тоже не работает... хотя не уверен, что это проблема.
Вот мой код:
thesubmenu1.hill.addEventListener(MouseEvent.MOUSE_DOWN, onDown);
stage.addEventListener(MouseEvent.MOUSE_UP, onUp);
var myImage:Sprite = Sprite(new Hill_mc());
var i:Number=0; i++;
function onDown(e:MouseEvent):void {
var myImage:Sprite = Sprite(new Hill_mc());
myImage.name = "hillChild"+i;
addChild(myImage);
myImage.x = mouseX;
myImage.y = mouseY;
myImage.startDrag();
myImage.buttonMode = true;
}
function onUp(e:MouseEvent):void {
var myImage:Sprite = Sprite(new Hill_mc());
myImage.stopDrag();
myImage.name = "hillChild";
}
stage.addEventListener(MouseEvent.CLICK, traceName);
function traceName(event:MouseEvent):void { trace(event.target.name); }
myImage.getChild(myImage).addEventListener("mouseDown", mouseDownHandler);
stage.addEventListener("mouseUp", mouseUpHandler);
function mouseDownHandler (e:MouseEvent):void{
myImage.startDrag();
}
function mouseUpHandler (e:MouseEvent):void{
myImage.stopDrag();
}
Я новичок в StackOverflow, а также в ActionScript 3, если это не очевидно.
var myImage:Sprite = new Hill_mc();
будет работать нормально. - person BadFeelingAboutThis   schedule 30.01.2015