Re: [求助]movieclip名稱變數合併

看板Flash作者 (小強)時間12年前 (2012/11/09 18:15), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串2/2 (看更多)
改用AS3了 做為練習目標 很多觀念是拿AS2的概念去改寫 宣告定義的方式 用了一下大概也習慣了 但現在卻卡在變數名稱的問題 這篇是最早在板上請問的 最後是用eval()解決了 (當時可能是寫法有錯..) 之前用AS2寫的 大致上需要讀出目前所在的影格 然後對特定元件進行控制 如果在影格2 則對c2下動作 在影格3 則對c3下動作 但在AS3下無法使用 程式片段 chnbox.channel1["c"chnbox.channel1.currentFrame].gotoAndPlay("std"); -錯誤 rightbracket 必須在 chnbox 之前。 改成.. chnbox.channel1.["c"chnbox.channel1.currentFrame].gotoAndPlay("std"); -錯誤 identifier 必須在 leftbracket 之前。 identifier 必須在 rightbracket 之前。 差一個 . 是因為我有點忘了 在root parent 或者實體名稱的mc後要不要加 . AS3 Google一下發現已經沒有eval 所以這樣的寫法 _root["baz"+i].rix = 100 已經行不通 要怎麼解決呢? 我查過的資料有用 getByChildName 不過沒有程式底子得我真得很難看懂 或許是因為訴求不同 實在不知道要如何解決問題 AS3又不能把腳本寫在影片片段上 讓腳本自己抓自己的名字 (不然在會用eval之前 我都是把腳本寫好複製貼上到每個影片片段上) 有網友能夠協助我嗎 達成在不同的影格 根據currentFrame 來對 影片片段+currentFrame進行動做嗎 謝謝 ※ 引述《forestluch (小強)》之銘言: : 我有一個元件 ob1 裡面還有個 m1 的元件 : 其中定義一個 rn 的隨機值 : 然後加上xy位移 : _root.ob1.m1._x += rn; : _root.ob1.m1._y = (xnn*xnn); : 然後用goto使得座標達到極限前在影格間無限重播使xnn不斷累加 : 讓 m1 能夠移動 : 發佈後 : 於是畫面會跑出一顆球每次隨機跑出不同的路線 : 但我在場景中用以duplicateMovieClip以ob1為目標成功複製出 ob2~ob9 的元件 : 結果卻不會動.. : 我把 ob1 的程式修改成.. : 希望座標位移的值能夠分別傳送到ob1~ob9的m1中 : 陣列與xnn已事先定義 : _root["ob"+ar[_root.i]].m1._x += rn; : _root["ob"+ar[_root.i]].m1._y = (xnn*xnn); : ... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.42.151.120

11/09 18:39, , 1F
chnbox.channel1["c" + chnbox.channel1.currentFrame].goto
11/09 18:39, 1F

11/09 18:41, , 2F
太長了推文放不下... gotoAndPlay之後跟原本一樣
11/09 18:41, 2F

11/12 00:48, , 3F
啊 謝謝 找到更好的解決方式了... AS3好難啊0.0
11/12 00:48, 3F
文章代碼(AID): #1GdDV5-9 (Flash)
文章代碼(AID): #1GdDV5-9 (Flash)