Re: [問題] do while的問題
※ 引述《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
推
03/31 23:54, , 1F
03/31 23:54, 1F
推
04/01 12:46, , 2F
04/01 12:46, 2F
討論串 (同標題文章)