私はデジタル メディアのクラスでゲームをプログラミングしようとしてきましたが、ドラッグ可能なアイテムに関して大きな障害にぶつかりました。最初に、このコードを使用してマウスでドラッグできるアイテムを 1 つ作成しました (ムービー クリップは「honey」と呼ばれます)。
//set listeners
honey.addEventListener(MouseEvent.MOUSE_DOWN, startHoneyDrag);
stage.addEventListener(MouseEvent.MOUSE_UP, stopHoneyDrag);
honey.addEventListener(Event.ENTER_FRAME, dragHoney);
//offset between sprite location and click
var clickOffset:Point = null;
//user clicked
function startHoneyDrag(event:MouseEvent) {
clickOffset = new Point(event.localX, event.localY-7);
}
//user released
function stopHoneyDrag(event:MouseEvent) {
clickOffset = null
}
//run every frame
function dragHoney(event:Event) {
if (clickOffset != null) { // must be dragging
honey.x = mouseX - clickOffset.x;
honey.y = mouseY - clickOffset.y;
}
}
ただし、これまでのところ、複数の可動ムービー クリップを作成することは不可能であることが証明されています。同じコードを複数回使用すると、コードの競合部分が原因でエラーが発生します。プログラミングが得意な学生の 1 人に尋ねたところ、配列を作成するように言われました。
var honeyBall:Array = new Array();
honeyBall = ["honey, honey1, honey2"];
しかし今では、ムービー クリップを参照するコードがそれらの配列を参照するようにする方法がわかりません。これらの問題は私に深刻な問題を引き起こしているため、助けていただければ幸いです。