看板 Flash 關於我們 聯絡資訊
※ 引述《IDontBite (大便兔子)》之銘言: : 下面這段程式, 我希望複製出busno個bus, : 前grannyno個把對應的"granny"+i蓋住, : 已確定各個granny不會有重疊問題, : 希望剩下沒有蓋東西的bus也不要重疊, : 但是那個do while有時候會失靈, : 囧 有人能幫我看看嗎? : for(i=1;i<=busno;i++){ : bus.duplicateMovieClip("bus"+i,layer--); : _root["bus"+i].v=random(8)+1; : if(i<=grannyno){ : _root["bus"+i]._x=_root["granny"+i]._x; : _root["bus"+i]._y=_root["granny"+i]._y+30;} : else{ : do{ : _root["bus"+i]._x=random(5)*101+80; : _root["bus"+i]._y=random(6)*60+48; : for(j=1;j<i;j++) : f=_root["bus"+i].hitTest(_root["bus"+j]); 手邊沒有flash可以測試....隨便猜測看看... 這邊假設 i=5 並且 bus5 會跟 bus3 產生碰撞... 所以當j=3時... f = 1 但是迴圈會繼續往下跑...跑到j=4.. 此時因為bus3 跟 bus4 不會碰撞... 所以f = 0 ..... ..... 然後就跳出do-while迴圈了.... 試看看吧...XD : }while(f==1) : } : } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.160.8
cjcat2266:GJ,這應該是原因了 :) 03/31 23:54
IDontBite:謝謝兩位大大:) 問題解決了! 04/01 12:46