作者mygod0520 (省了金錢卻浪費時間...)
看板Flash
標題[問題] AS3.0如何用array同時建立多個可分開移動物件?
時間Tue Jan 4 21:29:55 2011
以下是我的程式碼部分
目前用Array抓到符合條件的會建立一個物件在場上
可是應該是因為共用一個ObjSprite的關係
導致其中移動一個就會所有物件一起移動
不知道要怎樣改能夠讓不同物件分開移動~
還有假設可以分開移動後
我如果要記錄目前移動的物件名字
要在EventListener中如何將目前移動的物件給另外一個String變數呢QQ
不好意思> < 新手問題多多QQ
var ObjSprite:Sprite = new Sprite();
for(var i:int=0; i<ObjArea.length; i++)
{
if(ObjArea[i] == SceneName)
{
var ObjPicLoader:Loader = new Loader;
addChild(ObjSprite);
var ObjPicRequest:URLRequest = new URLRequest(ObjPicLocation[i]);
addChild(ObjPicLoader);
ObjPicLoader.load(ObjPicRequest);
ObjSprite.addChild(ObjPicLoader);
ObjSprite.name = ObjName[i];
ObjPicLoader.x = ObjX[i];
ObjPicLoader.y = ObjY[i];
trace(ObjName[i]+","+ObjX[i]+","+ObjY[i]+"!!");
ObjSprite.addEventListener(MouseEvent.MOUSE_DOWN,drag_loadObjectPic);
ObjSprite.addEventListener(MouseEvent.MOUSE_UP,stopdrag_loadObjectPic);
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.135.11.60
推 scars:不太懂共用ObjSprite的用意 為何不把他new在if下面呢 01/04 21:35
→ mygod0520:我new在if底下得好像會以最後一筆作為移動物件...QQ 01/04 21:39
推 scars:看起來是你drag_跟stopdrag_的兩個函數操作對象錯誤啊 01/04 21:40
→ scars:你在裡面直接ObjSprite.startDrag()了吧 01/04 21:41
→ scars:改成Sprite(event.currentTarget).startDrag() 01/04 21:42
→ mygod0520:!!目前看來好像可以了~我再試試看^^ 感謝s大大!! 01/04 21:49