[問題] AS3.0如何用array同時建立多個可分開移動物件?

看板Flash作者 (省了金錢卻浪費時間...)時間15年前 (2011/01/04 21:29), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
以下是我的程式碼部分 目前用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

01/04 21:35, , 1F
不太懂共用ObjSprite的用意 為何不把他new在if下面呢
01/04 21:35, 1F

01/04 21:39, , 2F
我new在if底下得好像會以最後一筆作為移動物件...QQ
01/04 21:39, 2F

01/04 21:40, , 3F
看起來是你drag_跟stopdrag_的兩個函數操作對象錯誤啊
01/04 21:40, 3F

01/04 21:41, , 4F
你在裡面直接ObjSprite.startDrag()了吧
01/04 21:41, 4F

01/04 21:42, , 5F
改成Sprite(event.currentTarget).startDrag()
01/04 21:42, 5F

01/04 21:49, , 6F
!!目前看來好像可以了~我再試試看^^ 感謝s大大!!
01/04 21:49, 6F
文章代碼(AID): #1D8o3MoL (Flash)
文章代碼(AID): #1D8o3MoL (Flash)